@octaviaflow/core 3.0.18-beta.16 → 3.0.18-beta.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/styles.css CHANGED
@@ -1 +1 @@
1
- *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-base);line-height:var(--ods-line-height-base);color:var(--ods-text-primary);background:var(--ods-surface-canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code,pre,.font-mono{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums}::selection{background:var(--ods-accent-soft);color:var(--ods-text-primary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:rgba(0,0,0,0)}::-webkit-scrollbar-thumb{background:var(--ods-border-strong);border-radius:var(--ods-radius-1)}::-webkit-scrollbar-thumb:hover{background:var(--ods-text-tertiary)}.ods-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--ods-space-2);border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-weight:500;line-height:1;letter-spacing:0;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));user-select:none;white-space:nowrap;outline:none;text-decoration:none}.ods-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-btn:active:not(:disabled):not([aria-disabled=true]){transform:scale(0.985)}.ods-btn:disabled,.ods-btn[aria-disabled=true]{--btn-color: var(--ods-text-tertiary);color:var(--btn-color);background:var(--ods-surface-muted);border-color:var(--ods-border-default);opacity:.85}.ods-btn__content{display:inline-flex;align-items:center;gap:var(--ods-space-2);transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-btn__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ods-btn__icon svg{display:block;width:1em;height:1em}.ods-btn__label{display:inline-block}.ods-btn__icon--spinner svg{animation:ods-btn-spin .8s linear infinite}@media(prefers-reduced-motion: reduce){.ods-btn__icon--spinner svg{animation:none}}.ods-btn--pressed:not(:disabled){background:var(--ods-surface-sunken);border-color:var(--ods-border-strong)}.ods-btn--pressed.ods-btn--primary:not(:disabled){background:var(--ods-accent-press);border-color:var(--ods-accent-press)}.ods-btn--pressed.ods-btn--danger:not(:disabled){background:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-fg)}.ods-btn--primary{--btn-color: #FFFFFF;background:var(--ods-accent);color:var(--btn-color);border-color:var(--ods-accent)}.ods-btn--primary:hover:not(:disabled){background:var(--ods-accent-hover);border-color:var(--ods-accent-hover)}.ods-btn--primary:active:not(:disabled){background:var(--ods-accent-press);border-color:var(--ods-accent-press)}.ods-btn--secondary{--btn-color: var(--ods-text-primary);background:var(--ods-surface-canvas);color:var(--btn-color);border-color:var(--ods-border-strong)}.ods-btn--secondary:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-btn--secondary:active:not(:disabled){background:var(--ods-surface-sunken)}.ods-btn--ghost{--btn-color: var(--ods-text-primary);background:rgba(0,0,0,0);color:var(--btn-color);border-color:rgba(0,0,0,0)}.ods-btn--ghost:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-btn--ghost:active:not(:disabled){background:var(--ods-surface-sunken)}.ods-btn--danger{--btn-color: #FFFFFF;background:var(--ods-status-failed);color:var(--btn-color);border-color:var(--ods-status-failed)}.ods-btn--danger:hover:not(:disabled){background:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-fg)}.ods-btn--icon{--btn-color: var(--ods-text-body);background:rgba(0,0,0,0);color:var(--btn-color);aspect-ratio:1/1;border-color:rgba(0,0,0,0)}.ods-btn--icon:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-btn--icon:active:not(:disabled){background:var(--ods-surface-sunken)}.ods-btn__content,.ods-btn__label,.ods-btn__icon,.ods-btn__spinner{color:var(--btn-color)}.ods-btn--sm{height:var(--ods-layout-control-height-sm);padding:0 var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-btn--sm .ods-btn__icon svg{width:12px;height:12px}.ods-btn--sm.ods-btn--icon{width:var(--ods-layout-control-height-sm);padding:0}.ods-btn--md{height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);font-size:var(--ods-font-size-md)}.ods-btn--md .ods-btn__icon svg{width:14px;height:14px}.ods-btn--md.ods-btn--icon{width:var(--ods-layout-control-height);padding:0}.ods-btn--lg{height:var(--ods-layout-control-height-lg);padding:0 var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-btn--lg .ods-btn__icon svg{width:16px;height:16px}.ods-btn--lg.ods-btn--icon{width:var(--ods-layout-control-height-lg);padding:0}.ods-btn--full{width:100%}@keyframes ods-btn-spin{to{transform:rotate(360deg)}}.ods-input{display:flex;flex-direction:column;width:100%;font-family:var(--ods-font-family-sans)}.ods-input__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body);display:block;margin-bottom:var(--ods-space-1);line-height:var(--ods-line-height-snug)}.ods-input__required{margin-left:4px;color:var(--ods-status-failed);font-weight:600}.ods-input__wrapper{position:relative;display:flex;align-items:center;width:100%}.ods-input__field{width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-base);line-height:1;color:var(--ods-text-primary);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);outline:none;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-input__field[type=search]::-webkit-search-decoration,.ods-input__field[type=search]::-webkit-search-cancel-button,.ods-input__field[type=search]::-webkit-search-results-button,.ods-input__field[type=search]::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}.ods-input__field[type=number]::-webkit-inner-spin-button,.ods-input__field[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ods-input__field:hover{border-color:var(--ods-text-tertiary)}.ods-input__field:focus,.ods-input__field:focus-visible{border-color:var(--ods-border-focus);box-shadow:var(--ods-focus-ring)}.ods-input__field::placeholder{color:var(--ods-text-disabled)}.ods-input__field:disabled{background:var(--ods-surface-muted);color:var(--ods-text-disabled);cursor:not-allowed;border-color:var(--ods-border-default)}.ods-input--error .ods-input__field{border-color:var(--ods-status-failed)}.ods-input--error .ods-input__field:focus,.ods-input--error .ods-input__field:focus-visible{box-shadow:var(--ods-focus-ring-error)}.ods-input__error-message{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg);margin-top:var(--ods-space-1);line-height:var(--ods-line-height-snug)}.ods-input__helper{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:var(--ods-space-1);line-height:var(--ods-line-height-snug)}.ods-input__icon--left,.ods-input__icon--right{position:absolute;top:50%;transform:translateY(-50%);color:var(--ods-text-tertiary);display:inline-flex;align-items:center;justify-content:center;pointer-events:none}.ods-input__icon--left svg,.ods-input__icon--right svg{width:14px;height:14px;display:block}.ods-input__icon--left{left:var(--ods-space-2)}.ods-input__icon--right{right:var(--ods-space-2)}.ods-input__right{position:absolute;top:50%;right:5px;transform:translateY(-50%);display:inline-flex;align-items:center;gap:4px}.ods-input__field--with-left-icon{padding-left:30px}.ods-input__field--with-right-icon{padding-right:30px}.ods-input__field--with-right-actions{padding-right:60px}.ods-input__clear{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-input__clear:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-input__clear:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}@media(prefers-reduced-motion: no-preference){.ods-input__clear{animation:ods-input-clear-in var(--ods-duration-fast, 120ms) var(--ods-ease-spring, cubic-bezier(0.34, 1.2, 0.64, 1))}}@keyframes ods-input-clear-in{from{opacity:0;transform:scale(0.6)}to{opacity:1;transform:scale(1)}}.ods-input__kbd{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:24px;padding:0 6px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:0 1px 0 var(--ods-border-default);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;color:var(--ods-text-body);letter-spacing:var(--ods-tracking-mono);pointer-events:none;user-select:none}.ods-input--search .ods-input__field{background:var(--ods-surface-subtle);border-color:var(--ods-border-default)}.ods-input--search .ods-input__field:hover:not(:disabled){background:var(--ods-surface-canvas);border-color:var(--ods-border-strong)}.ods-input--search .ods-input__field:focus,.ods-input--search .ods-input__field:focus-visible{background:var(--ods-surface-canvas);border-color:var(--ods-border-focus)}.ods-input--search .ods-input__icon--left{color:var(--ods-text-body)}.ods-input--search .ods-input__kbd{background:var(--ods-surface-subtle);box-shadow:none}.ods-input--sm .ods-input__field{height:var(--ods-layout-control-height-sm);padding:0 var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-input--sm .ods-input__field--with-left-icon{padding-left:24px}.ods-input--sm .ods-input__field--with-right-icon{padding-right:24px}.ods-input--sm .ods-input__field--with-right-actions{padding-right:52px}.ods-input--sm .ods-input__icon--left svg,.ods-input--sm .ods-input__icon--right svg{width:12px;height:12px}.ods-input--sm .ods-input__kbd{height:16px;min-width:22px;font-size:9px}.ods-input--lg .ods-input__field{height:var(--ods-layout-control-height-lg);padding:0 var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-input--lg .ods-input__field--with-left-icon{padding-left:38px}.ods-input--lg .ods-input__field--with-right-icon{padding-right:38px}.ods-input--lg .ods-input__field--with-right-actions{padding-right:72px}.ods-input--lg .ods-input__icon--left{left:14px}.ods-input--lg .ods-input__right{right:8px;gap:6px}.ods-input--lg .ods-input__icon--left svg,.ods-input--lg .ods-input__icon--right svg{width:16px;height:16px}.ods-input--lg .ods-input__clear{width:22px;height:22px}.ods-input--lg .ods-input__kbd{height:20px;min-width:28px;font-size:11px}.ods-input--disabled{opacity:1;pointer-events:none}.ods-textarea{display:flex;flex-direction:column;width:100%;font-family:var(--ods-font-family-sans)}.ods-textarea__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body);display:block;margin-bottom:var(--ods-space-1)}.ods-textarea__wrapper{position:relative;width:100%}.ods-textarea__field{width:100%;min-height:64px;padding:var(--ods-space-2) var(--ods-space-3);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-base);line-height:var(--ods-line-height-base);color:var(--ods-text-primary);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);outline:none;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));resize:vertical}.ods-textarea__field:hover{border-color:var(--ods-text-tertiary)}.ods-textarea__field:focus,.ods-textarea__field:focus-visible{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-textarea__field::placeholder{color:var(--ods-text-tertiary)}.ods-textarea__field:disabled{background:var(--ods-surface-muted);color:var(--ods-text-disabled);cursor:not-allowed}.ods-textarea--auto-resize .ods-textarea__field{resize:none}.ods-textarea__cmd-popover{list-style:none;margin:0;padding:var(--ods-space-1);min-width:220px;max-width:340px;max-height:280px;overflow-y:auto;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);z-index:1000;font-family:var(--ods-font-family-sans)}.ods-textarea__cmd-item{display:flex;align-items:flex-start;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);cursor:pointer;color:var(--ods-text-primary)}.ods-textarea__cmd-item--active{background:var(--ods-surface-muted)}.ods-textarea__cmd-icon{display:inline-flex;width:14px;height:14px;margin-top:2px;color:var(--ods-accent);flex-shrink:0}.ods-textarea__cmd-icon>svg{color:inherit !important;fill:currentColor}.ods-textarea__cmd-text{display:flex;flex-direction:column;gap:1px;min-width:0}.ods-textarea__cmd-label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);font-weight:500}.ods-textarea__cmd-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-textarea__sel-toolbar{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);z-index:1000;font-family:var(--ods-font-family-sans)}.ods-textarea__sel-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:24px;height:24px;padding:0 6px;background:rgba(0,0,0,0);border:0;border-radius:var(--ods-radius-1);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-textarea__sel-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-textarea__sel-btn>svg{color:inherit !important;fill:currentColor}.ods-textarea__sel-btn-label{font-size:var(--ods-font-size-xs);font-weight:500}.ods-textarea__toolbar{display:inline-flex;align-items:center;flex-wrap:wrap;gap:2px;padding:4px;background:var(--ods-surface-subtle);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);margin-bottom:var(--ods-space-1)}.ods-textarea__toolbar-btn{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 6px;background:rgba(0,0,0,0);border:0;border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-textarea__toolbar-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-textarea__toolbar-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-textarea__toolbar-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px}.ods-textarea__toolbar-icon>svg{color:inherit !important;fill:currentColor;width:14px;height:14px}.ods-textarea__toolbar-text{font-weight:500}.ods-textarea__toolbar-divider{display:inline-block;width:1px;height:16px;background:var(--ods-border-default);margin:0 4px}.ods-textarea__count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);text-align:right;margin-top:var(--ods-space-1);user-select:none}.ods-textarea--error .ods-textarea__field{border-color:var(--ods-status-failed)}.ods-textarea--error .ods-textarea__field:focus,.ods-textarea--error .ods-textarea__field:focus-visible{outline-color:var(--ods-status-failed)}.ods-textarea__error-message{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg);margin-top:var(--ods-space-1)}.ods-textarea--disabled{cursor:not-allowed}.ods-textarea__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:var(--ods-space-1)}.ods-textarea--sm .ods-textarea__field{padding:var(--ods-space-1) var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-textarea--lg .ods-textarea__field{padding:var(--ods-space-3) var(--ods-space-4);font-size:var(--ods-font-size-md)}@keyframes ods-spin{to{transform:rotate(360deg)}}.ods-spinner{display:inline-block;animation:ods-spin .9s linear infinite;color:var(--ods-accent)}.ods-spinner__circle{stroke:currentColor}.ods-spinner--sm{width:16px;height:16px}.ods-spinner--md{width:24px;height:24px}.ods-spinner--lg{width:32px;height:32px}.ods-spinner--xl{width:48px;height:48px}.ods-spinner--accent{color:var(--ods-accent)}.ods-spinner--primary{color:var(--ods-text-primary)}.ods-spinner--muted{color:var(--ods-text-tertiary)}.ods-spinner--success{color:var(--ods-status-success)}.ods-spinner--warning{color:var(--ods-status-pending)}.ods-spinner--error{color:var(--ods-status-failed)}.ods-spinner--inverse{color:var(--ods-surface-canvas)}@media(prefers-reduced-motion: reduce){.ods-spinner{animation-duration:4s}}.ods-checkbox{display:inline-flex;align-items:flex-start;gap:var(--ods-space-2);cursor:pointer;user-select:none;position:relative;font-family:var(--ods-font-family-sans)}.ods-checkbox--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ods-checkbox__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.ods-checkbox__box{position:relative;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-surface-canvas);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));flex-shrink:0;margin-top:1px}.ods-checkbox__input:focus-visible+.ods-checkbox__box{box-shadow:var(--ods-focus-ring);border-color:var(--ods-border-focus)}.ods-checkbox__box--checked,.ods-checkbox__box--indeterminate{background:var(--ods-accent);border-color:var(--ods-accent)}.ods-checkbox__text{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-checkbox__label{font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);line-height:var(--ods-line-height-snug)}.ods-checkbox__required{margin-left:4px;color:var(--ods-status-failed);font-weight:600}.ods-checkbox__description{font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-checkbox__error-message{font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-status-failed);line-height:var(--ods-line-height-snug)}.ods-checkbox__checkmark{width:10px;height:10px}.ods-checkbox__checkmark path{stroke-dasharray:16;stroke-dashoffset:16;transition:stroke-dashoffset var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-checkbox__checkmark--checked path{stroke-dashoffset:0}@media(prefers-reduced-motion: reduce){.ods-checkbox__checkmark path{transition:none}}.ods-checkbox__dash{width:10px;height:10px}.ods-checkbox--sm{gap:var(--ods-space-1-5)}.ods-checkbox--sm .ods-checkbox__box{width:12px;height:12px;margin-top:0}.ods-checkbox--sm .ods-checkbox__checkmark,.ods-checkbox--sm .ods-checkbox__dash{width:8px;height:8px}.ods-checkbox--sm .ods-checkbox__label{font-size:var(--ods-font-size-sm)}.ods-checkbox--sm .ods-checkbox__description,.ods-checkbox--sm .ods-checkbox__error-message{font-size:var(--ods-font-size-xs)}.ods-checkbox--lg{gap:var(--ods-space-2-5)}.ods-checkbox--lg .ods-checkbox__box{width:16px;height:16px;margin-top:2px}.ods-checkbox--lg .ods-checkbox__checkmark,.ods-checkbox--lg .ods-checkbox__dash{width:12px;height:12px}.ods-checkbox--lg .ods-checkbox__label{font-size:var(--ods-font-size-lg)}.ods-checkbox--error .ods-checkbox__box{border-color:var(--ods-status-failed)}.ods-checkbox--error .ods-checkbox__box--checked,.ods-checkbox--error .ods-checkbox__box--indeterminate{background:var(--ods-status-failed);border-color:var(--ods-status-failed)}.ods-checkbox--error .ods-checkbox__label{color:var(--ods-status-failed)}.ods-radio-group{display:flex;flex-direction:column;gap:var(--ods-space-2);font-family:var(--ods-font-family-sans)}.ods-radio-group__label{font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body);margin-bottom:var(--ods-space-1)}.ods-radio-group__items{display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-radio-group--horizontal .ods-radio-group__items{flex-direction:row;gap:var(--ods-space-4)}.ods-radio-group--disabled{opacity:.5;cursor:not-allowed}.ods-radio-group--disabled .ods-radio{cursor:not-allowed}.ods-radio-group__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:var(--ods-space-1)}.ods-radio-group__hint--error{color:var(--ods-status-failed-fg)}.ods-radio-group--error .ods-radio__circle{border-color:var(--ods-status-failed)}.ods-radio{display:inline-flex;align-items:flex-start;gap:var(--ods-space-2);cursor:pointer;user-select:none;position:relative;font-family:var(--ods-font-family-sans)}.ods-radio--disabled{opacity:.5;cursor:not-allowed}.ods-radio__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.ods-radio__circle{position:relative;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-top:1px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);flex-shrink:0;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-radio__input:focus-visible+.ods-radio__circle{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-radio--selected .ods-radio__circle{border-color:var(--ods-accent)}.ods-radio__dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:var(--ods-accent);transform:scale(0);transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.34, 1.56, 0.64, 1))}.ods-radio__dot--visible{transform:scale(1)}.ods-radio__text{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-radio__label{font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);line-height:var(--ods-line-height-snug)}.ods-radio__description{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:1.4}.ods-radio--sm .ods-radio__circle{width:12px;height:12px}.ods-radio--sm .ods-radio__dot{width:4px;height:4px}.ods-radio--sm .ods-radio__label{font-size:var(--ods-font-size-sm)}.ods-radio--lg .ods-radio__circle{width:18px;height:18px}.ods-radio--lg .ods-radio__dot{width:8px;height:8px}.ods-radio--lg .ods-radio__label{font-size:var(--ods-font-size-md)}@media(prefers-reduced-motion: reduce){.ods-radio .ods-radio__dot{transition:none}}.ods-switch{display:inline-flex;align-items:center;gap:var(--ods-space-2);cursor:pointer;user-select:none;position:relative;font-family:var(--ods-font-family-sans)}.ods-switch--disabled{opacity:.5;cursor:not-allowed}.ods-switch--with-description{align-items:flex-start}.ods-switch--with-description .ods-switch__track{margin-top:1px}.ods-switch__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.ods-switch__track{position:relative;display:flex;align-items:center;width:36px;height:22px;border-radius:var(--ods-radius-pill);background:var(--ods-border-strong);transition:background-color var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));flex-shrink:0;padding:2px;will-change:background-color}.ods-switch__input:focus-visible+.ods-switch__track{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-switch__track--on{background:var(--ods-accent)}.ods-switch__thumb{width:18px;height:18px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);box-shadow:0 1px 2px rgba(0,0,0,.12);transition:transform var(--ods-duration-base, 180ms) cubic-bezier(0.34, 1.2, 0.64, 1);transform:translateX(0);will-change:transform}.ods-switch__track--on .ods-switch__thumb{transform:translateX(14px)}.ods-switch__text{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-switch__label{font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);line-height:var(--ods-line-height-snug)}.ods-switch__description{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:1.4}.ods-switch--sm .ods-switch__track{width:28px;height:16px;padding:2px}.ods-switch--sm .ods-switch__thumb{width:12px;height:12px}.ods-switch--sm .ods-switch__track--on .ods-switch__thumb{transform:translateX(12px)}.ods-switch--sm .ods-switch__label{font-size:var(--ods-font-size-sm)}.ods-switch--lg .ods-switch__track{width:44px;height:26px;padding:3px}.ods-switch--lg .ods-switch__thumb{width:20px;height:20px}.ods-switch--lg .ods-switch__track--on .ods-switch__thumb{transform:translateX(18px)}.ods-switch--lg .ods-switch__label{font-size:var(--ods-font-size-md)}@media(prefers-reduced-motion: reduce){.ods-switch .ods-switch__thumb{transition:none}}.ods-badge{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);border:1px solid rgba(0,0,0,0);font-family:var(--ods-font-family-sans);font-weight:500;line-height:1;letter-spacing:0;white-space:nowrap;height:22px;font-size:var(--ods-font-size-xs)}.ods-badge--success{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-badge--warning{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-badge--error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd)}.ods-badge--info{background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd)}.ods-badge--neutral{background:var(--ods-status-idle-bg);color:var(--ods-status-idle-fg);border-color:var(--ods-status-idle-bd)}.ods-badge--accent{background:var(--ods-accent-soft);color:var(--ods-accent-strong);border-color:var(--ods-accent)}.ods-badge--outlined{background:var(--ods-surface-canvas)}.ods-badge--sm{height:18px;font-size:10px;padding:0 var(--ods-space-1-5);gap:3px}.ods-badge--lg{height:26px;font-size:var(--ods-font-size-sm);padding:0 var(--ods-space-2-5);gap:var(--ods-space-1-5)}.ods-badge--interactive{cursor:pointer;user-select:none;transition:background-color var(--ods-duration-instant) var(--ods-ease-out),border-color var(--ods-duration-instant) var(--ods-ease-out),transform var(--ods-duration-instant) var(--ods-ease-out)}.ods-badge--interactive:hover{filter:brightness(0.96)}.ods-badge--interactive:active{transform:translateY(0.5px)}.ods-badge:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-badge--truncate .ods-badge__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-badge__dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:currentColor;flex-shrink:0}.ods-badge__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1em;height:1em}.ods-badge__icon>svg{width:100%;height:100%}.ods-badge__text{display:inline-block;min-width:0}.ods-badge__close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:14px;height:14px;margin-left:2px;margin-right:-4px;padding:0;border:none;background:rgba(0,0,0,0);color:currentColor;opacity:.7;border-radius:var(--ods-radius-pill);cursor:pointer;transition:opacity var(--ods-duration-instant) var(--ods-ease-out),background-color var(--ods-duration-instant) var(--ods-ease-out)}.ods-badge__close:hover{opacity:1;background:rgba(0,0,0,.08)}.ods-badge__close:focus-visible{outline:none;opacity:1;box-shadow:var(--ods-focus-ring)}:root{--ods-avatar-palette-0: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--ods-avatar-palette-1: linear-gradient(135deg, #ec4899 0%, #f43f5e 100%);--ods-avatar-palette-2: linear-gradient(135deg, #06b6d4 0%, #3b82f6 100%);--ods-avatar-palette-3: linear-gradient(135deg, #10b981 0%, #059669 100%);--ods-avatar-palette-4: linear-gradient(135deg, #f59e0b 0%, #f97316 100%);--ods-avatar-palette-5: linear-gradient(135deg, #8b5cf6 0%, #d946ef 100%);--ods-avatar-palette-6: linear-gradient(135deg, #14b8a6 0%, #06b6d4 100%);--ods-avatar-palette-7: linear-gradient(135deg, #f43f5e 0%, #ec4899 100%);--ods-avatar-palette-8: linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);--ods-avatar-palette-9: linear-gradient(135deg, #0ea5e9 0%, #14b8a6 100%);--ods-avatar-palette-10: linear-gradient(135deg, #a855f7 0%, #7c3aed 100%);--ods-avatar-palette-11: linear-gradient(135deg, #ef4444 0%, #f59e0b 100%)}.ods-avatar{position:relative;display:inline-flex;flex-shrink:0;font-family:var(--ods-font-family-sans);border-radius:var(--ods-radius-pill)}.ods-avatar--xs{width:20px;height:20px;font-size:9px}.ods-avatar--sm{width:24px;height:24px;font-size:10px}.ods-avatar--md{width:28px;height:28px;font-size:11px}.ods-avatar--lg{width:36px;height:36px;font-size:13px}.ods-avatar--xl{width:48px;height:48px;font-size:16px}.ods-avatar--circle{border-radius:var(--ods-radius-pill)}.ods-avatar--circle .ods-avatar__inner{border-radius:var(--ods-radius-pill)}.ods-avatar--square{border-radius:var(--ods-radius-2)}.ods-avatar--square .ods-avatar__inner{border-radius:var(--ods-radius-2)}.ods-avatar--clickable{cursor:pointer;transition:transform var(--ods-duration-instant) var(--ods-ease-out)}.ods-avatar--clickable:hover{transform:scale(1.04)}.ods-avatar--clickable:active{transform:scale(0.98)}.ods-avatar:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-avatar__inner{display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden;background:var(--ods-accent-soft)}.ods-avatar__inner[data-palette="0"]{background:var(--ods-avatar-palette-0)}.ods-avatar__inner[data-palette="1"]{background:var(--ods-avatar-palette-1)}.ods-avatar__inner[data-palette="2"]{background:var(--ods-avatar-palette-2)}.ods-avatar__inner[data-palette="3"]{background:var(--ods-avatar-palette-3)}.ods-avatar__inner[data-palette="4"]{background:var(--ods-avatar-palette-4)}.ods-avatar__inner[data-palette="5"]{background:var(--ods-avatar-palette-5)}.ods-avatar__inner[data-palette="6"]{background:var(--ods-avatar-palette-6)}.ods-avatar__inner[data-palette="7"]{background:var(--ods-avatar-palette-7)}.ods-avatar__inner[data-palette="8"]{background:var(--ods-avatar-palette-8)}.ods-avatar__inner[data-palette="9"]{background:var(--ods-avatar-palette-9)}.ods-avatar__inner[data-palette="10"]{background:var(--ods-avatar-palette-10)}.ods-avatar__inner[data-palette="11"]{background:var(--ods-avatar-palette-11)}.ods-avatar__image{width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}.ods-avatar__initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:inherit;font-weight:600;color:#fff;text-transform:uppercase;line-height:1}.ods-avatar__icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#fff}.ods-avatar__icon>svg{width:60%;height:60%}.ods-avatar__status{position:absolute;bottom:0;right:0;width:28%;height:28%;min-width:8px;min-height:8px;border-radius:var(--ods-radius-pill);border:2px solid var(--ods-surface-canvas);box-sizing:content-box}.ods-avatar__status--online{background:var(--ods-status-success)}.ods-avatar__status--offline{background:var(--ods-status-idle)}.ods-avatar__status--busy{background:var(--ods-status-failed)}.ods-avatar__status--away{background:var(--ods-status-pending)}.ods-avatar--square .ods-avatar__status{bottom:-2px;right:-2px}.ods-avatar__status--online::after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--ods-status-success);opacity:.55;animation:ods-avatar-pulse 1.8s var(--ods-ease-out) infinite}@keyframes ods-avatar-pulse{0%{transform:scale(1);opacity:.55}70%{transform:scale(1.9);opacity:0}100%{transform:scale(1.9);opacity:0}}@media(prefers-reduced-motion: reduce){.ods-avatar__status--online::after{animation:none;opacity:0}}.ods-avatar-stack{display:inline-flex;align-items:center}.ods-avatar-stack>.ods-avatar{margin-left:-8px}.ods-avatar-stack>.ods-avatar>.ods-avatar__inner{box-shadow:0 0 0 2px var(--ods-surface-canvas)}.ods-avatar-stack>.ods-avatar:first-child{margin-left:0}.ods-avatar-stack--rtl{flex-direction:row-reverse}.ods-avatar-stack--rtl>.ods-avatar{margin-left:0;margin-right:-8px}.ods-avatar-stack--rtl>.ods-avatar:first-child{margin-right:0}.ods-avatar-stack>.ods-avatar:nth-child(1){z-index:6}.ods-avatar-stack>.ods-avatar:nth-child(2){z-index:5}.ods-avatar-stack>.ods-avatar:nth-child(3){z-index:4}.ods-avatar-stack>.ods-avatar:nth-child(4){z-index:3}.ods-avatar-stack>.ods-avatar:nth-child(5){z-index:2}.ods-avatar-stack>.ods-avatar:nth-child(6){z-index:1}.ods-avatar-stack__overflow>.ods-avatar__inner{background:var(--ods-surface-muted)}.ods-avatar-stack__overflow .ods-avatar__initials{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-tooltip{position:relative;background:var(--ods-text-primary);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500;line-height:var(--ods-line-height-snug);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);max-width:240px;word-wrap:break-word;pointer-events:none;user-select:none}.ods-tooltip__arrow{position:absolute;width:6px;height:6px;background:var(--ods-text-primary);transform:rotate(45deg);pointer-events:none;z-index:-1}.ods-tooltip[data-position=top] .ods-tooltip__arrow{bottom:-3px;left:50%;margin-left:-3px}.ods-tooltip[data-position=bottom] .ods-tooltip__arrow{top:-3px;left:50%;margin-left:-3px}.ods-tooltip[data-position=left] .ods-tooltip__arrow{right:-3px;top:50%;margin-top:-3px}.ods-tooltip[data-position=right] .ods-tooltip__arrow{left:-3px;top:50%;margin-top:-3px}.ods-select{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans)}.ods-select--disabled{opacity:.5;cursor:not-allowed}.ods-select--disabled .ods-select__trigger{cursor:not-allowed;pointer-events:auto}.ods-select__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body);margin-bottom:2px}.ods-select__trigger{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-base);cursor:pointer;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-select__trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-select__trigger:hover:not([disabled]):not([aria-disabled=true]){border-color:var(--ods-text-tertiary)}.ods-select__trigger--open{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-select__value{display:flex;align-items:center;gap:var(--ods-space-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;text-align:left}.ods-select__value-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.ods-select__placeholder{color:var(--ods-text-tertiary)}.ods-select__chevron{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-text-tertiary);transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-select__chevron>svg{fill:currentColor}.ods-select__chevron--open{transform:rotate(180deg);color:var(--ods-text-primary)}.ods-select__dropdown{z-index:var(--ods-z-popover);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);max-height:240px;overflow-y:auto;padding:var(--ods-space-1)}.ods-select__dropdown::-webkit-scrollbar{width:6px;height:6px}.ods-select__dropdown::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.ods-select__dropdown::-webkit-scrollbar-thumb{background:var(--ods-border-strong);border-radius:var(--ods-radius-1)}.ods-select__dropdown::-webkit-scrollbar-thumb:hover{background:var(--ods-text-tertiary)}.ods-select__search-wrap{padding:var(--ods-space-1) var(--ods-space-1) 0;margin-bottom:var(--ods-space-1)}.ods-select__search{width:100%;height:var(--ods-layout-control-height-sm);padding:0 var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-sm);font-family:inherit;color:var(--ods-text-primary);outline:none;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-select__search::placeholder{color:var(--ods-text-tertiary)}.ods-select__search:focus{border-color:var(--ods-border-focus)}.ods-select__options{list-style:none;margin:0;padding:0}.ods-select__option{display:flex;align-items:center;gap:var(--ods-space-2);min-height:var(--ods-layout-control-height);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));user-select:none}.ods-select__option:hover{background:var(--ods-surface-muted)}.ods-select__option--highlighted{background:var(--ods-surface-muted)}.ods-select__option--selected{background:var(--ods-accent-soft);font-weight:500;color:var(--ods-accent)}.ods-select__option:has(.ods-select__option-desc){align-items:flex-start;padding-top:var(--ods-space-2);padding-bottom:var(--ods-space-2)}.ods-select__option:has(.ods-select__option-desc) .ods-select__option-icon{margin-top:2px}.ods-select__option--disabled{opacity:.5;cursor:not-allowed}.ods-select__option--disabled:hover{background:rgba(0,0,0,0)}.ods-select__option-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.ods-select__option-text{display:flex;flex-direction:column;flex:1;min-width:0;gap:2px;line-height:1.3}.ods-select__option-label{font-size:var(--ods-font-size-base);color:var(--ods-text-primary);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ods-select__option-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ods-select__check{display:flex;align-items:center;flex-shrink:0;color:var(--ods-accent);margin-left:auto}.ods-select__empty{padding:var(--ods-space-3) var(--ods-space-4);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-select--error .ods-select__trigger{border-color:var(--ods-status-failed)}.ods-select--error .ods-select__trigger--open{outline-color:var(--ods-status-failed)}.ods-select__error{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg);margin-top:2px}.ods-select__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:2px}.ods-select--sm .ods-select__trigger{height:var(--ods-layout-control-height-sm);padding:0 var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-select--md .ods-select__trigger{height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);font-size:var(--ods-font-size-base)}.ods-select--lg .ods-select__trigger{height:var(--ods-layout-control-height-lg);padding:0 var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-multiselect{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans)}.ods-multiselect--disabled{opacity:.5}.ods-multiselect--disabled .ods-multiselect__input-wrap{cursor:not-allowed}.ods-multiselect__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body);margin-bottom:2px}.ods-multiselect__input-wrap{position:relative;display:flex;align-items:center;gap:var(--ods-space-1);min-height:var(--ods-layout-control-height);padding:2px var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);cursor:pointer;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-multiselect__input-wrap:hover{border-color:var(--ods-text-tertiary)}.ods-multiselect__input-wrap--open{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-multiselect__tags{position:relative;flex:1 1 auto;min-width:0;display:flex;align-items:center;flex-wrap:nowrap;gap:var(--ods-space-1);overflow:hidden}.ods-multiselect__measure{position:absolute;visibility:hidden;pointer-events:none;white-space:nowrap;display:flex;gap:var(--ods-space-1);height:0;overflow:hidden}.ods-multiselect__placeholder{font-size:var(--ods-font-size-base);color:var(--ods-text-tertiary);padding:0 2px}.ods-multiselect__tag{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:2px var(--ods-space-1) 2px var(--ods-space-2);background:var(--ods-accent-soft);color:var(--ods-accent);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1.2;white-space:nowrap;max-width:200px;min-width:0}.ods-multiselect__tag--overflow{background:var(--ods-surface-muted);color:var(--ods-text-body);padding:2px var(--ods-space-2);cursor:help}.ods-multiselect__tag-label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0}.ods-multiselect__tag-icon{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;flex-shrink:0}.ods-multiselect__tag-remove{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:0;background:rgba(0,0,0,0);color:currentColor;opacity:.7;cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-multiselect__tag-remove:hover{opacity:1;background:var(--ods-accent-border)}.ods-multiselect__tag-remove:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-multiselect__tag-remove>svg{width:10px;height:10px}.ods-multiselect__tag-remove-spacer{width:14px;height:14px;display:inline-block}.ods-multiselect__chevron{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-text-tertiary);transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-multiselect__chevron>svg{width:14px;height:14px}.ods-multiselect__chevron--open{transform:rotate(180deg);color:var(--ods-text-primary)}.ods-multiselect__clear{border:0;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);cursor:pointer;padding:2px var(--ods-space-1);border-radius:var(--ods-radius-1);flex-shrink:0}.ods-multiselect__clear:hover{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-multiselect__dropdown{z-index:var(--ods-z-popover);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);max-height:280px;display:flex;flex-direction:column;overflow:hidden}.ods-multiselect__search{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3);color:var(--ods-text-tertiary);border-bottom:1px solid var(--ods-border-default);flex-shrink:0}.ods-multiselect__search>svg{width:14px;height:14px;flex-shrink:0}.ods-multiselect__search-input{flex:1 1 auto;min-width:0;border:0;outline:none;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary)}.ods-multiselect__search-input::placeholder{color:var(--ods-text-tertiary)}.ods-multiselect__search-input:focus,.ods-multiselect__search-input:focus-visible{outline:none;box-shadow:none;border:0}.ods-multiselect__list{flex:1 1 auto;overflow-y:auto;padding:var(--ods-space-1)}.ods-multiselect__option{display:flex;align-items:center;gap:var(--ods-space-2);min-height:var(--ods-layout-control-height);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);cursor:pointer;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-multiselect__option:hover{background:var(--ods-surface-muted)}.ods-multiselect__option--highlighted{background:var(--ods-surface-muted)}.ods-multiselect__option:has(.ods-multiselect__option-desc){align-items:flex-start;padding-top:var(--ods-space-2);padding-bottom:var(--ods-space-2)}.ods-multiselect__option:has(.ods-multiselect__option-desc) .ods-multiselect__option-icon{margin-top:2px}.ods-multiselect__option--selected{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:500;box-shadow:inset 3px 0 0 var(--ods-accent)}.ods-multiselect__option--selected.ods-multiselect__option--highlighted,.ods-multiselect__option--selected:hover{background:var(--ods-accent-border)}.ods-multiselect__option--disabled{color:var(--ods-text-disabled);cursor:not-allowed}.ods-multiselect__option--disabled:hover{background:rgba(0,0,0,0)}.ods-multiselect__option-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-accent)}.ods-multiselect__option-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px;line-height:1.3}.ods-multiselect__option-label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ods-multiselect__option-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ods-multiselect__empty{padding:var(--ods-space-3);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-multiselect--error .ods-multiselect__input-wrap{border-color:var(--ods-status-failed)}.ods-multiselect__error{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg);margin-top:2px}.ods-multiselect--sm .ods-multiselect__input-wrap{min-height:var(--ods-layout-control-height-sm);padding:1px var(--ods-space-1)}.ods-multiselect--sm .ods-multiselect__tag{font-size:10px;padding:1px var(--ods-space-1)}.ods-multiselect--md .ods-multiselect__input-wrap{min-height:var(--ods-layout-control-height)}.ods-multiselect--lg .ods-multiselect__input-wrap{min-height:var(--ods-layout-control-height-lg, 36px);padding:4px var(--ods-space-2)}.ods-multiselect--lg .ods-multiselect__tag{font-size:var(--ods-font-size-sm);padding:3px var(--ods-space-2)}.ods-multiselect--lg .ods-multiselect__placeholder{font-size:var(--ods-font-size-md)}.ods-card{position:relative;background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:var(--ods-font-family-sans);border-radius:var(--ods-radius-2);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-card:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-card--default{background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default)}.ods-card--elevated{background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);box-shadow:var(--ods-shadow-pop)}.ods-card--outlined{background:rgba(0,0,0,0);border:1px solid var(--ods-border-default)}.ods-card--subtle{background:var(--ods-surface-subtle);border:1px solid var(--ods-border-soft)}.ods-card--selected{background:var(--ods-accent-soft);border:1px solid var(--ods-accent)}.ods-card--hoverable:hover:not(.ods-card--disabled){background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-card--clickable{cursor:pointer;user-select:none}.ods-card--disabled{cursor:not-allowed;opacity:.55}.ods-card--loading{overflow:hidden;padding:0;min-height:80px}.ods-card--loading .ods-card__skeleton{width:100%;height:80px;background:linear-gradient(90deg, var(--ods-border-default) 0%, var(--ods-surface-canvas) 50%, var(--ods-border-default) 100%);background-size:200% 100%}.ods-card--pad-none{padding:0}.ods-card--pad-sm{padding:var(--ods-space-3)}.ods-card--pad-md{padding:var(--ods-space-4)}.ods-card--pad-lg{padding:var(--ods-space-5)}.ods-card--pad-xl{padding:var(--ods-space-6)}.ods-card--radius-none{border-radius:0}.ods-card--radius-sm{border-radius:var(--ods-radius-1)}.ods-card--radius-md{border-radius:var(--ods-radius-2)}.ods-card--radius-lg{border-radius:var(--ods-radius-3)}.ods-card__header,.ods-card__body,.ods-card__footer{display:block}.ods-card__header{margin:0 0 var(--ods-space-3);padding-bottom:var(--ods-space-3);border-bottom:1px solid var(--ods-border-soft)}.ods-card__header:first-child{margin-top:0}.ods-card__body>*+*{margin-top:var(--ods-space-2)}.ods-card__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);margin:var(--ods-space-3) 0 0;padding-top:var(--ods-space-3);border-top:1px solid var(--ods-border-soft)}.ods-card__footer:last-child{margin-bottom:0}.ods-card__title{margin:0;font-size:var(--ods-font-size-lg);font-weight:600;color:var(--ods-text-primary);font-family:var(--ods-font-family-sans)}.ods-card__description{margin:var(--ods-space-1) 0 0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-snug)}.ods-dialog{position:fixed;inset:0;z-index:900;display:flex;align-items:center;justify-content:center;padding:var(--ods-space-4);background:rgba(10,10,10,.45)}.ods-dialog__card{position:relative;display:flex;flex-direction:column;max-height:90vh;overflow-y:auto;border-radius:var(--ods-radius-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary);transform:scale(1);opacity:1;transition:transform var(--ods-duration-slow, 240ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),opacity var(--ods-duration-slow, 240ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-dialog__card--entering{transform:scale(0.98);opacity:0}.ods-dialog__card--sm{width:100%;max-width:360px}.ods-dialog__card--md{width:100%;max-width:480px}.ods-dialog__card--lg{width:100%;max-width:720px}.ods-dialog__card--xl{width:100%;max-width:960px}.ods-dialog__card--full{width:100vw;max-width:100vw;height:100vh;max-height:100vh;border-radius:0;border:0}.ods-dialog:has(.ods-dialog__card--full){padding:0}.ods-dialog__header{display:flex;flex-direction:column;gap:var(--ods-space-1);padding:var(--ods-space-5) var(--ods-space-5) 0}.ods-dialog__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-dialog__description{margin:0;font-size:var(--ods-font-size-base);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-dialog__close{position:absolute;top:var(--ods-space-3);right:var(--ods-space-3);display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-dialog__close>svg{width:14px;height:14px}.ods-dialog__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-dialog__close:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-dialog__body{flex:1;padding:var(--ods-space-4) var(--ods-space-5);overflow-y:auto;font-size:var(--ods-font-size-base);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-dialog__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-5);border-top:1px solid var(--ods-border-default)}.ods-sidebar{display:flex;flex-direction:column;background:var(--ods-surface-subtle);border-right:1px solid var(--ods-border-default);border-radius:0;font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-base);color:var(--ods-text-body);overflow:visible;transition:width var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));position:relative}.ods-sidebar--rail{width:var(--ods-layout-sidebar-width-collapsed);align-items:center;padding:var(--ods-space-2) 0;gap:var(--ods-space-2)}.ods-sidebar--expanded{width:var(--ods-layout-sidebar-width)}.ods-sidebar--auto{overflow:visible}.ods-sidebar__overlay{position:absolute;top:0;left:0;width:var(--ods-layout-sidebar-width);height:100%;display:flex;flex-direction:column;background:var(--ods-surface-canvas);border-right:1px solid var(--ods-border-default);border-top:1px solid var(--ods-border-default);border-bottom:1px solid var(--ods-border-default);border-radius:0 var(--ods-radius-2) var(--ods-radius-2) 0;box-shadow:var(--ods-shadow-pop);z-index:1000;animation:ods-sidebar-overlay-in var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}@keyframes ods-sidebar-overlay-in{from{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:translateX(0)}}.ods-sidebar__nav-rail,.ods-sidebar__footer-rail{display:flex;flex-direction:column;align-items:center;gap:var(--ods-space-1);width:100%;overflow:visible}.ods-sidebar__footer-rail{position:relative;padding-top:var(--ods-space-2)}.ods-sidebar__footer-rail::before{content:"";position:absolute;top:0;left:var(--ods-space-2);right:var(--ods-space-2);height:1px;background:var(--ods-border-default)}.ods-sidebar__spacer{flex:1 1 auto}.ods-sidebar__rail-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;overflow:visible}.ods-sidebar__rail-item{position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;text-decoration:none;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__rail-item:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-sidebar__rail-item:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-sidebar__rail-item--active{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-sidebar__rail-item--active::before{content:"";position:absolute;left:-8px;top:4px;bottom:4px;width:2px;border-radius:0 var(--ods-radius-1) var(--ods-radius-1) 0;background:var(--ods-accent)}.ods-sidebar__rail-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px}.ods-sidebar__rail-tooltip{position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%);display:inline-flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);background:var(--ods-text-primary);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-xs);font-weight:500;white-space:nowrap;box-shadow:var(--ods-shadow-pop);z-index:1500;pointer-events:none;animation:ods-sidebar-tip-in 80ms var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}@keyframes ods-sidebar-tip-in{from{opacity:0;transform:translate(-2px, -50%)}to{opacity:1;transform:translate(0, -50%)}}.ods-sidebar__rail-tooltip-label{color:inherit}.ods-sidebar__rail-flyout{position:absolute;top:0;left:calc(100% + 8px);min-width:200px;max-width:260px;padding:var(--ods-space-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:var(--ods-shadow-pop);z-index:1500;font-family:var(--ods-font-family-sans);animation:ods-sidebar-flyout-in 120ms var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__rail-flyout::before{content:"";position:absolute;top:0;bottom:0;left:-10px;width:10px;background:rgba(0,0,0,0)}@keyframes ods-sidebar-flyout-in{from{opacity:0;transform:translateX(-4px)}to{opacity:1;transform:translateX(0)}}.ods-sidebar__rail-flyout-header{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2) var(--ods-space-2);border-bottom:1px solid var(--ods-border-default);margin-bottom:var(--ods-space-1)}.ods-sidebar__rail-flyout-title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-sidebar__rail-flyout-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.ods-sidebar__rail-flyout-item{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-row-height);padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-base);font-weight:500;text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__rail-flyout-item:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-sidebar__rail-flyout-item:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-sidebar__rail-flyout-item--active{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:600}.ods-sidebar__rail-flyout-item--active .ods-sidebar__rail-flyout-icon{color:var(--ods-accent)}.ods-sidebar__rail-flyout-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-text-tertiary)}.ods-sidebar__rail-flyout-label{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-sidebar__rail-flyout-tag{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-accent);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:9px;font-weight:700;letter-spacing:var(--ods-tracking-mono);flex-shrink:0}.ods-sidebar__rail-flyout-badge{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;font-weight:600;flex-shrink:0}.ods-sidebar__rail-item--parent.ods-sidebar__rail-item--active::after{content:"";position:absolute;right:3px;bottom:3px;width:4px;height:4px;border-radius:var(--ods-radius-pill);background:var(--ods-accent)}.ods-sidebar__rail-kbd{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:hsla(0,0%,100%,.12);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:500}.ods-sidebar__user-rail{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:var(--ods-radius-pill);cursor:pointer;margin-top:var(--ods-space-1);background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-sm);font-weight:600;overflow:hidden}.ods-sidebar__footer-control{display:flex;padding:var(--ods-space-2) 0;border-top:1px solid var(--ods-border-default);margin-top:var(--ods-space-1)}.ods-sidebar__footer-control--rail{width:100%;justify-content:center;padding:var(--ods-space-2) var(--ods-space-1);margin-top:var(--ods-space-1)}.ods-sidebar__collapse{display:inline-flex;align-items:center;justify-content:flex-start;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-row-height);padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__collapse:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-sidebar__collapse:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-sidebar__collapse svg{flex-shrink:0}.ods-sidebar__collapse--rail{width:32px;height:32px;padding:0;justify-content:center}.ods-sidebar__collapse--pinned{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-sidebar__pin-label{flex:1 1 auto;min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-sidebar__body{flex:1 1 auto;display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-2);overflow-y:auto;overflow-x:hidden}.ods-sidebar__section{display:flex;flex-direction:column;gap:1px}.ods-sidebar__section-label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);padding:var(--ods-space-1) var(--ods-space-2)}.ods-sidebar__item{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-row-height);padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-base);font-weight:500;text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__item:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-sidebar__item--active{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:600}.ods-sidebar__item--active .ods-sidebar__icon{color:var(--ods-accent)}.ods-sidebar__item--open{color:var(--ods-text-primary)}.ods-sidebar__item--l2{height:28px;font-size:var(--ods-font-size-sm)}.ods-sidebar__item--l3{height:28px;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-sidebar__chevron{flex-shrink:0;color:var(--ods-text-tertiary);transition:transform var(--ods-duration-base, 180ms) var(--ods-ease-out, ease-out)}.ods-sidebar__chevron--open{transform:rotate(90deg);color:var(--ods-accent)}.ods-sidebar__subtree{display:flex;flex-direction:column;gap:1px;margin-top:1px;padding:1px 0 var(--ods-space-1) var(--ods-space-2);margin-left:var(--ods-space-3);border-left:1px solid var(--ods-border-default)}.ods-sidebar__subtree--l2{border-left-color:var(--ods-border-strong)}.ods-sidebar__subtree--l3{border-left-color:var(--ods-accent-border);margin-left:var(--ods-space-2)}.ods-sidebar__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-text-tertiary)}.ods-sidebar__label{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-sidebar__badge{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;flex-shrink:0}.ods-sidebar__tag{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-accent);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:9px;font-weight:700;letter-spacing:var(--ods-tracking-mono);flex-shrink:0}.ods-sidebar__footer{border-top:1px solid var(--ods-border-default);display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-2)}.ods-sidebar__footer-list{display:flex;flex-direction:column;gap:1px}.ods-sidebar__user-card{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;padding:var(--ods-space-2);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);cursor:pointer;font-family:inherit;text-align:left;color:var(--ods-text-body);outline:none;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__user-card:hover{background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-sidebar__user-card:focus-visible{border-color:var(--ods-border-focus);box-shadow:var(--ods-focus-ring)}.ods-sidebar__user-card[aria-expanded=true]{background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-sidebar__user-avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--ods-radius-pill);flex-shrink:0;overflow:hidden;background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-sm);font-weight:600}.ods-sidebar__user-avatar img{width:100%;height:100%;object-fit:cover}.ods-sidebar__user-info{display:flex;flex-direction:column;gap:1px;flex:1 1 auto;min-width:0}.ods-sidebar__user-name{font-size:var(--ods-font-size-sm);font-weight:600;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-sidebar__user-email{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-topbar{position:sticky;top:0;z-index:800;display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-4);height:var(--ods-layout-topbar-height);padding:0 var(--ods-space-4);background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-topbar__left{display:flex;align-items:center;gap:var(--ods-space-3);min-width:0}.ods-topbar__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-topbar__brand{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);text-decoration:none;letter-spacing:var(--ods-tracking-tight, -0.01em);white-space:nowrap}.ods-topbar__brand--link{cursor:pointer;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-topbar__brand--link:hover{color:var(--ods-text-primary);opacity:.85}.ods-topbar__brand-mark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;color:var(--ods-text-primary)}.ods-topbar__brand-name{display:inline-block}.ods-topbar__divider{display:inline-block;width:1px;height:18px;background:var(--ods-border-default);transform:rotate(15deg);flex-shrink:0}.ods-topbar__workspace{display:inline-flex;align-items:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);min-width:0}.ods-topbar__breadcrumbs ol{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:0}.ods-topbar__crumb{display:flex;align-items:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-topbar__crumb a{color:var(--ods-text-body);text-decoration:none;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-topbar__crumb a:hover{color:var(--ods-text-primary)}.ods-topbar__crumb [aria-current=page]{color:var(--ods-text-primary);font-weight:500}.ods-topbar__separator{margin:0 var(--ods-space-2);color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs)}.ods-topbar__center{display:flex;align-items:center;flex:1;justify-content:center}.ods-topbar__right{display:flex;align-items:center;gap:var(--ods-space-2);margin-left:auto}.ods-topbar__search{position:relative;display:flex;align-items:center}.ods-topbar__search-icon{position:absolute;left:var(--ods-space-2);color:var(--ods-text-tertiary);pointer-events:none}.ods-topbar__search-input{width:280px;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3) 0 28px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-topbar__search-input::placeholder{color:var(--ods-text-disabled)}.ods-topbar__search-input:focus{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-topbar__actions{display:flex;align-items:center;gap:var(--ods-space-1)}.ods-tabs{display:flex;flex-direction:column;width:100%;font-family:var(--ods-font-family-sans);color:var(--ods-text-body)}.ods-tabs--vertical{flex-direction:row}.ods-tabs__list-wrap{position:relative;display:flex;align-items:stretch}.ods-tabs--horizontal .ods-tabs__list-wrap{flex-direction:row;border-bottom:1px solid var(--ods-border-default)}.ods-tabs--vertical .ods-tabs__list-wrap{flex-direction:column;border-right:1px solid var(--ods-border-default);min-width:160px}.ods-tabs__scroller{flex:1 1 auto;min-width:0}.ods-tabs--horizontal .ods-tabs__scroller{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.ods-tabs--horizontal .ods-tabs__scroller::-webkit-scrollbar{display:none}.ods-tabs--vertical .ods-tabs__scroller{overflow:visible}.ods-tabs__list{display:flex;position:relative;gap:0}.ods-tabs--horizontal .ods-tabs__list{flex-direction:row;width:max-content;min-width:100%}.ods-tabs--vertical .ods-tabs__list{flex-direction:column}.ods-tabs__scroll-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;min-height:var(--ods-layout-row-height);padding:0;background:var(--ods-surface-canvas);border:0;color:var(--ods-text-tertiary);cursor:pointer;position:relative;z-index:1;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tabs__scroll-btn:hover{color:var(--ods-text-primary)}.ods-tabs__scroll-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-tabs__scroll-btn--left{box-shadow:6px 0 6px -6px rgba(0,0,0,.08)}.ods-tabs__scroll-btn--right{box-shadow:-6px 0 6px -6px rgba(0,0,0,.08)}.ods-tabs__tab{position:relative;display:flex;align-items:center;gap:var(--ods-space-2);padding:0 var(--ods-space-3);height:var(--ods-layout-row-height);font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-tertiary);cursor:pointer;user-select:none;white-space:nowrap;border:none;background:none;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));outline:none}.ods-tabs__tab:hover:not(.ods-tabs__tab--disabled){color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-tabs__tab:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-tabs__tab--selected{color:var(--ods-accent);font-weight:600}.ods-tabs__tab--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ods-tabs__icon{display:flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0}.ods-tabs__indicator{position:absolute;transition:all var(--ods-duration-base, 180ms) var(--ods-ease-out, ease-out)}.ods-tabs--horizontal .ods-tabs__indicator{bottom:-1px;left:0;right:0;height:2px;background:var(--ods-accent)}.ods-tabs--vertical .ods-tabs__indicator{right:-1px;top:0;bottom:0;width:2px;background:var(--ods-accent)}.ods-tabs__panel{padding:var(--ods-space-4) 0;font-size:var(--ods-font-size-base);color:var(--ods-text-primary)}.ods-tabs--vertical .ods-tabs__panel{padding:0 var(--ods-space-4);flex:1}.ods-tabs__panel:focus{outline:none}.ods-breadcrumb{display:inline-flex;align-items:center;font-family:var(--ods-font-family-sans)}.ods-breadcrumb__list{display:inline-flex;align-items:center;list-style:none;margin:0;padding:0;gap:var(--ods-space-1);font-size:var(--ods-font-size-sm)}.ods-breadcrumb__item{display:flex;align-items:center;font-size:var(--ods-font-size-sm);line-height:1}.ods-breadcrumb__separator{display:flex;align-items:center;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs);flex-shrink:0;margin:0 var(--ods-space-1)}.ods-breadcrumb__link{display:inline-flex;align-items:center;gap:var(--ods-space-1);color:var(--ods-text-tertiary);text-decoration:none;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));white-space:nowrap}.ods-breadcrumb__link:hover:not(.ods-breadcrumb__link--current){color:var(--ods-accent)}.ods-breadcrumb__link:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-breadcrumb__link--current{color:var(--ods-text-primary);font-weight:500;cursor:default}.ods-breadcrumb__icon{display:flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0}.ods-dropdown__trigger{display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:rgba(0,0,0,0);cursor:pointer}.ods-dropdown__trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-dropdown{position:fixed;list-style:none;margin:0;padding:var(--ods-space-1);min-width:180px;border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);box-shadow:var(--ods-shadow-pop);z-index:var(--ods-z-popover);outline:none;font-family:var(--ods-font-family-sans);overflow-y:auto}.ods-dropdown:focus{outline:none}.ods-dropdown__item{display:flex;align-items:center;gap:var(--ods-space-2);height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));outline:none;user-select:none}.ods-dropdown__item:hover,.ods-dropdown__item:focus,.ods-dropdown__item[data-focused=true]{background:var(--ods-surface-muted)}.ods-dropdown__item--danger{color:var(--ods-status-failed-fg)}.ods-dropdown__item--danger:hover,.ods-dropdown__item--danger:focus{background:var(--ods-status-failed-bg)}.ods-dropdown__item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ods-dropdown__icon{display:flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0;color:var(--ods-text-tertiary)}.ods-dropdown__separator{height:1px;margin:var(--ods-space-1) 0;background:var(--ods-border-default);list-style:none}.ods-slideout__backdrop{position:fixed;inset:0;z-index:600;background:rgba(10,10,10,.35)}.ods-slideout__panel{position:fixed;top:0;right:0;bottom:0;z-index:601;display:flex;flex-direction:column;width:320px;max-width:100vw;padding:var(--ods-space-4);background:var(--ods-surface-canvas);border-left:1px solid var(--ods-border-default);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);outline:none;will-change:transform}.ods-slideout__panel--right{right:0}.ods-slideout__panel--left{left:0;right:auto;border-left:none;border-right:1px solid var(--ods-border-default)}.ods-slideout__header{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);flex-shrink:0;padding-bottom:var(--ods-space-3);border-bottom:1px solid var(--ods-border-default);margin-bottom:var(--ods-space-3)}.ods-slideout__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-slideout__close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;padding:0;border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-slideout__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-slideout__close:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-slideout__body{flex:1;overflow-y:auto;margin-top:var(--ods-space-3)}.ods-slideout__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding-top:var(--ods-space-3);border-top:1px solid var(--ods-border-default);flex-shrink:0}.ods-table-wrapper{width:100%;overflow-x:auto;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);background:var(--ods-surface-canvas)}.ods-table{width:100%;border-collapse:collapse;font-size:var(--ods-font-size-sm);line-height:1;color:var(--ods-text-primary)}.ods-table__header{background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default)}.ods-table__header th{height:var(--ods-layout-row-height);padding:0 var(--ods-space-3);text-align:left;font-family:var(--ods-font-family-mono);font-weight:600;font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);white-space:nowrap;user-select:none;position:sticky;top:0;z-index:1}.ods-table__header-content{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-table__cell--sortable{cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-table__cell--sortable:hover{background:var(--ods-surface-muted)}.ods-table__sort-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;opacity:.5;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-table__sort-icon>svg{color:inherit !important;fill:currentColor;width:12px;height:12px}.ods-table__sort-icon--active{opacity:1;color:var(--ods-accent)}.ods-table__row{border-bottom:1px solid var(--ods-border-soft);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-table__row:hover{background:var(--ods-surface-subtle)}.ods-table__row:last-child{border-bottom:none}.ods-table__row--selected{background:var(--ods-accent-soft) !important}.ods-table__row--expanded{background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-soft)}.ods-table__cell{height:var(--ods-layout-row-height);padding:0 var(--ods-space-3);color:var(--ods-text-primary);font-size:var(--ods-font-size-sm);vertical-align:middle;white-space:nowrap}.ods-table__cell--numeric,.ods-table__cell--id,.ods-table__cell--duration,.ods-table__cell--cost{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;text-align:right}.ods-table__cell--checkbox{width:36px;padding:0 var(--ods-space-2);text-align:center}.ods-table__cell--checkbox input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--ods-accent)}.ods-table__cell--expand{width:36px;padding:0;text-align:center}.ods-table__expand-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-table__expand-btn>svg{color:inherit !important;fill:currentColor;width:12px;height:12px}.ods-table__expand-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-table__expand-btn--open{transform:rotate(90deg)}.ods-table__expanded-cell{padding:var(--ods-space-4) var(--ods-space-5);background:var(--ods-surface-subtle)}.ods-table__empty{padding:var(--ods-space-7) var(--ods-space-4);text-align:center;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-sm)}.ods-table__loading{padding:0;position:relative;height:2px}.ods-table__loading-bar{position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg, transparent 0%, var(--ods-accent) 50%, transparent 100%);background-size:200% 100%;animation:ods-table-loading 1.5s ease-in-out infinite}@keyframes ods-table-loading{0%{background-position:200% 0}100%{background-position:-200% 0}}.ods-datatable{--dt-row-h: var(--ods-layout-row-height);--dt-cell-pad: var(--ods-space-3);--dt-font: var(--ods-font-size-sm);display:flex;flex-direction:column;width:100%;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary);overflow:hidden}.ods-datatable--compact{--dt-row-h: 24px;--dt-cell-pad: var(--ods-space-2);--dt-font: var(--ods-font-size-xs)}.ods-datatable--comfortable{--dt-row-h: var(--ods-layout-row-height-comfort);--dt-cell-pad: var(--ods-space-4);--dt-font: var(--ods-font-size-base)}.ods-datatable__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);min-height:44px}.ods-datatable__title-block{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.ods-datatable__title{display:inline-flex;align-items:center;gap:var(--ods-space-2);margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-datatable__count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary);padding:2px var(--ods-space-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-datatable__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-datatable__toolbar-actions{display:inline-flex;align-items:center;gap:var(--ods-space-2);flex-shrink:0}.ods-datatable__toolbar-section{display:inline-flex;align-items:center;gap:var(--ods-space-2);padding-right:var(--ods-space-2)}.ods-datatable__toolbar-section+.ods-datatable__toolbar-section{padding-left:var(--ods-space-2);border-left:1px solid var(--ods-border-soft)}.ods-datatable__toolbar-section--primary{padding-right:0;margin-left:var(--ods-space-1)}.ods-datatable__toolbar-btn{display:inline-flex;align-items:center;justify-content:center;height:var(--ods-layout-control-height);width:var(--ods-layout-control-height);padding:0;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__toolbar-btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary);border-color:var(--ods-border-strong)}.ods-datatable__toolbar-btn:focus-visible{outline:none;box-shadow:var(--ods-focus-ring);border-color:var(--ods-border-focus)}.ods-datatable__toolbar-btn:disabled{cursor:not-allowed;opacity:.55}.ods-datatable__toolbar-btn--active{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent)}.ods-datatable__toolbar-btn--busy>svg{animation:ods-datatable-spin .9s linear infinite}@keyframes ods-datatable-spin{to{transform:rotate(360deg)}}.ods-datatable__toolbar-custom{display:inline-flex;align-items:center;gap:var(--ods-space-2);margin-left:var(--ods-space-1)}.ods-datatable__sub-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-accent-soft);border-bottom:1px solid var(--ods-accent);color:var(--ods-accent-strong);font-size:var(--ods-font-size-sm)}.ods-datatable__sub-toolbar .ods-datatable__bulk-clear{display:inline-flex;align-items:center;gap:var(--ods-space-1);width:auto;height:auto;padding:2px var(--ods-space-1-5)}.ods-datatable__filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ods-space-1-5);padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-soft)}.ods-datatable__filter-chip{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:22px;padding:0 var(--ods-space-1-5);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-xs);color:var(--ods-text-body)}.ods-datatable__filter-chip-label{color:var(--ods-text-tertiary)}.ods-datatable__filter-chip-value{font-weight:600;color:var(--ods-text-primary)}.ods-datatable__filter-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:2px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-pill);cursor:pointer}.ods-datatable__filter-chip-remove:hover{color:var(--ods-status-failed);background:rgba(0,0,0,.06)}.ods-datatable__filter-chip-clear-all{margin-left:auto;padding:2px var(--ods-space-2);background:rgba(0,0,0,0);border:0;color:var(--ods-accent);font-size:var(--ods-font-size-xs);font-weight:500;cursor:pointer}.ods-datatable__filter-chip-clear-all:hover{text-decoration:underline}.ods-datatable__th--resizable{position:relative}.ods-datatable__th-resize{position:absolute;top:0;right:0;width:6px;height:100%;cursor:col-resize;user-select:none;touch-action:none;z-index:1;background:rgba(0,0,0,0);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out)}.ods-datatable__th-resize:hover,.ods-datatable__th-resize:active{background:var(--ods-accent)}.ods-datatable__search{position:relative;display:inline-flex;align-items:center}.ods-datatable__search-icon{position:absolute;left:var(--ods-space-2);display:inline-flex;color:var(--ods-text-tertiary);pointer-events:none}.ods-datatable__search-input{width:220px;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3) 0 26px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);outline:none;transition:border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__search-input::placeholder{color:var(--ods-text-disabled)}.ods-datatable__search-input:focus{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-datatable__search-clear{position:absolute;right:var(--ods-space-1);display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer}.ods-datatable__search-clear:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__filter{position:relative;display:inline-flex}.ods-datatable__filter-trigger{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:var(--ods-layout-control-height);padding:0 var(--ods-space-2) 0 var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__filter-trigger:hover{background:var(--ods-surface-muted)}.ods-datatable__filter-trigger--active{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent-border)}.ods-datatable__filter-trigger[aria-expanded=true]{background:var(--ods-surface-muted);border-color:var(--ods-text-tertiary)}.ods-datatable__filter-icon{display:inline-flex;color:var(--ods-text-tertiary)}.ods-datatable__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--ods-layout-control-height);height:var(--ods-layout-control-height);padding:0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__icon-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__icon-btn[aria-expanded=true]{background:var(--ods-surface-muted);border-color:var(--ods-text-tertiary)}.ods-datatable__menu{position:fixed;z-index:1000;list-style:none;margin:0;padding:var(--ods-space-1);min-width:180px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);animation:ods-datatable-menu-in 120ms var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}@keyframes ods-datatable-menu-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ods-datatable__menu-item{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);text-align:left;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__menu-item:hover{background:var(--ods-surface-muted)}.ods-datatable__menu-item--active{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:600}.ods-datatable__menu-item--danger{color:var(--ods-status-failed-fg)}.ods-datatable__menu-item--danger:hover{background:var(--ods-status-failed-bg)}.ods-datatable__menu-item--disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.ods-datatable__menu-item-icon{display:inline-flex;width:14px;height:14px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-datatable__menu-checkbox{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__menu-checkbox:hover{background:var(--ods-surface-muted)}.ods-datatable__menu-checkbox input{width:14px;height:14px;accent-color:var(--ods-accent)}.ods-datatable__bulk-summary{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-sm);color:var(--ods-text-primary)}.ods-datatable__bulk-count{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:18px;padding:0 var(--ods-space-1);background:var(--ods-accent);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;font-weight:600}.ods-datatable__bulk-clear{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer}.ods-datatable__bulk-clear:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__bulk-actions{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-datatable__bulk-action{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__bulk-action:hover{background:var(--ods-surface-muted)}.ods-datatable__bulk-action--danger{color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd)}.ods-datatable__bulk-action--danger:hover{background:var(--ods-status-failed-bg);border-color:var(--ods-status-failed)}.ods-datatable__bulk-action-icon{display:inline-flex;width:14px;height:14px}.ods-datatable__scroll{flex:1 1 auto;overflow-x:auto;overflow-y:auto;max-height:100%}.ods-datatable__table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--dt-font);color:var(--ods-text-primary);line-height:1}.ods-datatable__thead{background:var(--ods-surface-subtle)}.ods-datatable__th{position:sticky;top:0;z-index:1;height:var(--ods-layout-row-height);padding:0 var(--dt-cell-pad);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);text-align:left;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);white-space:nowrap;user-select:none}.ods-datatable__th--sortable{cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__th--sortable:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__th--numeric,.ods-datatable__th--align-right{text-align:right}.ods-datatable__th--align-center{text-align:center}.ods-datatable__th--checkbox{width:40px;padding:0 var(--ods-space-2);text-align:center}.ods-datatable__th--expand{width:32px;padding:0;text-align:center}.ods-datatable__th--actions{width:40px;padding:0;text-align:center}.ods-datatable__th-content{display:inline-flex;align-items:center;gap:var(--ods-space-1);line-height:1}.ods-datatable__th-label{line-height:1}.ods-datatable__sort-icon{display:inline-flex;align-items:center;color:var(--ods-text-tertiary);transition:color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__th--sortable[aria-sort] .ods-datatable__sort-icon{color:var(--ods-accent)}.ods-datatable__tbody .ods-datatable__row{transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__tbody .ods-datatable__row:hover{background:var(--ods-surface-subtle)}.ods-datatable__row--selected{background:var(--ods-accent-soft) !important}.ods-datatable__row--selected:hover{background:var(--ods-accent-soft) !important}.ods-datatable__row--clickable{cursor:pointer}.ods-datatable__td{height:var(--dt-row-h);padding:0 var(--dt-cell-pad);border-bottom:1px solid var(--ods-border-soft);vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.ods-datatable__td--numeric,.ods-datatable__td--align-right{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;text-align:right}.ods-datatable__td--align-center{text-align:center}.ods-datatable__td--checkbox{width:40px;padding:0 var(--ods-space-2);text-align:center}.ods-datatable__td--checkbox input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--ods-accent)}.ods-datatable__td--expand{width:32px;padding:0;text-align:center}.ods-datatable__td--actions{width:40px;padding:0;text-align:center}.ods-datatable__expand-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__expand-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__expand-btn--open{transform:rotate(90deg);color:var(--ods-accent)}.ods-datatable__row-expanded{background:var(--ods-surface-subtle)}.ods-datatable__td-expanded{padding:var(--ods-space-3) var(--ods-space-5);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-soft)}.ods-datatable__row-actions{position:relative;display:inline-flex}.ods-datatable__row-actions-trigger{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer}.ods-datatable__row-actions-trigger:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__row-actions-trigger[aria-expanded=true]{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__empty{padding:var(--ods-space-7) var(--ods-space-5);text-align:center}.ods-datatable__empty-title{font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary);margin-bottom:var(--ods-space-1)}.ods-datatable__empty-desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);margin-bottom:var(--ods-space-3)}.ods-datatable__empty-action{display:inline-flex;justify-content:center}.ods-datatable__loading{position:relative;padding:0;height:2px}.ods-datatable__loading-bar{position:absolute;inset:0 0 0 0;background:linear-gradient(90deg, transparent 0%, var(--ods-accent) 50%, transparent 100%);background-size:200% 100%;animation:ods-datatable-loading 1.4s ease-in-out infinite}@keyframes ods-datatable-loading{0%{background-position:200% 0}100%{background-position:-200% 0}}.ods-datatable__error{padding:var(--ods-space-5);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-status-failed-fg);background:var(--ods-status-failed-bg)}.ods-datatable__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);border-top:1px solid var(--ods-border-default);background:var(--ods-surface-subtle);font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-datatable__footer-summary{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-datatable__footer-controls{display:inline-flex;align-items:center;gap:var(--ods-space-4)}.ods-datatable__footer-range,.ods-datatable__footer-total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-weight:500;color:var(--ods-text-primary)}.ods-datatable__footer-pagesize{display:inline-flex;align-items:center;gap:var(--ods-space-2);color:var(--ods-text-tertiary)}.ods-datatable__footer-nav{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-datatable__page-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--ods-layout-control-height-sm);height:var(--ods-layout-control-height-sm);padding:0;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__page-btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__page-btn:disabled{opacity:.4;cursor:not-allowed}.ods-datatable__page-pos{display:inline-flex;align-items:center;gap:2px;padding:0 var(--ods-space-2);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;color:var(--ods-text-body);font-weight:500}.ods-datatable__page-sep{color:var(--ods-text-tertiary)}.ods-empty-state{display:flex;font-family:var(--ods-font-family-sans);padding:var(--ods-space-9) var(--ods-space-4);gap:var(--ods-space-3)}.ods-empty-state__icon{display:flex;align-items:center;justify-content:center;color:var(--ods-text-disabled);flex-shrink:0}.ods-empty-state__body{display:flex;flex-direction:column;min-width:0}.ods-empty-state__title{margin:0;font-family:var(--ods-font-family-serif);font-weight:500;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-empty-state__description{margin:var(--ods-space-1) 0 0;color:var(--ods-text-tertiary);line-height:var(--ods-line-height-base);max-width:360px}.ods-empty-state__action{margin-top:var(--ods-space-4)}.ods-empty-state--vertical{flex-direction:column;align-items:center;justify-content:center;text-align:center}.ods-empty-state--vertical .ods-empty-state__icon{margin-bottom:var(--ods-space-3)}.ods-empty-state--horizontal{flex-direction:row;align-items:flex-start;text-align:left}.ods-empty-state--horizontal .ods-empty-state__icon{margin-top:4px}.ods-empty-state--sm{padding:var(--ods-space-5) var(--ods-space-3);gap:var(--ods-space-2)}.ods-empty-state--sm .ods-empty-state__icon{width:24px;height:24px}.ods-empty-state--sm .ods-empty-state__icon>svg{width:24px;height:24px}.ods-empty-state--sm .ods-empty-state__title{font-size:var(--ods-font-size-md)}.ods-empty-state--sm .ods-empty-state__description{font-size:var(--ods-font-size-xs);max-width:280px}.ods-empty-state--sm .ods-empty-state__action{margin-top:var(--ods-space-3)}.ods-empty-state--md .ods-empty-state__icon{width:32px;height:32px}.ods-empty-state--md .ods-empty-state__icon>svg{width:32px;height:32px}.ods-empty-state--md .ods-empty-state__title{font-size:var(--ods-font-size-lg)}.ods-empty-state--md .ods-empty-state__description{font-size:var(--ods-font-size-sm)}.ods-empty-state--lg{padding:var(--ods-space-10, 80px) var(--ods-space-5);gap:var(--ods-space-4)}.ods-empty-state--lg .ods-empty-state__icon{width:48px;height:48px}.ods-empty-state--lg .ods-empty-state__icon>svg{width:48px;height:48px}.ods-empty-state--lg .ods-empty-state__title{font-size:var(--ods-font-size-xl)}.ods-empty-state--lg .ods-empty-state__description{font-size:var(--ods-font-size-md);max-width:480px}.ods-empty-state--lg .ods-empty-state__action{margin-top:var(--ods-space-5)}@keyframes ods-skeleton-pulse{0%,100%{opacity:1}50%{opacity:.55}}@keyframes ods-skeleton-shimmer{0%{background-position:-100% 0}100%{background-position:200% 0}}.ods-skeleton{display:block;background:var(--ods-surface-muted);border-radius:var(--ods-radius-1);position:relative;overflow:hidden}.ods-skeleton--rect{width:100%;height:96px}.ods-skeleton--circle{width:32px;height:32px;border-radius:50%}.ods-skeleton--text{width:100%;height:.85em;border-radius:var(--ods-radius-1)}.ods-skeleton--pill{width:80px;height:22px;border-radius:var(--ods-radius-pill)}.ods-skeleton--anim-pulse{animation:ods-skeleton-pulse 1200ms ease-in-out infinite}.ods-skeleton--anim-shimmer{background:linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--ods-surface-canvas) 70%, transparent) 50%, transparent 100%),var(--ods-surface-muted);background-size:200% 100%,100% 100%;background-repeat:no-repeat;background-position:-100% 0,0 0;animation:ods-skeleton-shimmer 1600ms linear infinite}@media(prefers-reduced-motion: reduce){.ods-skeleton--anim-pulse,.ods-skeleton--anim-shimmer{animation:none}}.ods-skeleton-group{display:flex;width:100%}.ods-skeleton-group--vertical{flex-direction:column;gap:var(--ods-space-2)}.ods-skeleton-group--horizontal{flex-direction:row;align-items:center;gap:var(--ods-space-2)}.ods-toast-stack{position:fixed;z-index:9999;padding:var(--ods-space-4);box-sizing:border-box;max-width:100vw;pointer-events:none}.ods-toast-stack>*{pointer-events:auto}.ods-toast-stack--top-left{top:0;left:0}.ods-toast-stack--top-center{top:0;left:50%;transform:translateX(-50%)}.ods-toast-stack--top-right{top:0;right:0}.ods-toast-stack--bottom-left{bottom:0;left:0}.ods-toast-stack--bottom-center{bottom:0;left:50%;transform:translateX(-50%)}.ods-toast-stack--bottom-right{bottom:0;right:0}.ods-toast-stack--expanded{pointer-events:auto}.ods-toast-stack__scroll{position:relative;display:flex;flex-direction:column-reverse;gap:0;width:380px;max-width:calc(100vw - 32px)}.ods-toast-stack__scroll>.ods-toast{position:absolute;left:0;right:0;width:100%}.ods-toast-stack--bottom-left .ods-toast-stack__scroll>.ods-toast,.ods-toast-stack--bottom-center .ods-toast-stack__scroll>.ods-toast,.ods-toast-stack--bottom-right .ods-toast-stack__scroll>.ods-toast{bottom:0}.ods-toast-stack--top-left .ods-toast-stack__scroll>.ods-toast,.ods-toast-stack--top-center .ods-toast-stack__scroll>.ods-toast,.ods-toast-stack--top-right .ods-toast-stack__scroll>.ods-toast{top:0}.ods-toast-stack__scroll{min-height:60px}.ods-toast-stack__scroll--expanded{position:relative;display:flex;gap:8px;max-height:70vh;overflow-y:auto;padding:var(--ods-space-1);min-height:0}.ods-toast-stack__scroll--expanded>.ods-toast{position:relative;left:auto;right:auto;top:auto;bottom:auto}.ods-toast{position:relative;display:flex;align-items:center;gap:var(--ods-space-3);padding:14px var(--ods-space-4);min-width:min(380px,100%);max-width:480px;box-sizing:border-box;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary);will-change:transform,opacity;cursor:default;user-select:none}.ods-toast--stacked{cursor:pointer}.ods-toast--success{border-left:2px solid var(--ods-status-success)}.ods-toast--info,.ods-toast--running{border-left:2px solid var(--ods-accent)}.ods-toast--warning{border-left:2px solid var(--ods-status-pending)}.ods-toast--error,.ods-toast--failed{border-left:2px solid var(--ods-status-failed)}.ods-toast__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:16px;height:16px;margin-top:1px;align-self:flex-start}.ods-toast__body{flex:1 1 auto;min-width:0}.ods-toast__title{font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-primary);line-height:1.35;margin-bottom:3px}.ods-toast__desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:1.5}.ods-toast__action{flex-shrink:0;align-self:center;display:flex;align-items:center}.ods-toast__action-chip{display:inline-flex;align-items:center;padding:4px var(--ods-space-3);border:1px solid var(--ods-accent-border, var(--ods-accent));background:var(--ods-accent-soft);color:var(--ods-accent);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;line-height:1;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-toast__action-chip:hover{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-toast__action-chip:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px}.ods-toast__close{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-disabled);cursor:pointer;flex-shrink:0;align-self:flex-start;margin-top:-2px;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-toast__close:hover{background:var(--ods-surface-subtle);color:var(--ods-text-primary)}.ods-toast__close:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-toast-stack__collapse{align-self:flex-end;margin-top:var(--ods-space-1);padding:0 var(--ods-space-2);height:20px;border:1px solid var(--ods-border-strong);background:var(--ods-surface-canvas);color:var(--ods-text-body);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:500;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-toast-stack__collapse:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-condition-builder{display:flex;flex-direction:column;gap:0;font-family:var(--ods-font-family-sans);container-type:inline-size;container-name:ods-cb}.ods-condition-builder__join-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:64px;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-accent);background:var(--ods-accent-soft);border:1px solid var(--ods-accent);border-radius:var(--ods-radius-1);cursor:default}.ods-condition-builder__join-btn--lead{background:var(--ods-surface-muted);color:var(--ods-text-tertiary);border-color:var(--ods-border-default)}.ods-condition-builder__join-btn--clickable{cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-condition-builder__join-btn--clickable:hover{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-condition-builder__join-btn--clickable:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-condition-row{display:flex;align-items:center;gap:var(--ods-space-2);margin-bottom:var(--ods-space-2)}@container ods-cb (max-width: 520px){.ods-condition-row{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--ods-space-2);row-gap:var(--ods-space-1-5);align-items:stretch;padding:var(--ods-space-2);border:1px solid var(--ods-border-soft);border-radius:var(--ods-radius-1);background:var(--ods-surface-subtle)}.ods-condition-row>.ods-condition-builder__join-btn{grid-column:1/2;justify-self:start;width:auto;min-width:64px}.ods-condition-row>.ods-condition-row__remove{grid-column:2/3;justify-self:end}.ods-condition-row>.ods-cb-dd:nth-of-type(1){grid-column:1/2;min-width:0 !important}.ods-condition-row>.ods-cb-dd:nth-of-type(2){grid-column:2/3;min-width:0 !important}.ods-condition-row>.ods-condition-row__value{grid-column:1/-1;width:100%}}.ods-condition-row__value{flex:1 1 0;min-width:0;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);margin:0;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-sm);line-height:1;outline:none;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-condition-row__value:hover{border-color:var(--ods-text-tertiary)}.ods-condition-row__value:focus,.ods-condition-row__value:focus-visible{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-condition-row__value::placeholder{color:var(--ods-text-disabled)}.ods-condition-row__remove{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));flex-shrink:0}.ods-condition-row__remove>svg{width:14px;height:14px}.ods-condition-row__remove:hover{background:var(--ods-status-failed-bg);color:var(--ods-status-failed)}.ods-cb-dd__chev{width:12px;height:12px}.ods-cb-dd__search>svg{width:14px;height:14px}.ods-cb-dd__opt-check{width:14px;height:14px}.ods-condition-builder__actions{padding-top:var(--ods-space-2)}.ods-condition-builder__add{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:var(--ods-space-1) var(--ods-space-2);border:1px dashed var(--ods-border-strong);border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-sm);cursor:pointer}.ods-condition-builder__add>svg{width:12px;height:12px}.ods-condition-builder__add{transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-condition-builder__add:hover{border-color:var(--ods-accent);color:var(--ods-accent);background:var(--ods-accent-soft)}.ods-condition-group{margin-left:var(--ods-space-2);padding-left:var(--ods-space-3);border-left:2px solid var(--ods-accent-border)}.ods-cb-dd{position:relative;display:inline-flex;flex-shrink:0}.ods-cb-dd__trigger{display:inline-flex;align-items:center;gap:var(--ods-space-1);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-size:var(--ods-font-size-sm);font-weight:500;font-family:inherit;cursor:pointer;text-align:left;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-cb-dd__trigger:hover{border-color:var(--ods-text-tertiary)}.ods-cb-dd__trigger:focus-visible,.ods-cb-dd__trigger--open{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-cb-dd__icon,.ods-cb-dd__symbol{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ods-cb-dd__icon{width:12px;height:12px;color:var(--ods-accent)}.ods-cb-dd__symbol{font-weight:700;color:var(--ods-accent);min-width:12px;font-family:var(--ods-font-family-mono)}.ods-cb-dd__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-cb-dd__label--placeholder{color:var(--ods-text-disabled);font-weight:400}.ods-cb-dd__chev{color:var(--ods-text-tertiary);flex-shrink:0}.ods-cb-dd__panel{position:absolute;top:calc(100% + var(--ods-space-1));left:0;z-index:50;min-width:100%;max-width:280px;display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);overflow:hidden}.ods-cb-dd__search{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);border-bottom:1px solid var(--ods-border-default);color:var(--ods-text-tertiary)}.ods-cb-dd__search input{flex:1 1 auto;min-width:0;border:0;outline:none;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary)}.ods-cb-dd__search input::placeholder{color:var(--ods-text-disabled)}.ods-cb-dd__list{list-style:none;margin:0;padding:var(--ods-space-1);max-height:240px;overflow-y:auto}.ods-cb-dd__opt{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;padding:var(--ods-space-1) var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-sm);font-family:inherit;color:var(--ods-text-primary);cursor:pointer;text-align:left;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-cb-dd__opt--active{background:var(--ods-surface-muted)}.ods-cb-dd__opt--selected{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:600}.ods-cb-dd__opt-icon{display:inline-flex;width:12px;height:12px;color:var(--ods-accent);flex-shrink:0}.ods-cb-dd__opt-symbol{font-family:var(--ods-font-family-mono);font-weight:700;color:var(--ods-accent);min-width:12px}.ods-cb-dd__opt-text{display:flex;flex-direction:column;gap:1px;flex:1 1 auto;min-width:0}.ods-cb-dd__opt-label{line-height:1.3}.ods-cb-dd__opt-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:1.3}.ods-cb-dd__opt-check{color:var(--ods-accent);flex-shrink:0}.ods-cb-dd__empty{list-style:none;padding:var(--ods-space-3);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);text-align:center}.ods-data-mapper{--dm-row-h: var(--ods-layout-row-height);--dm-side-w: 280px;display:flex;flex-direction:column;font-family:var(--ods-font-family-sans);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);color:var(--ods-text-primary);min-height:480px;overflow:hidden}.ods-data-mapper__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-3) var(--ods-space-4);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);flex-shrink:0}.ods-data-mapper__toolbar-left,.ods-data-mapper__toolbar-right{display:inline-flex;align-items:center;gap:var(--ods-space-3)}.ods-data-mapper__icon-badge{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--ods-radius-1);background:var(--ods-accent);color:var(--ods-surface-canvas);flex-shrink:0}.ods-data-mapper__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-data-mapper__stats{display:inline-flex;align-items:center;gap:var(--ods-space-2);padding-left:var(--ods-space-3);border-left:1px solid var(--ods-border-default)}.ods-data-mapper__stat{display:inline-flex;align-items:baseline;gap:4px;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-data-mapper__stat--warn{color:var(--ods-status-pending-fg)}.ods-data-mapper__stat-value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-base);font-weight:600;color:var(--ods-text-primary)}.ods-data-mapper__stat--warn .ods-data-mapper__stat-value{color:var(--ods-status-pending-fg)}.ods-data-mapper__stat-label{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-data-mapper__stat-sep{color:var(--ods-text-disabled);user-select:none}.ods-data-mapper__action{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-body);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__action svg{color:var(--ods-text-tertiary)}.ods-data-mapper__action:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-data-mapper__action:hover:not(:disabled) svg{color:var(--ods-text-primary)}.ods-data-mapper__action:disabled{opacity:.4;cursor:not-allowed}.ods-data-mapper__action--ghost{background:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.ods-data-mapper__action--ghost:hover:not(:disabled){background:var(--ods-surface-muted);border-color:var(--ods-border-default)}.ods-data-mapper__action--primary{background:var(--ods-accent);color:var(--ods-surface-canvas);border-color:var(--ods-accent)}.ods-data-mapper__action--primary svg{color:currentColor}.ods-data-mapper__action--primary:hover:not(:disabled){background:var(--ods-accent-hover);border-color:var(--ods-accent-hover);color:var(--ods-surface-canvas)}.ods-data-mapper__subtoolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-4);border-bottom:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);flex-shrink:0}.ods-data-mapper__search{position:relative;display:inline-flex;align-items:center;width:280px}.ods-data-mapper__search>svg{position:absolute;left:var(--ods-space-2);color:var(--ods-text-tertiary);pointer-events:none}.ods-data-mapper__search input{flex:1 1 auto;width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3) 0 28px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);outline:none;transition:border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__search input::placeholder{color:var(--ods-text-disabled)}.ods-data-mapper__search input:focus{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-data-mapper__display{display:inline-flex;align-items:center;padding:1px;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-data-mapper__display-btn{height:22px;padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__display-btn:hover{color:var(--ods-text-primary)}.ods-data-mapper__display-btn--active{background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-weight:600;box-shadow:0 0 0 1px var(--ods-border-default)}.ods-data-mapper__body{display:flex;flex:1 1 auto;min-height:0}.ods-data-mapper__grid{flex:1 1 auto;display:flex;flex-direction:column;min-width:0;overflow:auto;background:var(--ods-surface-canvas)}.ods-data-mapper__grid-head{display:grid;grid-template-columns:minmax(280px, 1fr) minmax(320px, 1.4fr);position:sticky;top:0;z-index:3;background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default)}.ods-data-mapper__grid-head-cell{height:var(--dm-row-h);display:inline-flex;align-items:center;padding:0 var(--ods-space-3);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-data-mapper__grid-head-cell+.ods-data-mapper__grid-head-cell{border-left:1px solid var(--ods-border-default)}.ods-data-mapper__row{display:grid;grid-template-columns:minmax(280px, 1fr) minmax(320px, 1.4fr);border-bottom:1px solid var(--ods-border-soft);background:var(--ods-surface-canvas);transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__row:hover{background:var(--ods-surface-subtle)}.ods-data-mapper__row--selected{background:var(--ods-accent-soft)}.ods-data-mapper__row--selected:hover{background:var(--ods-accent-soft)}.ods-data-mapper__row--mapped:not(.ods-data-mapper__row--selected){background:var(--ods-surface-canvas)}.ods-data-mapper__row--mapped:not(.ods-data-mapper__row--selected) .ods-data-mapper__cell--target{border-left:2px solid var(--ods-accent)}.ods-data-mapper__row--drop-target{background:var(--ods-accent-soft) !important;box-shadow:inset 0 0 0 2px var(--ods-accent);transition-duration:0ms}.ods-data-mapper__row--drop-target .ods-data-mapper__expr-empty{color:var(--ods-accent);font-style:normal;font-weight:600}.ods-data-mapper__guides{display:inline-flex;align-items:stretch;align-self:stretch;flex-shrink:0}.ods-data-mapper__guide{display:inline-block;width:16px;align-self:stretch;border-left:1px solid var(--ods-border-soft);margin-right:-1px}.ods-data-mapper__guide--last{position:relative}.ods-data-mapper__guide--last::before{content:"";position:absolute;top:50%;left:0;width:8px;height:1px;background:var(--ods-border-soft)}.ods-data-mapper__sidebar .ods-data-mapper__guide{width:12px}.ods-data-mapper__cell{display:flex;align-items:center;gap:var(--ods-space-2);min-height:var(--dm-row-h);padding:0 var(--ods-space-3);font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);cursor:default}.ods-data-mapper__cell+.ods-data-mapper__cell{border-left:1px solid var(--ods-border-soft)}.ods-data-mapper__cell--target{cursor:pointer}.ods-data-mapper__cell--expr{cursor:pointer;padding:var(--ods-space-1) var(--ods-space-3)}.ods-data-mapper__cell--expr-editing{padding:var(--ods-space-2) var(--ods-space-3);align-items:stretch}.ods-data-mapper__caret{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;flex-shrink:0;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__caret:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-data-mapper__caret-spacer{display:inline-block;width:14px;flex-shrink:0}.ods-data-mapper__field-meta{display:inline-flex;align-items:baseline;gap:var(--ods-space-2);flex:1 1 auto;min-width:0;overflow:hidden}.ods-data-mapper__field-label{display:inline-flex;align-items:center;font-weight:500;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.ods-data-mapper__field-req{color:var(--ods-status-failed);margin-left:2px;font-weight:600}.ods-data-mapper__field-api{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);letter-spacing:0;white-space:nowrap}.ods-data-mapper__field-api::before{content:"·";margin-right:4px;color:var(--ods-text-disabled)}.ods-data-mapper__type{flex-shrink:0;display:inline-flex;align-items:center;height:18px;padding:0 var(--ods-space-1);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:500;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;border:1px solid var(--ods-border-default);background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-data-mapper__type--string{background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd)}.ods-data-mapper__type--integer{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-data-mapper__type--datetime{background:var(--ods-node-transform-bg);color:var(--ods-node-transform-fg);border-color:var(--ods-node-transform-bd)}.ods-data-mapper__type--boolean{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-data-mapper__type--object{background:var(--ods-node-io-bg);color:var(--ods-node-io-fg);border-color:var(--ods-node-io-bd)}.ods-data-mapper__foreach{display:inline-flex;align-items:center;gap:var(--ods-space-1);margin-left:auto;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);cursor:pointer;flex-shrink:0}.ods-data-mapper__foreach input{width:12px;height:12px;accent-color:var(--ods-accent);cursor:pointer}.ods-data-mapper__expr-render{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;max-width:100%;min-width:0;line-height:1.4;padding:4px 0}.ods-data-mapper__expr-text{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-body);white-space:pre-wrap;word-break:break-word}.ods-data-mapper__expr-chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 var(--ods-space-1) 0 6px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-accent-border);background:var(--ods-accent-soft);color:var(--ods-accent);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:600;line-height:1;max-width:200px;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__expr-chip--variable{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-data-mapper__expr-chip--function{background:var(--ods-node-transform-bg);color:var(--ods-node-transform-fg);border-color:var(--ods-node-transform-bd);font-family:var(--ods-font-family-mono);font-weight:500}.ods-data-mapper__expr-chip--integer{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-data-mapper__expr-chip--datetime{background:var(--ods-node-transform-bg);color:var(--ods-node-transform-fg);border-color:var(--ods-node-transform-bd)}.ods-data-mapper__expr-chip--boolean{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-data-mapper__expr-chip--object{background:var(--ods-node-io-bg);color:var(--ods-node-io-fg);border-color:var(--ods-node-io-bd)}.ods-data-mapper__expr-chip-glyph{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--ods-font-family-mono);font-size:9px;font-weight:700;opacity:.7;letter-spacing:0}.ods-data-mapper__expr-chip-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ods-data-mapper__expr-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:2px;margin-right:-3px;padding:0;border:0;background:rgba(0,0,0,0);color:currentColor;border-radius:var(--ods-radius-1);opacity:.55;cursor:pointer;transition:opacity var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__expr-chip-remove:hover{opacity:1;background:rgba(0,0,0,.08)}.ods-data-mapper__expr-empty{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-disabled);font-style:italic}.ods-data-mapper__expr-group{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-data-mapper__editor{display:flex;align-items:stretch;gap:var(--ods-space-1);width:100%;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-focus);border-radius:var(--ods-radius-1);box-shadow:0 0 0 2px var(--ods-accent-border)}.ods-data-mapper__editor-input{flex:1 1 auto;min-width:0;min-height:26px;padding:4px var(--ods-space-2);border:0;background:rgba(0,0,0,0);outline:none;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);line-height:1.6;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;cursor:text}.ods-data-mapper__editor-input--empty::before{content:attr(data-placeholder);color:var(--ods-text-disabled);font-style:italic;pointer-events:none;user-select:none;font-family:var(--ods-font-family-sans)}.ods-data-mapper__editor-input .ods-data-mapper__expr-chip{margin:0 2px;vertical-align:baseline;user-select:none;cursor:default;line-height:18px}.ods-data-mapper__editor-actions{display:inline-flex;align-items:center;gap:1px;padding:2px;border-left:1px solid var(--ods-border-soft)}.ods-data-mapper__editor-fx,.ods-data-mapper__editor-clear{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__editor-fx:hover,.ods-data-mapper__editor-clear:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-data-mapper__editor-clear:hover{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-data-mapper__empty{padding:var(--ods-space-7) var(--ods-space-4);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-data-mapper__sidebar{display:flex;flex-direction:column;width:var(--dm-side-w);flex-shrink:0;border-left:1px solid var(--ods-border-default);background:var(--ods-surface-subtle);position:relative}.ods-data-mapper__sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-1);padding:var(--ods-space-1) var(--ods-space-1) var(--ods-space-1) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default);flex-shrink:0;background:var(--ods-surface-subtle)}.ods-data-mapper__sidebar-tabs{display:inline-flex;align-items:center;gap:1px;padding:1px;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-data-mapper__sidebar-tab{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__sidebar-tab:hover{color:var(--ods-text-primary)}.ods-data-mapper__sidebar-tab--active{background:var(--ods-surface-canvas);color:var(--ods-accent);font-weight:600;box-shadow:0 0 0 1px var(--ods-border-default)}.ods-data-mapper__sidebar-close{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer}.ods-data-mapper__sidebar-close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-data-mapper__sidebar-search{position:relative;display:flex;align-items:center;padding:var(--ods-space-1) var(--ods-space-2);border-bottom:1px solid var(--ods-border-default);background:var(--ods-surface-subtle);color:var(--ods-text-tertiary);flex-shrink:0}.ods-data-mapper__sidebar-search>svg{position:absolute;left:calc(var(--ods-space-2) + var(--ods-space-1));pointer-events:none}.ods-data-mapper__sidebar-search input{flex:1 1 auto;width:100%;height:24px;padding:0 var(--ods-space-1) 0 24px;border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);outline:none}.ods-data-mapper__sidebar-search input::placeholder{color:var(--ods-text-disabled)}.ods-data-mapper__sidebar-search input:focus{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-data-mapper__sidebar-list{flex:1 1 auto;overflow-y:auto;padding:var(--ods-space-1) 0}.ods-data-mapper__sidebar-empty{padding:var(--ods-space-5) var(--ods-space-3);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-data-mapper__sidebar-item{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:28px;padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);text-align:left;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__sidebar-item:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-data-mapper__sidebar-item:disabled{color:var(--ods-text-disabled);cursor:not-allowed}.ods-data-mapper__sidebar-item--draggable{cursor:grab}.ods-data-mapper__sidebar-item--draggable:active{cursor:grabbing}.ods-data-mapper__sidebar-item--draggable:hover{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-data-mapper__sidebar-item--draggable:hover .ods-data-mapper__sidebar-grip{color:var(--ods-accent)}.ods-data-mapper__sidebar-grip{display:inline-flex;align-items:center;justify-content:center;width:12px;height:14px;color:var(--ods-text-disabled);flex-shrink:0;transition:color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__sidebar-caret{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-data-mapper__sidebar-caret-spacer{display:inline-block;width:12px;flex-shrink:0}.ods-data-mapper__sidebar-item-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-data-mapper__sidebar-group+.ods-data-mapper__sidebar-group{margin-top:var(--ods-space-2)}.ods-data-mapper__sidebar-group-label{padding:var(--ods-space-1) var(--ods-space-3);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-data-mapper__sidebar-fn{display:flex;align-items:flex-start;gap:var(--ods-space-2);width:100%;min-height:32px;padding:var(--ods-space-1) var(--ods-space-3);border:0;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);text-align:left;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__sidebar-fn:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-data-mapper__sidebar-fn:disabled{color:var(--ods-text-disabled);cursor:not-allowed}.ods-data-mapper__sidebar-fn>svg{color:var(--ods-accent);flex-shrink:0;margin-top:4px}.ods-data-mapper__sidebar-fn-text{display:flex;flex-direction:column;gap:1px;flex:1 1 auto;min-width:0}.ods-data-mapper__sidebar-fn-name{font-family:var(--ods-font-family-mono);font-weight:500;color:var(--ods-text-primary)}.ods-data-mapper__sidebar-fn-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-data-mapper__sidebar-hint{padding:var(--ods-space-2) var(--ods-space-3);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary);background:var(--ods-surface-muted);border-top:1px solid var(--ods-border-default);flex-shrink:0}.ods-data-mapper__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-3) var(--ods-space-4);border-top:1px solid var(--ods-border-default);background:var(--ods-surface-subtle);flex-shrink:0}.ods-data-mapper__footer-status{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-sm);min-width:0}.ods-data-mapper__footer-ok{display:inline-flex;align-items:center;gap:var(--ods-space-1);color:var(--ods-status-success-fg);font-weight:500}.ods-data-mapper__footer-ok>svg{color:var(--ods-status-success);flex-shrink:0}.ods-data-mapper__footer-warn{display:inline-flex;align-items:center;gap:var(--ods-space-1);color:var(--ods-status-pending-fg);font-weight:500}.ods-data-mapper__footer-warn-dot{display:inline-block;width:6px;height:6px;border-radius:var(--ods-radius-pill);background:var(--ods-status-pending);flex-shrink:0}.ods-data-mapper__footer-muted{color:var(--ods-text-tertiary);font-style:italic}.ods-data-mapper__footer-actions{display:inline-flex;align-items:center;gap:var(--ods-space-2);flex-shrink:0}.ods-data-mapper__footer-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;margin-left:var(--ods-space-1);background:hsla(0,0%,100%,.18);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;font-weight:700;color:inherit}.ods-flow-canvas{position:relative;width:100%;height:100%;background:var(--ods-surface-dag-canvas);cursor:grab;touch-action:none;transition:outline var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}.ods-flow-canvas--panning{cursor:grabbing}.ods-flow-canvas--space-panning{cursor:grab}.ods-flow-canvas--space-panning .ods-flow-node{cursor:grab}.ods-flow-canvas [data-canvas-overlay]{cursor:default}[data-dragging=true][data-over-canvas=true] .ods-flow-canvas{outline:2px solid var(--ods-status-success);outline-offset:-2px}[data-dragging=true][data-over-canvas=false] .ods-flow-canvas{outline:2px solid var(--ods-status-failed);outline-offset:-2px}.ods-flow-canvas__grid{position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(to right, var(--ods-border-soft) 1px, transparent 1px),linear-gradient(to bottom, var(--ods-border-soft) 1px, transparent 1px);background-size:20px 20px;background-position:0 0;pointer-events:none}.ods-flow-canvas__viewport{position:absolute;inset:0;overflow:hidden}.ods-flow-canvas__content{position:absolute;top:0;left:0;width:100%;height:100%;cursor:inherit;transform-origin:0 0}.ods-flow-canvas__toolbar{position:absolute;top:var(--ods-space-3);left:var(--ods-space-3);display:flex;flex-direction:column;align-items:center;gap:0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);z-index:10;overflow:hidden}.ods-flow-canvas__toolbar-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:rgba(0,0,0,0);border:none;color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));position:relative}.ods-flow-canvas__toolbar-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-flow-canvas__toolbar-btn:active{background:var(--ods-surface-sunken)}.ods-flow-canvas__toolbar-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-flow-canvas__toolbar-btn svg{flex-shrink:0}.ods-flow-canvas__toolbar-divider{width:20px;height:1px;background:var(--ods-border-default);margin:var(--ods-space-1) 0}.ods-flow-canvas__toolbar-btn-wrapper{position:relative}.ods-flow-canvas__toolbar-btn-wrapper::after{content:attr(data-tooltip);position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);padding:var(--ods-space-1) var(--ods-space-2);background:var(--ods-text-primary);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500;white-space:nowrap;border-radius:var(--ods-radius-1);opacity:0;pointer-events:none;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));z-index:1000}.ods-flow-canvas__toolbar-btn-wrapper:hover::after{opacity:1}.ods-flow-canvas__toolbar-btn-wrapper--pulse .ods-flow-canvas__toolbar-btn{animation:lockPulse .6s ease-out}@keyframes lockPulse{0%{background:rgba(0,0,0,0);box-shadow:0 0 0 0 var(--ods-status-failed-bd)}50%{background:var(--ods-status-failed-bg);box-shadow:0 0 0 6px rgba(0,0,0,0)}100%{background:rgba(0,0,0,0);box-shadow:0 0 0 0 rgba(0,0,0,0)}}.ods-flow-canvas__toolbar-zoom{display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums;font-size:var(--ods-font-size-xs);font-weight:500}.ods-flow-canvas__empty{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);display:flex;flex-direction:column;align-items:center;gap:var(--ods-space-3);text-align:center;color:var(--ods-text-tertiary);pointer-events:none;font-family:var(--ods-font-family-sans)}.ods-flow-canvas__empty svg{color:var(--ods-text-disabled)}.ods-flow-canvas__empty h3{font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);margin:0}.ods-flow-canvas__empty p{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);margin:0}.ods-flow-canvas__drag-preview{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-3);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);cursor:grabbing;pointer-events:none;font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary)}.ods-flow-canvas__drag-preview-icon{display:flex;align-items:center;justify-content:center;color:var(--ods-text-primary)}.ods-flow-node{position:absolute;width:368px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);cursor:grab;user-select:none;box-shadow:0 2px 8px rgba(0,0,0,.2);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary);overflow:visible;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}.ods-flow-node:hover{border-color:var(--ods-border-strong)}.ods-flow-node--dragging{opacity:.85;cursor:grabbing;box-shadow:var(--ods-shadow-pop)}.ods-flow-node--config-open{border-color:var(--ods-border-focus);background:var(--ods-accent-soft)}.ods-flow-node__status{position:absolute;top:var(--ods-spacing-03);right:var(--ods-spacing-03);display:flex;align-items:center;justify-content:center;padding:2px 4px;border-radius:2px;color:var(--ods-color-support-warning)}.ods-flow-node__status svg{flex-shrink:0}.ods-flow-node__status--valid{color:var(--ods-color-support-success)}.ods-flow-node__status--warning{color:var(--ods-color-support-warning)}.ods-flow-node__status--error{color:var(--ods-color-support-error)}.ods-flow-node__status--unconfigured{color:var(--ods-color-text-secondary)}.ods-flow-node__header{position:absolute;top:-18px;left:0;display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:96px;max-width:220px;height:18px;padding:0 8px;background:var(--ods-status-success, #16a34a);cursor:grab;color:var(--ods-text-on-color, #ffffff);font:var(--ods-font-label_01);font-weight:600;font-size:11px;line-height:1;white-space:nowrap;overflow:hidden}.ods-flow-node__header:active{cursor:grabbing}.ods-flow-node__header-left{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.ods-flow-node__header-right{display:flex;align-items:center;gap:4px;flex-shrink:0}.ods-flow-node__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--ods-color-text-on-color)}.ods-flow-node__icon svg{width:12px;height:12px;shape-rendering:crispEdges;vector-effect:non-scaling-stroke;image-rendering:crisp-edges;-webkit-backface-visibility:hidden;backface-visibility:hidden}.ods-flow-node__title{flex:1;min-width:0;display:flex;align-items:center;gap:4px}.ods-flow-node__label{font:var(--ods-font-label_01);font-weight:600;color:var(--ods-color-text-on-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;line-height:1}.ods-flow-node__action-btn{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:rgba(0,0,0,0);border:none;color:var(--ods-color-text-on-color);cursor:pointer;transition:all .15s ease;opacity:.8}.ods-flow-node__action-btn:hover{opacity:1;transform:scale(1.1)}.ods-flow-node__action-btn:active{transform:scale(0.95)}.ods-flow-node__action-btn svg{width:14px;height:14px}.ods-flow-node__delete-btn{position:absolute;bottom:var(--ods-spacing-03);right:var(--ods-spacing-03);display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:rgba(0,0,0,0);border:none;color:var(--ods-color-icon-secondary);cursor:pointer;transition:all .15s ease;opacity:.6;z-index:2}.ods-flow-node__delete-btn:hover{opacity:1;color:var(--ods-color-support-error);transform:scale(1.1)}.ods-flow-node__delete-btn:active{transform:scale(0.95)}.ods-flow-node__delete-btn svg{width:16px;height:16px}.ods-flow-node__badge{display:none}.ods-flow-node__actions{display:none}.ods-flow-node__body{position:relative;padding:var(--ods-spacing-05);min-height:108px;display:flex;flex-direction:column;gap:var(--ods-spacing-04);overflow:hidden}.ods-flow-node__content{display:flex;align-items:flex-start;gap:var(--ods-spacing-04);margin-bottom:var(--ods-spacing-04)}.ods-flow-node__content-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--ods-color-background-secondary);border-radius:50%;color:var(--ods-color-text-primary)}.ods-flow-node__content-icon svg{shape-rendering:crispEdges;vector-effect:non-scaling-stroke;image-rendering:crisp-edges;-webkit-backface-visibility:hidden;backface-visibility:hidden}.ods-flow-node__content-text{flex:1;min-width:0}.ods-flow-node__content-title{font:var(--ods-font-heading_compact_01);font-weight:600;color:var(--ods-color-text-primary);margin-bottom:4px}.ods-flow-node__content-subtitle{font:var(--ods-font-label_01);color:var(--ods-color-text-secondary);margin-bottom:4px}.ods-flow-node__content-info{font:var(--ods-font-label_01);color:var(--ods-color-text-primary);display:flex;align-items:center;gap:4px}.ods-flow-node__content-info svg{width:14px;height:14px}.ods-flow-node__description{font:var(--ods-font-body_compact_01);color:var(--ods-color-text-secondary);font-size:12px;line-height:1.4}.ods-flow-node__validation{display:flex;align-items:center;gap:var(--ods-spacing-02);padding:var(--ods-spacing-03);background:var(--ods-color-support-warning) -inverse;color:var(--ods-color-text-primary);border-radius:2px;font:var(--ods-font-label_01)}.ods-flow-node__validation svg{flex-shrink:0;fill:var(--ods-color-support-warning)}.ods-flow-node__ports{position:absolute;display:flex;justify-content:center;align-items:center;gap:var(--ods-spacing-03)}.ods-flow-node__ports--input{left:50%;top:-8px;transform:translateX(-50%)}.ods-flow-node__ports--output{left:50%;bottom:-8px;transform:translateX(-50%)}.ods-flow-node__ports--branching{gap:var(--ods-spacing-06);bottom:-10px}.ods-flow-node__port-label{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);font-family:var(--ods-font-family-mono);font-size:9px;font-weight:600;letter-spacing:var(--ods-tracking-mono);white-space:nowrap;color:var(--ods-text-tertiary);pointer-events:none;margin-bottom:2px;text-transform:uppercase}.ods-flow-node__port{position:relative;width:16px;height:16px;cursor:crosshair}.ods-flow-node__port--labeled{display:flex;flex-direction:column;align-items:center;width:auto;min-width:16px}.ods-flow-node__port--connecting .ods-flow-node__port-dot{background:var(--ods-status-success);border-color:var(--ods-status-success);transform:scale(1.3);box-shadow:0 0 0 3px var(--ods-status-success-bd);animation:pulse 1s ease-in-out infinite}.ods-flow-node__port--connectable .ods-flow-node__port-dot{background:var(--ods-status-success);border-color:var(--ods-status-success);transform:scale(1.3);box-shadow:0 0 0 3px var(--ods-status-success-bd);animation:pulse 1s ease-in-out infinite}.ods-flow-node__port--invalid{cursor:not-allowed}.ods-flow-node__port--invalid .ods-flow-node__port-dot{background:var(--ods-status-failed);border-color:var(--ods-status-failed);transform:scale(1.2);box-shadow:0 0 0 3px var(--ods-status-failed-bd)}@keyframes pulse{0%,100%{transform:scale(1.3)}50%{transform:scale(1.5)}}.ods-flow-node__port-dot{width:12px;height:12px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);transition:all .2s ease;box-shadow:none;margin:2px}.ods-flow-node__port:hover .ods-flow-node__port-dot{background:#161a21;border-color:#6f7785;box-shadow:0 0 0 2px rgba(15,98,254,.35)}.ods-flow-node__port--connected .ods-flow-node__port-dot{background:#0f1118;border-color:#8ab6ff}.ods-flow-node__ports--input .ods-flow-node__port-dot{background:#0f1118;border-color:#3b4049;box-shadow:none}.ods-flow-node__ports--output .ods-flow-node__port-dot{background:#0f1118;border-color:#3b4049;box-shadow:none}.ods-flow-node__port--edge-selected .ods-flow-node__port-dot{border-color:var(--ods-accent);box-shadow:0 0 0 2px var(--ods-accent-border);animation:port-pulse 1.2s ease-in-out infinite}@keyframes port-pulse{0%{box-shadow:0 0 0 2px var(--ods-accent-border)}50%{box-shadow:0 0 0 6px var(--ods-accent-soft)}100%{box-shadow:0 0 0 2px var(--ods-accent-border)}}.ods-flow-node__running-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:var(--ods-surface-canvas);opacity:.9;border-radius:var(--ods-radius-2);color:var(--ods-accent)}.ods-flow-node__running-overlay svg{animation:rotate 1s linear infinite}@keyframes rotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.ods-flow-edge{cursor:pointer;shape-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ods-flow-edge__hitbox{cursor:pointer}.ods-flow-edge__path{transition:stroke-width var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));vector-effect:non-scaling-stroke;stroke:var(--ods-border-strong);stroke-width:1}.ods-flow-edge__path--selected{stroke:var(--ods-accent) !important;stroke-width:2 !important}.ods-flow-edge__path--active{stroke:var(--ods-accent);stroke-width:1.5}.ods-flow-edge__arrow{vector-effect:non-scaling-stroke;fill:var(--ods-border-strong);transition:fill var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-flow-edge__handle{fill:var(--ods-surface-canvas);stroke:var(--ods-border-strong);stroke-width:1;vector-effect:non-scaling-stroke;transition:fill var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),stroke var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-flow-edge__handle:hover{fill:var(--ods-accent-soft);stroke:var(--ods-accent)}.ods-flow-edge__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:500;letter-spacing:var(--ods-tracking-mono);fill:var(--ods-text-tertiary);pointer-events:none;user-select:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ods-flow-edge__delete{cursor:pointer;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-flow-edge__delete:hover{transform:scale(1.1)}.ods-flow-edge__delete:active{transform:scale(0.95)}.ods-flow-edge__delete-bg{fill:var(--ods-surface-canvas);stroke:var(--ods-border-default);stroke-width:1;transition:fill var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-flow-edge__delete:hover .ods-flow-edge__delete-bg{fill:var(--ods-status-failed);stroke:var(--ods-status-failed)}.ods-flow-edge__delete-icon{pointer-events:none;user-select:none;fill:var(--ods-text-tertiary)}.ods-flow-edge__delete:hover .ods-flow-edge__delete-icon{fill:var(--ods-surface-canvas)}.ods-flow-minimap{position:absolute;bottom:var(--ods-space-3);right:var(--ods-space-3);width:140px;height:100px;border-radius:var(--ods-radius-1);overflow:hidden;cursor:pointer;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);box-shadow:var(--ods-shadow-pop)}.ods-flow-minimap svg{display:block;width:100%;height:100%}.ods-flow-minimap__node{fill:var(--ods-border-strong);opacity:.85;transition:opacity var(--ods-duration-fast, 120ms) ease}.ods-flow-minimap__edge{stroke:var(--ods-border-default);stroke-width:1;opacity:.65}.ods-flow-minimap__viewport{fill:color-mix(in srgb, var(--ods-accent, #2563eb) 14%, transparent);stroke:var(--ods-accent);stroke-width:1.5;pointer-events:all;transition:fill var(--ods-duration-fast, 120ms) ease}.ods-flow-minimap--dragging{cursor:grabbing}.ods-flow-minimap--dragging .ods-flow-minimap__viewport{fill:color-mix(in srgb, var(--ods-accent, #2563eb) 28%, transparent);cursor:grabbing !important}.ods-flow-toolbar{position:absolute;display:inline-flex;align-items:center;gap:1px;padding:2px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);z-index:50;overflow:visible}.ods-flow-toolbar--left{top:var(--ods-space-3);left:var(--ods-space-3);flex-direction:column}.ods-flow-toolbar--right{top:var(--ods-space-3);right:var(--ods-space-3);flex-direction:column}.ods-flow-toolbar--top{top:var(--ods-space-3);left:50%;transform:translateX(-50%);flex-direction:row}.ods-flow-toolbar--bottom{bottom:var(--ods-space-3);left:50%;transform:translateX(-50%);flex-direction:row}.ods-flow-toolbar__btn-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center}.ods-flow-toolbar__btn-wrapper[data-tooltip]::after{content:attr(data-tooltip);position:absolute;background:var(--ods-text-primary);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-xs);font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));z-index:9999;will-change:opacity}.ods-flow-toolbar__btn-wrapper[data-tooltip]::before{content:"";position:absolute;border:4px solid rgba(0,0,0,0);opacity:0;pointer-events:none;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));z-index:9999}.ods-flow-toolbar__btn-wrapper[data-tooltip]:hover::after,.ods-flow-toolbar__btn-wrapper[data-tooltip]:hover::before{opacity:1}.ods-flow-toolbar--left .ods-flow-toolbar__btn-wrapper[data-tooltip]::after{left:calc(100% + 8px);top:50%;transform:translateY(-50%)}.ods-flow-toolbar--left .ods-flow-toolbar__btn-wrapper[data-tooltip]::before{left:calc(100% + 2px);top:50%;transform:translateY(-50%);border-right-color:var(--ods-text-primary)}.ods-flow-toolbar--right .ods-flow-toolbar__btn-wrapper[data-tooltip]::after{right:calc(100% + 8px);top:50%;transform:translateY(-50%)}.ods-flow-toolbar--right .ods-flow-toolbar__btn-wrapper[data-tooltip]::before{right:calc(100% + 2px);top:50%;transform:translateY(-50%);border-left-color:var(--ods-text-primary)}.ods-flow-toolbar--top .ods-flow-toolbar__btn-wrapper[data-tooltip]::after{top:calc(100% + 8px);left:50%;transform:translateX(-50%)}.ods-flow-toolbar--top .ods-flow-toolbar__btn-wrapper[data-tooltip]::before{top:calc(100% + 2px);left:50%;transform:translateX(-50%);border-bottom-color:var(--ods-text-primary)}.ods-flow-toolbar--bottom .ods-flow-toolbar__btn-wrapper[data-tooltip]::after{bottom:calc(100% + 8px);left:50%;transform:translateX(-50%)}.ods-flow-toolbar--bottom .ods-flow-toolbar__btn-wrapper[data-tooltip]::before{bottom:calc(100% + 2px);left:50%;transform:translateX(-50%);border-top-color:var(--ods-text-primary)}.ods-flow-toolbar__btn{display:inline-flex;align-items:center;justify-content:center;width:var(--ods-layout-control-height);height:var(--ods-layout-control-height);padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-flow-toolbar__btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-flow-toolbar__btn:active:not(:disabled){background:var(--ods-surface-sunken)}.ods-flow-toolbar__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-flow-toolbar__btn:disabled{opacity:.4;cursor:not-allowed}.ods-flow-toolbar__btn--active{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-flow-toolbar__btn--active:hover{background:var(--ods-accent-border)}.ods-flow-toolbar__btn--danger:hover{background:var(--ods-status-failed-bg);color:var(--ods-status-failed)}.ods-flow-toolbar__btn-icon{display:inline-flex;align-items:center;justify-content:center}.ods-flow-toolbar__btn-icon svg{display:block}.ods-flow-toolbar__btn-label{margin-left:var(--ods-space-1);padding-right:var(--ods-space-2);font-size:var(--ods-font-size-xs);font-weight:500;font-family:var(--ods-font-family-sans);color:inherit;white-space:nowrap}.ods-flow-toolbar__btn-wrapper:has(.ods-flow-toolbar__btn-label) .ods-flow-toolbar__btn{width:auto;padding:0 var(--ods-space-2)}.ods-flow-toolbar__btn--save-saving{color:var(--ods-status-running, var(--ods-accent, #2563eb));cursor:progress}.ods-flow-toolbar__btn--save-success{color:var(--ods-status-success, #16a34a)}.ods-flow-toolbar__btn--save-error{background:var(--ods-status-failed-bg, rgba(218, 30, 40, 0.08));color:var(--ods-status-failed, #da1e28)}.ods-flow-toolbar__btn--save-error:hover{background:var(--ods-status-failed-bg, rgba(218, 30, 40, 0.12))}.ods-flow-toolbar__divider{background:var(--ods-border-default);align-self:stretch}.ods-flow-toolbar--top .ods-flow-toolbar__divider,.ods-flow-toolbar--bottom .ods-flow-toolbar__divider{width:1px;height:auto;margin:var(--ods-space-1) 2px}.ods-flow-toolbar--left .ods-flow-toolbar__divider,.ods-flow-toolbar--right .ods-flow-toolbar__divider{width:auto;height:1px;margin:2px var(--ods-space-1)}.ods-flow-toolbar__zoom{display:inline-flex;align-items:center;gap:2px}.ods-flow-toolbar--left .ods-flow-toolbar__zoom,.ods-flow-toolbar--right .ods-flow-toolbar__zoom{flex-direction:column}.ods-flow-toolbar__zoom-label{display:inline-flex;align-items:center;justify-content:center;width:var(--ods-layout-control-height);height:var(--ods-layout-control-height);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;font-variant-numeric:tabular-nums lining-nums;letter-spacing:-0.02em;user-select:none}.ods-workflow-editor{position:relative;display:flex;font-family:var(--ods-font-family-sans);background:rgba(0,0,0,0)}.ods-workflow-editor__drawer{flex-shrink:0;height:100%;border-right:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);overflow:hidden;display:flex;flex-direction:column}.ods-workflow-editor__canvas-wrapper{position:relative;flex:1;min-width:0;height:100%}.ods-workflow-editor__minimap{position:absolute;right:var(--ods-space-3);bottom:var(--ods-space-3);z-index:40}.ods-workflow-editor__console{position:absolute;left:var(--ods-space-3);right:var(--ods-space-3);bottom:var(--ods-space-3);z-index:45;pointer-events:auto}.ods-workflow-header{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-4);background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-default);position:relative;flex-shrink:0;font-family:var(--ods-font-family-sans);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04)}.ods-workflow-header--md{height:var(--ods-layout-topbar-height);min-height:var(--ods-layout-topbar-height);padding:0 var(--ods-space-4)}.ods-workflow-header--sm{height:36px;min-height:36px;padding:0 var(--ods-space-3);gap:var(--ods-space-3)}.ods-workflow-header--sm .ods-workflow-header__left{gap:var(--ods-space-1)}.ods-workflow-header--sm .ods-workflow-header__right{gap:var(--ods-space-1)}.ods-workflow-header--sm .ods-workflow-header__title{font-size:var(--ods-font-size-sm)}.ods-workflow-header--sm .ods-workflow-header__status-dot{width:6px;height:6px}.ods-workflow-header--sm .ods-workflow-header__back{font-size:var(--ods-font-size-xs);padding:2px 4px}.ods-workflow-header__left{display:flex;align-items:center;gap:var(--ods-space-2);min-width:0}.ods-workflow-header__back{display:inline-flex;align-items:center;gap:2px;padding:4px 6px;margin:0;background:rgba(0,0,0,0);border:0;cursor:pointer;color:var(--ods-text-tertiary);font-family:inherit;font-size:var(--ods-font-size-sm);line-height:1;border-radius:var(--ods-radius-1);transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-workflow-header__back:hover{color:var(--ods-text-body);background:var(--ods-surface-muted)}.ods-workflow-header__back:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-workflow-header__back-label{display:inline-block}.ods-workflow-header__back-separator{display:inline-block;margin-left:4px;color:var(--ods-text-tertiary);opacity:.55}.ods-workflow-header__status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--ods-text-tertiary)}.ods-workflow-header__status-dot--draft{background:var(--ods-text-tertiary)}.ods-workflow-header__status-dot--active{background:var(--ods-status-success)}.ods-workflow-header__status-dot--paused{background:var(--ods-status-pending)}.ods-workflow-header__status-dot--error{background:var(--ods-status-failed)}.ods-workflow-header__status-dot--running{background:var(--ods-status-running);animation:ods-workflow-header-pulse 2s ease-in-out infinite}@keyframes ods-workflow-header-pulse{0%,100%{opacity:1}50%{opacity:.55}}@media(prefers-reduced-motion: reduce){.ods-workflow-header__status-dot--running{animation:none}}.ods-workflow-header__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;line-height:1.25;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-tight, -0.01em);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.ods-workflow-header__sep{display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--ods-border-default);opacity:.5;flex-shrink:0;margin:0 2px}.ods-workflow-header__save{display:inline-flex;align-items:center;font-size:var(--ods-font-size-sm);line-height:1.3;white-space:nowrap;user-select:none;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-workflow-header__save--muted{color:var(--ods-text-tertiary)}.ods-workflow-header__save--saving{color:var(--ods-text-tertiary);animation:ods-workflow-header-breathe 1.6s ease-in-out infinite}.ods-workflow-header__save--error{color:var(--ods-status-failed)}@keyframes ods-workflow-header-breathe{0%,100%{opacity:1}50%{opacity:.6}}@media(prefers-reduced-motion: reduce){.ods-workflow-header__save--saving{animation:none}}.ods-workflow-header--sm .ods-workflow-header__save{font-size:var(--ods-font-size-xs)}.ods-workflow-header__right{display:flex;align-items:center;gap:var(--ods-space-2)}.ods-workflow-header__micro-divider{display:inline-block;width:1px;height:14px;background:var(--ods-border-default);opacity:.6;margin:0 var(--ods-space-1);flex-shrink:0}.ods-workflow-header--sm .ods-workflow-header__micro-divider{height:12px}.ods-workflow-header__stop-glyph{color:var(--ods-status-failed)}.ods-workflow-header__stop-label{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-workflow-header__stop-dot{color:var(--ods-text-tertiary);opacity:.6}.ods-workflow-header__runtime{font-variant-numeric:tabular-nums;font-family:var(--ods-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--ods-font-size-xs);color:var(--ods-text-body);letter-spacing:0}.ods-workflow-header__env{border-left-width:3px;border-left-style:solid;border-left-color:var(--ods-border-default);border-top-left-radius:2px;border-bottom-left-radius:2px}.ods-workflow-header__progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;opacity:0;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));background:linear-gradient(90deg, transparent 0%, var(--ods-status-running) 50%, transparent 100%);background-size:200% 100%;background-position:100% 0}.ods-workflow-header[data-running=true] .ods-workflow-header__progress{opacity:.9;animation:ods-workflow-header-progress 1.4s linear infinite}@keyframes ods-workflow-header-progress{0%{background-position:100% 0}100%{background-position:-100% 0}}@media(prefers-reduced-motion: reduce){.ods-workflow-header[data-running=true] .ods-workflow-header__progress{animation:none;background:var(--ods-status-running);opacity:.4}}.ods-workflow-header__menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-workflow-header__menu-trigger:hover,.ods-workflow-header__menu-trigger:focus-visible{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-workflow-header__menu-trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-workflow-header__menu-trigger[aria-expanded=true]{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-workflow-header__menu-icon{display:inline-flex;align-items:center;justify-content:center}.ods-workflow-header-expanded{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-default);position:relative;flex-shrink:0;font-family:var(--ods-font-family-sans);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04)}.ods-workflow-header-expanded__row{display:flex;align-items:center;justify-content:space-between;padding:0 var(--ods-space-4)}.ods-workflow-header-expanded__row--top{height:40px;gap:var(--ods-space-4)}.ods-workflow-header-expanded__row--bottom{height:24px;border-top:1px solid var(--ods-border-default);background:var(--ods-surface-muted)}.ods-workflow-header-expanded__left{display:flex;align-items:center;gap:var(--ods-space-2);min-width:0}.ods-workflow-header-expanded__right{display:flex;align-items:center;gap:var(--ods-space-2)}.ods-workflow-header-expanded__back{display:inline-flex;align-items:center;gap:2px;padding:4px 6px;margin:0;background:rgba(0,0,0,0);border:0;cursor:pointer;color:var(--ods-text-tertiary);font-family:inherit;font-size:var(--ods-font-size-sm);line-height:1;border-radius:var(--ods-radius-1);transition:color 120ms cubic-bezier(0.16, 1, 0.3, 1),background 120ms cubic-bezier(0.16, 1, 0.3, 1)}.ods-workflow-header-expanded__back:hover{color:var(--ods-text-body);background:var(--ods-surface-muted)}.ods-workflow-header-expanded__back-sep{margin-left:4px;color:var(--ods-text-tertiary);opacity:.55}.ods-workflow-header-expanded__dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--ods-text-tertiary)}.ods-workflow-header-expanded__dot--active{background:var(--ods-status-success)}.ods-workflow-header-expanded__dot--paused{background:var(--ods-status-pending)}.ods-workflow-header-expanded__dot--error{background:var(--ods-status-failed)}.ods-workflow-header-expanded__dot--running{background:var(--ods-status-running);animation:ods-workflow-header-expanded-pulse 2s ease-in-out infinite}@keyframes ods-workflow-header-expanded-pulse{0%,100%{opacity:1}50%{opacity:.55}}.ods-workflow-header-expanded__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;line-height:1.25;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-tight, -0.01em);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px}.ods-workflow-header-expanded__meta{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);font-variant-numeric:tabular-nums}.ods-workflow-header-expanded__save--error{color:var(--ods-status-failed)}.ods-workflow-header-expanded__micro-divider{display:inline-block;width:1px;height:14px;background:var(--ods-border-default);opacity:.6;margin:0 var(--ods-space-1)}.ods-workflow-header-expanded__stop-glyph{color:var(--ods-status-failed)}.ods-workflow-header-expanded__runtime{font-variant-numeric:tabular-nums;font-family:var(--ods-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--ods-font-size-xs)}.ods-workflow-header-expanded__env{border-left-width:3px;border-left-style:solid;border-left-color:var(--ods-border-default);border-top-left-radius:2px;border-bottom-left-radius:2px}.ods-workflow-header-expanded__progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;opacity:0;background:linear-gradient(90deg, transparent 0%, var(--ods-status-running) 50%, transparent 100%);background-size:200% 100%;background-position:100% 0;transition:opacity 120ms cubic-bezier(0.16, 1, 0.3, 1)}.ods-workflow-header-expanded[data-running=true] .ods-workflow-header-expanded__progress{opacity:.9;animation:ods-workflow-header-expanded-progress 1.4s linear infinite}@keyframes ods-workflow-header-expanded-progress{0%{background-position:100% 0}100%{background-position:-100% 0}}.ods-actions-drawer{display:flex;flex-direction:column;height:100%;background:var(--ods-surface-canvas);border-right:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans);color:var(--ods-text-body);-webkit-font-smoothing:antialiased}.ods-actions-drawer--closed{width:36px;min-width:36px;align-items:center;justify-content:flex-start;padding-top:var(--ods-space-3)}.ods-actions-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-3) var(--ods-space-2);border-bottom:1px solid var(--ods-border-default)}.ods-actions-drawer__heading{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-actions-drawer__title{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-tight, -0.01em)}.ods-actions-drawer__description{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-actions-drawer__close-btn,.ods-actions-drawer__open-btn{appearance:none;background:rgba(0,0,0,0);border:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-actions-drawer__close-btn:hover,.ods-actions-drawer__open-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-actions-drawer__close-btn:focus-visible,.ods-actions-drawer__open-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-actions-drawer__search{position:relative;padding:var(--ods-space-2) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default)}.ods-actions-drawer__search-icon{position:absolute;left:calc(var(--ods-space-3) + 8px);top:50%;transform:translateY(-50%);color:var(--ods-text-tertiary);pointer-events:none;display:inline-flex}.ods-actions-drawer__search-input{width:100%;height:28px;padding:0 var(--ods-space-3) 0 28px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-actions-drawer__search-input::placeholder{color:var(--ods-text-disabled)}.ods-actions-drawer__search-input:focus{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-actions-drawer__body{flex:1;overflow-y:auto;padding:var(--ods-space-2) 0}.ods-actions-drawer__empty{padding:var(--ods-space-5) var(--ods-space-4);text-align:center;color:var(--ods-text-tertiary)}.ods-actions-drawer__empty-title{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);margin-bottom:4px}.ods-actions-drawer__empty-hint{font-size:var(--ods-font-size-xs)}.ods-actions-drawer__group+.ods-actions-drawer__group{margin-top:var(--ods-space-2)}.ods-actions-drawer__group-header{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;padding:6px var(--ods-space-3);background:rgba(0,0,0,0);border:0;appearance:none;font-family:inherit;font-size:var(--ods-font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ods-text-tertiary);cursor:pointer;text-align:left}.ods-actions-drawer__group-header:hover{color:var(--ods-text-primary)}.ods-actions-drawer__group-header:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-actions-drawer__group-icon{flex:0 0 14px;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:inherit}.ods-actions-drawer__group-icon svg{width:100%;height:100%}.ods-actions-drawer__group-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-actions-drawer__group-count{font-weight:500;font-size:10px;color:var(--ods-text-tertiary);background:var(--ods-surface-muted);border-radius:999px;padding:1px 6px}.ods-actions-drawer__items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.ods-actions-drawer__item{position:relative;display:flex;align-items:flex-start;gap:var(--ods-space-2);padding:8px var(--ods-space-3);cursor:grab;border-left:2px solid rgba(0,0,0,0);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));user-select:none}.ods-actions-drawer__item:hover{background:var(--ods-surface-muted);border-left-color:var(--ods-accent)}.ods-actions-drawer__item:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px;background:var(--ods-surface-muted)}.ods-actions-drawer__item:active{cursor:grabbing}.ods-actions-drawer__item--disabled{opacity:.5;cursor:not-allowed}.ods-actions-drawer__item--disabled:hover{background:rgba(0,0,0,0);border-left-color:rgba(0,0,0,0)}.ods-actions-drawer__item--trigger{border-left-color:var(--ods-status-info, #2563eb)}.ods-actions-drawer__item--trigger .ods-actions-drawer__item-icon{color:var(--ods-status-info, #2563eb)}.ods-actions-drawer__item--action{border-left-color:var(--ods-text-primary, #161616)}.ods-actions-drawer__item--action .ods-actions-drawer__item-icon{color:var(--ods-text-primary)}.ods-actions-drawer__item--condition{border-left-color:var(--ods-status-warning, #d97706)}.ods-actions-drawer__item--condition .ods-actions-drawer__item-icon{color:var(--ods-status-warning, #d97706)}.ods-actions-drawer__item--transform{border-left-color:var(--ods-status-success, #16a34a)}.ods-actions-drawer__item--transform .ods-actions-drawer__item-icon{color:var(--ods-status-success, #16a34a)}.ods-actions-drawer__item-icon{flex:0 0 18px;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;margin-top:1px;color:var(--ods-text-tertiary)}.ods-actions-drawer__item-icon:empty::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ods-text-disabled, #c6c6c6)}.ods-actions-drawer__item-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ods-actions-drawer__item-label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-actions-drawer__item-description{font-size:11px;color:var(--ods-text-tertiary);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-actions-drawer__item-badge{flex:0 0 auto;font-size:10px;font-weight:600;color:var(--ods-accent);background:var(--ods-accent-soft, rgba(79, 70, 229, 0.08));padding:2px 6px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.ods-actions-drawer__footer{border-top:1px solid var(--ods-border-default);padding:var(--ods-space-2) var(--ods-space-3);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-config-panel{position:absolute;top:0;width:320px;height:100%;display:flex;flex-direction:column;z-index:20;background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary)}.ods-config-panel,.ods-config-panel--right{right:0;border-left:1px solid var(--ods-border-default)}.ods-config-panel--left{left:0;border-right:1px solid var(--ods-border-default)}.ods-config-panel__header{display:flex;align-items:center;justify-content:space-between;padding:0 var(--ods-space-4);height:var(--ods-layout-topbar-height);border-bottom:1px solid var(--ods-border-default)}.ods-config-panel__header-left{display:flex;align-items:center;gap:var(--ods-space-2);min-width:0}.ods-config-panel__icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;min-width:24px;border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-config-panel__icon svg{width:14px;height:14px}.ods-config-panel__title{font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-md);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-config-panel__close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-config-panel__close>svg{width:14px;height:14px}.ods-config-panel__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-config-panel__close:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-config-panel__body{flex:1;overflow-y:auto;padding:var(--ods-space-4)}.ods-config-panel__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-4);border-top:1px solid var(--ods-border-default)}.ods-config-panel__btn{height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-md);font-weight:500;cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-config-panel__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-config-panel__btn--cancel{background:var(--ods-surface-canvas);color:var(--ods-text-primary);border-color:var(--ods-border-strong)}.ods-config-panel__btn--cancel:hover{background:var(--ods-surface-muted)}.ods-config-panel__btn--save{background:var(--ods-accent);color:var(--ods-surface-canvas);border-color:var(--ods-accent)}.ods-config-panel__btn--save:hover{background:var(--ods-accent-hover);border-color:var(--ods-accent-hover)}@keyframes ods-console-pulse{0%,100%{opacity:1}50%{opacity:.4}}.ods-console{display:flex;flex-direction:column;overflow:hidden;border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-console__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);height:var(--ods-layout-row-height);padding:0 var(--ods-space-3);cursor:pointer;border-bottom:1px solid var(--ods-border-default);background:var(--ods-surface-subtle)}.ods-console__toggle{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-console__toggle:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-console__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-primary);display:flex;align-items:center;gap:var(--ods-space-2)}.ods-console__status{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:0 var(--ods-space-2);height:18px;border-radius:var(--ods-radius-1);background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1;border:1px solid var(--ods-status-running-bd)}.ods-console__status-dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background-color:var(--ods-status-running);animation:ods-console-pulse 1.2s ease-in-out infinite;flex-shrink:0}.ods-console__status-text{white-space:nowrap}.ods-console__count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-left:auto}.ods-console__actions{display:flex;align-items:center;gap:1px}.ods-console__action{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-console__action:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-console__action:active{background:var(--ods-surface-sunken)}.ods-console__action:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-console__action svg{display:block}.ods-console__action--stop{background:var(--ods-status-failed);color:var(--ods-surface-canvas)}.ods-console__action--stop:hover{background:var(--ods-status-failed-fg);color:var(--ods-surface-canvas)}.ods-console__action-separator{display:inline-block;width:1px;height:14px;margin:0 var(--ods-space-1);background:var(--ods-border-default)}.ods-console__logs{flex:1;overflow-y:auto;padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);line-height:1.6;color:var(--ods-text-body)}.ods-console__empty{padding:var(--ods-space-4);text-align:center;color:var(--ods-text-tertiary);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm)}.ods-console__line{display:flex;gap:var(--ods-space-2);padding:1px var(--ods-space-3);color:var(--ods-text-body);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-console__line:hover{background:var(--ods-surface-muted)}.ods-console__line--error{background:var(--ods-status-failed-bg)}.ods-console__line--warn{background:var(--ods-status-pending-bg)}.ods-console__timestamp{color:var(--ods-text-tertiary);white-space:nowrap;min-width:64px}.ods-console__level{font-weight:600;white-space:nowrap;min-width:48px;text-transform:uppercase}.ods-console__level--info{color:var(--ods-status-running-fg)}.ods-console__level--warn{color:var(--ods-status-pending-fg)}.ods-console__level--error{color:var(--ods-status-failed-fg)}.ods-console__level--debug{color:var(--ods-text-tertiary)}.ods-console__level--success{color:var(--ods-status-success-fg)}.ods-console__message{flex:1;word-break:break-all;color:var(--ods-text-primary)}.ods-console__filters{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);flex-wrap:wrap}.ods-console__search{position:relative;flex:1;min-width:180px;max-width:320px}.ods-console__search-icon{position:absolute;left:8px;top:50%;transform:translateY(-50%);color:var(--ods-text-tertiary);display:inline-flex;pointer-events:none}.ods-console__search-input{width:100%;height:24px;padding:0 var(--ods-space-2) 0 26px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);color:var(--ods-text-primary)}.ods-console__search-input::placeholder{color:var(--ods-text-disabled)}.ods-console__search-input:focus{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-console__level-chips{display:inline-flex;align-items:center;gap:4px}.ods-console__chip{appearance:none;display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 var(--ods-space-2);border:1px solid var(--ods-border-default);border-radius:999px;background:var(--ods-surface-canvas);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-sans);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:all var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-console__chip:hover{color:var(--ods-text-primary)}.ods-console__chip:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-console__chip--active{color:var(--ods-text-primary);border-color:var(--ods-border-strong);background:var(--ods-surface-muted)}.ods-console__chip--info.ods-console__chip--active{border-color:var(--ods-status-running-bd, currentColor)}.ods-console__chip--warn.ods-console__chip--active{border-color:var(--ods-status-pending-bd, currentColor);color:var(--ods-status-pending-fg)}.ods-console__chip--error.ods-console__chip--active{border-color:var(--ods-status-failed-bd, currentColor);color:var(--ods-status-failed-fg)}.ods-console__chip--success.ods-console__chip--active{border-color:var(--ods-status-success-bd, currentColor);color:var(--ods-status-success-fg)}.ods-console__chip--debug.ods-console__chip--active{border-color:var(--ods-border-strong)}.ods-console__chip-count{font-variant-numeric:tabular-nums;color:var(--ods-text-tertiary)}.ods-console__node-select{height:22px;padding:0 var(--ods-space-2);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);color:var(--ods-text-primary);cursor:pointer}.ods-console__node-select:focus-visible{outline:2px solid var(--ods-border-focus)}.ods-console__autoscroll{display:inline-flex;align-items:center;gap:4px;font-family:var(--ods-font-family-sans);font-size:11px;color:var(--ods-text-tertiary);cursor:pointer;margin-left:auto}.ods-console__autoscroll input{margin:0}.ods-console__export-wrap{position:relative;display:inline-flex}.ods-console__export-menu{position:absolute;right:0;top:100%;z-index:10;margin-top:4px;min-width:160px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:0 4px 12px rgba(0,0,0,.08);padding:4px;display:flex;flex-direction:column}.ods-console__export-item{appearance:none;text-align:left;background:rgba(0,0,0,0);border:0;padding:6px 10px;border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);cursor:pointer}.ods-console__export-item:hover{background:var(--ods-surface-muted)}.ods-console__export-item:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-console__line{flex-direction:column;gap:0;padding:0}.ods-console__line-row{display:flex;gap:var(--ods-space-2);padding:1px var(--ods-space-3);align-items:baseline}.ods-console__line-toggle{flex:0 0 16px;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;appearance:none;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1)}.ods-console__line-toggle:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-console__line-toggle--placeholder{cursor:default;pointer-events:none}.ods-console__node-tag{display:inline-block;padding:0 6px;font-size:10px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;color:var(--ods-accent);background:var(--ods-accent-soft, rgba(79, 70, 229, 0.08));border-radius:999px;white-space:nowrap}.ods-console__detail{margin:0;padding:6px var(--ods-space-3) 6px 44px;background:var(--ods-surface-subtle);border-top:1px solid var(--ods-border-default);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1.45;color:var(--ods-text-body);white-space:pre-wrap;word-break:break-all}.ods-console__match{background:var(--ods-accent-soft, rgba(255, 235, 59, 0.4));color:inherit;border-radius:2px;padding:0 1px}.ods-flow-canvas-v2{background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);color:var(--ods-text-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:none}.ods-flow-canvas-v2__grid{position:absolute;inset:0;pointer-events:none;opacity:.55;background-size:var(--ods-flow-grid-size, 20px) var(--ods-flow-grid-size, 20px)}.ods-flow-canvas-v2__grid--dots{background-image:radial-gradient(circle, var(--ods-border-default) 1px, transparent 1px)}.ods-flow-canvas-v2__grid--lines{background-image:linear-gradient(to right, var(--ods-border-default) 1px, transparent 1px),linear-gradient(to bottom, var(--ods-border-default) 1px, transparent 1px);opacity:.45}.ods-flow-canvas-v2__grid--cross{background-image:linear-gradient(to right, var(--ods-border-default) 1px, transparent 1px),linear-gradient(to bottom, var(--ods-border-default) 1px, transparent 1px);background-size:var(--ods-flow-grid-size, 20px) var(--ods-flow-grid-size, 20px);opacity:.35}.ods-flow-canvas-v2__edges{position:absolute;inset:0;overflow:visible}.ods-flow-canvas-v2__empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-sm)}@keyframes ods-flow-edge-flow{from{stroke-dashoffset:20}to{stroke-dashoffset:0}}.ods-flow-node-v2{position:absolute;cursor:pointer;user-select:none;-webkit-user-select:none;overflow:visible}.ods-flow-node-v2--dragging{cursor:grabbing}.ods-flow-node-v2--dragging .ods-flow-base-node{box-shadow:0 8px 24px rgba(0,0,0,.4);opacity:.92}.ods-flow-node-v2--selected .ods-flow-base-node{border-color:var(--ods-accent, #4f46e5);box-shadow:0 0 0 1px var(--ods-accent, #4f46e5),0 4px 16px rgba(0,0,0,.3)}.ods-flow-handle{width:12px;height:12px;display:inline-flex;align-items:center;justify-content:center;cursor:crosshair;z-index:10;pointer-events:all}.ods-flow-handle::before{content:"";position:absolute;inset:-6px}@media(pointer: coarse){.ods-flow-handle::before{inset:-16px}}.ods-flow-handle--disabled{cursor:not-allowed;opacity:.4}.ods-flow-handle--side-left .ods-flow-handle__label,.ods-flow-handle--side-right .ods-flow-handle__label{display:none}.ods-flow-handle__dot{width:12px;height:12px;border-radius:50%;background:var(--ods-surface-default, #ffffff);border:1.5px solid var(--ods-border-strong, #8d8d8d);box-shadow:0 0 0 1px var(--ods-surface-default, #ffffff);transition:background-color 120ms ease-out,border-color 120ms ease-out,transform 120ms ease-out}.ods-flow-handle:hover .ods-flow-handle__dot,.ods-flow-node-v2--connecting .ods-flow-handle--target .ods-flow-handle__dot{background:var(--ods-accent, #4f46e5);border-color:var(--ods-accent, #4f46e5);transform:scale(1.2)}.ods-flow-handle__label{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);font-family:var(--ods-font-family-mono);font-size:9px;font-weight:600;letter-spacing:.04em;color:var(--ods-text-tertiary);text-transform:uppercase;white-space:nowrap;pointer-events:none}.ods-flow-base-node{position:relative;width:368px;background:var(--ods-surface-default, #ffffff);border:1px solid var(--ods-border-default, #e0e0e0);box-shadow:0 1px 2px rgba(0,0,0,.06),0 1px 1px rgba(0,0,0,.04);transition:box-shadow 200ms ease-out,border-color 200ms ease-out;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}.ods-flow-node-v2:hover .ods-flow-base-node{box-shadow:0 4px 16px rgba(0,0,0,.3)}.ods-flow-base-node--accent-blue{--node-accent: var(--ods-status-info, #2563eb)}.ods-flow-base-node--accent-violet{--node-accent: var(--ods-accent, #4f46e5)}.ods-flow-base-node--accent-amber{--node-accent: var(--ods-status-warning, #d97706)}.ods-flow-base-node--accent-green{--node-accent: var(--ods-status-success, #16a34a)}.ods-flow-base-node--accent-red{--node-accent: var(--ods-status-failed, #dc2626)}.ods-flow-base-node--accent-slate{--node-accent: var(--ods-border-strong, #6b7280)}.ods-flow-base-node__pill{position:absolute;top:-18px;left:0;display:inline-flex;align-items:center;width:max-content;max-width:50%;gap:4px;height:18px;padding:0 8px;background:var(--node-accent);color:var(--ods-text-on-color, #ffffff);font-size:11px;font-weight:600;line-height:1;white-space:nowrap;overflow:hidden}.ods-flow-base-node__pill-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;color:inherit}.ods-flow-base-node__pill-icon svg{width:12px;height:12px;shape-rendering:crispEdges}.ods-flow-base-node__pill-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:600}.ods-flow-base-node__pill-badge{flex:0 0 auto;margin-left:4px;padding:1px 4px;font-size:9px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;background:hsla(0,0%,100%,.22);border-radius:2px}.ods-flow-base-node__status{position:absolute;top:8px;right:8px;width:10px;height:10px;border-radius:50%;background:var(--ods-text-tertiary, #6f7785);pointer-events:none;z-index:2}.ods-flow-base-node__status--running{background:var(--ods-status-running, #2563eb);animation:ods-flow-status-pulse 1.2s ease-in-out infinite}.ods-flow-base-node__status--success{background:var(--ods-status-success, #16a34a)}.ods-flow-base-node__status--error{background:var(--ods-status-failed, #da1e28)}.ods-flow-base-node__status--warning{background:var(--ods-status-warning, #d97706)}@keyframes ods-flow-status-pulse{0%,100%{opacity:1}50%{opacity:.4}}.ods-flow-base-node__body{position:relative;padding:16px;min-height:108px;display:flex;flex-direction:column;gap:12px;overflow:hidden}.ods-flow-base-node__content{display:flex;align-items:flex-start;gap:12px}.ods-flow-base-node__bubble{flex:0 0 36px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--ods-surface-subtle, #f4f4f4);border-radius:50%;color:var(--ods-text-primary, #161616)}.ods-flow-base-node__bubble svg{width:18px;height:18px;shape-rendering:crispEdges}.ods-flow-base-node__content-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.ods-flow-base-node__content-title{font-size:16px;font-weight:700;color:var(--ods-text-primary, #161616);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-flow-base-node__content-info{display:flex;align-items:center;gap:6px;min-width:0}.ods-flow-base-node__chip{flex:0 0 auto;display:inline-flex;align-items:center;height:16px;padding:0 6px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ods-text-on-color, #ffffff);background:var(--node-accent, var(--ods-accent, #2563eb));border-radius:2px;line-height:1}.ods-flow-base-node__description{flex:1;min-width:0;font-size:12px;color:var(--ods-text-secondary, #525252);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-flow-base-node__value-chip{flex:0 0 auto;margin-left:auto;display:inline-flex;align-items:center;height:16px;max-width:60%;padding:0 6px;font-size:10px;font-weight:600;font-family:var(--ods-font-family-mono, ui-monospace, monospace);letter-spacing:.02em;color:var(--node-accent, var(--ods-accent, #2563eb));background:color-mix(in srgb, var(--node-accent, var(--ods-accent, #2563eb)) 12%, transparent);border:1px solid color-mix(in srgb, var(--node-accent, var(--ods-accent, #2563eb)) 30%, transparent);border-radius:2px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-flow-base-node__footer{margin-top:auto;padding-top:6px;border-top:1px solid var(--ods-border-default, #2a2e36);font-size:11px;color:var(--ods-text-tertiary, #8d8d8d)}.ods-flow-base-node__delete{position:absolute;right:8px;bottom:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;padding:0;background:rgba(0,0,0,0);border:0;border-radius:4px;color:var(--ods-text-tertiary, #8d8d8d);cursor:pointer;opacity:.6;transition:color 120ms ease,opacity 120ms ease,transform 120ms ease;z-index:2}.ods-flow-base-node__delete:hover,.ods-flow-base-node__delete:focus-visible{color:var(--ods-color-support-error, var(--ods-status-failed, #da1e28));opacity:1;transform:scale(1.1)}.ods-flow-base-node__delete:focus-visible{outline:2px solid var(--ods-border-focus, var(--ods-color-support-error, #da1e28));outline-offset:1px}.ods-flow-base-node__delete:active{transform:scale(0.95)}.ods-flow-group{position:relative;border:1.5px dashed var(--ods-border-strong);border-radius:4px;background:rgba(99,102,241,.03);overflow:visible}.ods-flow-group[data-disabled=true],.ods-flow-foreach[data-disabled=true]{opacity:.55;background-image:repeating-linear-gradient(45deg, transparent 0, transparent 6px, color-mix(in srgb, var(--ods-text-tertiary) 8%, transparent) 6px, color-mix(in srgb, var(--ods-text-tertiary) 8%, transparent) 8px)}.ods-flow-group__disabled-badge,.ods-flow-foreach__disabled-badge{margin-left:6px;padding:1px 6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ods-text-tertiary);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas)}.ods-flow-group__header{position:absolute;top:-10px;left:12px;display:inline-flex;align-items:center;gap:6px;padding:2px 10px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:999px;font-size:11px;font-weight:600;color:var(--ods-text-primary)}.ods-flow-group__chevron{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;background:rgba(0,0,0,0);border:0;color:var(--ods-text-tertiary);cursor:pointer;line-height:1;border-radius:2px;transition:background-color 120ms ease-out,color 120ms ease-out}.ods-flow-group__chevron:hover{background:var(--ods-surface-subtle, rgba(0, 0, 0, 0.06));color:var(--ods-text-primary)}.ods-flow-group__chevron:focus-visible{outline:2px solid var(--ods-accent, #4f46e5);outline-offset:1px}.ods-flow-group__count{display:inline-flex;align-items:center;height:16px;padding:0 6px;margin-left:6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ods-accent);background:var(--ods-accent-soft, rgba(79, 70, 229, 0.1));border-radius:8px}.ods-flow-foreach{position:relative;border:1.5px dashed var(--ods-status-warning, #d97706);border-radius:4px;background:rgba(217,119,6,.04);overflow:visible}.ods-flow-foreach__header{position:absolute;top:-10px;left:12px;display:inline-flex;align-items:center;gap:6px;padding:2px 10px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:999px;font-size:11px;font-weight:600;color:var(--ods-text-primary)}.ods-flow-foreach__chevron{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;background:rgba(0,0,0,0);border:0;color:var(--ods-text-tertiary);cursor:pointer;line-height:1;border-radius:2px;transition:background-color 120ms ease-out,color 120ms ease-out}.ods-flow-foreach__chevron:hover{background:var(--ods-surface-subtle, rgba(0, 0, 0, 0.06));color:var(--ods-text-primary)}.ods-flow-foreach__chevron:focus-visible{outline:2px solid var(--ods-accent, #4f46e5);outline-offset:1px}.ods-flow-foreach__icon{font-size:12px;color:var(--ods-status-warning, #d97706);line-height:1}.ods-flow-foreach__count{display:inline-flex;align-items:center;height:16px;padding:0 6px;margin-left:6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ods-status-warning, #d97706);background:rgba(217,119,6,.12);border-radius:8px}.ods-flow-foreach__iterator{margin-left:4px;padding:1px 6px;background:var(--ods-surface-muted);border-radius:4px;font-family:var(--ods-font-family-mono);font-weight:500;font-size:10px;color:var(--ods-text-body)}.ods-flow-sticky{position:relative;background:#fff8c4;border:1px solid rgba(0,0,0,.08);border-radius:4px;box-shadow:1px 1px 2px rgba(0,0,0,.06),inset 0 0 0 1px hsla(0,0%,100%,.6);padding:12px 14px;font-family:var(--ods-font-family-sans);color:#44391f}.ods-flow-sticky__title{font-size:13px;font-weight:600;margin-bottom:4px;letter-spacing:.01em}.ods-flow-sticky__body{font-size:12px;line-height:1.45;white-space:pre-wrap}.ods-flow-group__subtitle{color:var(--ods-text-tertiary);font-weight:400}.ods-flow-edge-v2{cursor:pointer}.ods-flow-edge-v2__chrome{width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:6px;pointer-events:none}.ods-flow-edge-v2__delete-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:50%;color:var(--ods-text-tertiary);cursor:pointer;pointer-events:auto;transition:background-color 120ms ease-out,border-color 120ms ease-out,color 120ms ease-out}.ods-flow-edge-v2__delete-btn:hover{background:var(--ods-status-failed, #dc2626);border-color:var(--ods-status-failed, #dc2626);color:var(--ods-surface-canvas)}.ods-flow-edge-v2__delete-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-flow-edge-v2__label-chip{appearance:none;display:inline-flex;align-items:center;height:22px;max-width:200px;padding:0 10px;margin:0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:11px;font-family:var(--ods-font-family-mono);font-size:11px;font-weight:500;letter-spacing:.02em;color:var(--ods-text-body);white-space:nowrap;overflow:hidden;user-select:none;cursor:pointer;pointer-events:auto;transition:background-color 120ms ease-out,border-color 120ms ease-out,color 120ms ease-out}.ods-flow-edge-v2__label-chip:hover{background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-flow-edge-v2__label-chip:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-flow-edge-v2__label-chip>span{overflow:hidden;text-overflow:ellipsis}.ods-flow-edge-v2__label-input{appearance:none;width:160px;height:24px;padding:0 10px;margin:0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-focus, var(--ods-accent));border-radius:12px;font-family:var(--ods-font-family-mono);font-size:11px;font-weight:500;letter-spacing:.02em;color:var(--ods-text-primary);outline:none;box-shadow:0 0 0 2px var(--ods-accent-soft, rgba(79, 70, 229, 0.18));text-align:center;pointer-events:auto}.ods-flow-edge-v2__delete{cursor:pointer;pointer-events:all;color:var(--ods-text-tertiary)}.ods-flow-edge-v2__delete-bg{fill:var(--ods-surface-canvas);stroke:var(--ods-border-default);stroke-width:1}.ods-flow-edge-v2__delete:hover .ods-flow-edge-v2__delete-bg{fill:var(--ods-status-failed);stroke:var(--ods-status-failed)}.ods-flow-edge-v2__delete:hover{color:var(--ods-surface-canvas)}.ods-flow-config-panel{position:relative;display:flex;flex-direction:column;height:100%;background:var(--ods-surface-canvas);border-left:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans);color:var(--ods-text-body);-webkit-font-smoothing:antialiased}.ods-flow-config-panel--floating{border:1px solid var(--ods-border-default);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.08);margin:12px;height:calc(100% - 24px)}.ods-flow-config-panel__resize{position:absolute;left:-4px;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:2}.ods-flow-config-panel__resize:hover{background:var(--ods-accent-soft, rgba(79, 70, 229, 0.12))}.ods-flow-config-panel__header{display:flex;flex-direction:column;gap:2px;padding:12px 16px 8px;border-bottom:1px solid var(--ods-border-default);flex-shrink:0}.ods-flow-config-panel__header-actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.ods-flow-config-panel__breadcrumb{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-flow-config-panel__title-row{display:flex;align-items:center;gap:8px;min-width:0}.ods-flow-config-panel__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 18px;color:var(--ods-text-tertiary)}.ods-flow-config-panel__title{appearance:none;border:0;background:rgba(0,0,0,0);padding:0;margin:0;flex:1;min-width:0;font-family:inherit;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);text-align:left;cursor:text;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-flow-config-panel__title:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-radius:4px}.ods-flow-config-panel__title-input{flex:1;min-width:0;height:24px;padding:0 6px;border:1px solid var(--ods-border-focus, var(--ods-accent));border-radius:4px;background:var(--ods-surface-canvas);font-family:inherit;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);outline:none;box-shadow:0 0 0 2px var(--ods-accent-soft, rgba(79, 70, 229, 0.18))}.ods-flow-config-panel__close{appearance:none;background:rgba(0,0,0,0);border:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer}.ods-flow-config-panel__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-flow-config-panel__close:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-flow-config-panel__tabs{display:flex;gap:2px;padding:0 12px;border-bottom:1px solid var(--ods-border-default);overflow-x:auto;flex-shrink:0}.ods-flow-config-panel__tab{appearance:none;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;background:rgba(0,0,0,0);border:0;border-bottom:2px solid rgba(0,0,0,0);color:var(--ods-text-tertiary);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:color 120ms ease-out,border-color 120ms ease-out;white-space:nowrap}.ods-flow-config-panel__tab:hover{color:var(--ods-text-primary)}.ods-flow-config-panel__tab:disabled{opacity:.5;cursor:not-allowed}.ods-flow-config-panel__tab:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-flow-config-panel__tab--active{color:var(--ods-text-primary);border-bottom-color:var(--ods-accent)}.ods-flow-config-panel__tab-badge{font-size:10px;font-weight:600;padding:1px 5px;border-radius:8px;background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-flow-config-panel__tab--active .ods-flow-config-panel__tab-badge{background:var(--ods-accent-soft, rgba(79, 70, 229, 0.1));color:var(--ods-accent)}.ods-flow-config-panel__banner{padding:8px 16px;border-bottom:1px solid var(--ods-border-default);background:var(--ods-surface-subtle);font-size:var(--ods-font-size-xs);color:var(--ods-text-body)}.ods-flow-config-panel__body{flex:1;overflow-y:auto;padding:16px;font-size:var(--ods-font-size-sm);line-height:1.5}.ods-flow-config-panel__footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 16px;border-top:1px solid var(--ods-border-default);background:var(--ods-surface-subtle);flex-shrink:0}.ods-flow-config-panel__save-state{display:inline-flex;align-items:center;gap:6px;margin-right:auto;font-size:11px;font-weight:500;color:var(--ods-text-tertiary)}.ods-flow-config-panel__save-state--dirty{color:var(--ods-status-warning, #d97706)}.ods-flow-config-panel__save-state--saving{color:var(--ods-status-running, #2563eb)}.ods-flow-config-panel__save-state--saved{color:var(--ods-status-success, #16a34a)}.ods-flow-config-panel__save-state--error{color:var(--ods-status-failed, #dc2626)}.ods-flow-config-panel__save-dot{width:8px;height:8px;border-radius:50%}.ods-flow-config-panel__footer-actions{display:inline-flex;align-items:center;gap:8px}.ods-flow-config-panel__btn{appearance:none;height:28px;padding:0 12px;border-radius:var(--ods-radius-1);font-family:inherit;font-size:12px;font-weight:500;cursor:pointer;transition:background-color 120ms ease-out,color 120ms ease-out,border-color 120ms ease-out,opacity 120ms ease-out}.ods-flow-config-panel__btn:disabled{opacity:.5;cursor:not-allowed}.ods-flow-config-panel__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-flow-config-panel__btn--ghost{background:rgba(0,0,0,0);border:1px solid var(--ods-border-strong);color:var(--ods-text-body)}.ods-flow-config-panel__btn--ghost:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-flow-config-panel__btn--primary{background:var(--ods-accent);border:1px solid var(--ods-accent);color:var(--ods-surface-canvas)}.ods-flow-config-panel__btn--primary:hover:not(:disabled){filter:brightness(1.05)}.ods-node-toolbar{position:absolute;z-index:50;display:inline-flex;pointer-events:auto}.ods-node-toolbar__inner{display:inline-flex;align-items:center;gap:4px;padding:4px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.08)}.ods-node-toolbar__inner button{appearance:none;display:inline-flex;align-items:center;justify-content:center;height:24px;padding:0 8px;background:rgba(0,0,0,0);border:0;border-radius:4px;font-family:var(--ods-font-family-sans);font-size:12px;color:var(--ods-text-body);cursor:pointer}.ods-node-toolbar__inner button:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-node-toolbar__inner button:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-banner{display:flex;align-items:center;gap:var(--ods-space-3);border-radius:var(--ods-radius-1);border:1px solid rgba(0,0,0,0);width:100%;font-family:var(--ods-font-family-sans);padding:var(--ods-space-3) var(--ods-space-4)}.ods-banner--sm{gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3)}.ods-banner--sm .ods-banner__icon{width:14px;height:14px}.ods-banner--sm .ods-banner__title{font-size:var(--ods-font-size-sm)}.ods-banner--sm .ods-banner__description{font-size:var(--ods-font-size-xs)}.ods-banner--lg{gap:var(--ods-space-4);padding:var(--ods-space-4) var(--ods-space-5)}.ods-banner--lg .ods-banner__icon{width:22px;height:22px}.ods-banner--lg .ods-banner__title{font-size:var(--ods-font-size-lg)}.ods-banner--lg .ods-banner__description{font-size:var(--ods-font-size-md)}.ods-banner__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px}.ods-banner__icon>svg{width:100%;height:100%}.ods-banner__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-banner__title{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-banner__description{font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-snug)}.ods-banner__action{flex-shrink:0}.ods-banner__dismiss{flex-shrink:0;width:24px;height:24px;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--ods-duration-instant) var(--ods-ease-out),color var(--ods-duration-instant) var(--ods-ease-out)}.ods-banner__dismiss:hover{background:rgba(0,0,0,.06);color:var(--ods-text-primary)}.ods-banner__dismiss:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-banner--info{background:var(--ods-status-running-bg);border-color:var(--ods-status-running-bd)}.ods-banner--info .ods-banner__icon{color:var(--ods-status-running-fg)}.ods-banner--success{background:var(--ods-status-success-bg);border-color:var(--ods-status-success-bd)}.ods-banner--success .ods-banner__icon{color:var(--ods-status-success-fg)}.ods-banner--warning{background:var(--ods-status-pending-bg);border-color:var(--ods-status-pending-bd)}.ods-banner--warning .ods-banner__icon{color:var(--ods-status-pending-fg)}.ods-banner--error{background:var(--ods-status-failed-bg);border-color:var(--ods-status-failed-bd)}.ods-banner--error .ods-banner__icon{color:var(--ods-status-failed-fg)}.ods-banner--promo{background:var(--ods-accent-soft);border-color:var(--ods-accent)}.ods-banner--promo .ods-banner__icon{color:var(--ods-accent-strong)}.ods-banner--neutral{background:var(--ods-status-idle-bg);border-color:var(--ods-status-idle-bd)}.ods-banner--neutral .ods-banner__icon{color:var(--ods-status-idle-fg)}.ods-banner--outlined{background:var(--ods-surface-canvas)}.ods-banner--subtle{background:var(--ods-surface-canvas);border-color:var(--ods-border-soft)}.ods-banner:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-stat{display:flex;flex-direction:column;gap:var(--ods-space-1);padding:var(--ods-space-4);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-stat:hover{border-color:var(--ods-border-strong)}.ods-stat__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2)}.ods-stat__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary);text-transform:uppercase}.ods-stat__icon{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-stat__icon>svg{fill:currentColor;width:14px;height:14px}.ods-stat__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-2xl);font-weight:500;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-stat__delta{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:500}.ods-stat__delta--up{color:var(--ods-status-success-fg)}.ods-stat__delta--down{color:var(--ods-status-failed-fg)}.ods-stat__delta--neutral{color:var(--ods-text-tertiary)}.ods-stat__delta-arrow{display:inline-flex;align-items:center;justify-content:center}.ods-stat__delta-arrow>svg{color:inherit !important;fill:currentColor;width:10px;height:10px}.ods-stat__delta-suffix{font-weight:400;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs)}.ods-stat__description{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-stat--sm{padding:var(--ods-space-3)}.ods-stat--sm .ods-stat__value{font-size:var(--ods-font-size-xl)}.ods-stat--lg{padding:var(--ods-space-5)}.ods-stat--lg .ods-stat__value{font-size:var(--ods-font-size-3xl)}.ods-chip{display:inline-flex;align-items:center;gap:var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans);font-weight:500;line-height:1;color:var(--ods-text-body);white-space:nowrap;user-select:none;height:22px;font-size:var(--ods-font-size-xs);padding:0 var(--ods-space-2);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-chip--avatar{padding-left:var(--ods-space-1)}.ods-chip__avatar{display:inline-flex;width:16px;height:16px;border-radius:var(--ods-radius-pill);overflow:hidden;align-items:center;justify-content:center;background:var(--ods-accent-soft);color:var(--ods-accent);font-size:9px;font-weight:700;flex-shrink:0}.ods-chip__icon{display:inline-flex;width:12px;height:12px;align-items:center;justify-content:center;color:currentColor;flex-shrink:0}.ods-chip__label{line-height:1}.ods-chip__remove{display:inline-flex;width:14px;height:14px;border:0;background:rgba(0,0,0,0);color:currentColor;opacity:.6;cursor:pointer;align-items:center;justify-content:center;padding:0;border-radius:var(--ods-radius-pill);transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-chip__remove:hover{opacity:1;background:rgba(0,0,0,.08)}.ods-chip__remove:focus-visible{outline:none;opacity:1;box-shadow:var(--ods-focus-ring)}.ods-chip--interactive{cursor:pointer}.ods-chip--interactive:hover:not(.ods-chip--disabled){background:var(--ods-surface-muted);border-color:var(--ods-border-strong)}.ods-chip:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-chip--selected{background:var(--ods-accent-soft);color:var(--ods-accent-strong);border-color:var(--ods-accent)}.ods-chip--selected.ods-chip--interactive:hover:not(.ods-chip--disabled){background:var(--ods-accent-soft);border-color:var(--ods-accent);filter:brightness(0.97)}.ods-chip--disabled{opacity:.5;cursor:not-allowed}.ods-chip--primary{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent)}.ods-chip--success{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-chip--warning{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-chip--error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd)}.ods-chip--sm{height:18px;font-size:10px;padding:0 var(--ods-space-1-5);gap:4px}.ods-chip--sm .ods-chip__avatar{width:14px;height:14px;font-size:8px}.ods-chip--sm .ods-chip__icon,.ods-chip--sm .ods-chip__remove{width:10px;height:10px}.ods-chip--lg{height:28px;font-size:var(--ods-font-size-sm);padding:0 var(--ods-space-2-5);gap:var(--ods-space-1-5)}.ods-chip--lg .ods-chip__avatar{width:20px;height:20px;font-size:11px}.ods-chip--lg .ods-chip__icon{width:14px;height:14px}.ods-chip--lg .ods-chip__remove{width:16px;height:16px}.ods-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-bottom-width:2px;color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1;letter-spacing:var(--ods-tracking-mono);white-space:nowrap}.ods-kbd--sm{min-width:14px;padding:0 4px;font-size:10px}.ods-kbd--lg{min-width:22px;padding:2px var(--ods-space-2);font-size:var(--ods-font-size-sm);border-bottom-width:2px}.ods-kbd-group{display:inline-flex;align-items:center;gap:4px}.ods-kbd-group__item{display:inline-flex;align-items:center;gap:4px}.ods-kbd-group__sep{color:var(--ods-text-tertiary);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500}.ods-callout{display:flex;align-items:flex-start;border-radius:var(--ods-radius-1);border-left:3px solid;background:var(--ods-surface-subtle);font-family:var(--ods-font-family-sans);gap:var(--ods-space-3);padding:var(--ods-space-3) var(--ods-space-4)}.ods-callout--sm{gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3)}.ods-callout--sm .ods-callout__title{font-size:var(--ods-font-size-sm)}.ods-callout--sm .ods-callout__content{font-size:var(--ods-font-size-xs)}.ods-callout--sm .ods-callout__icon{width:14px;height:14px}.ods-callout--lg{gap:var(--ods-space-4);padding:var(--ods-space-4) var(--ods-space-5)}.ods-callout--lg .ods-callout__title{font-size:var(--ods-font-size-lg)}.ods-callout--lg .ods-callout__content{font-size:var(--ods-font-size-md)}.ods-callout--lg .ods-callout__icon{width:20px;height:20px}.ods-callout__icon{display:inline-flex;width:16px;height:16px;align-items:center;justify-content:center;color:currentColor;flex-shrink:0;margin-top:2px}.ods-callout__icon>svg{width:100%;height:100%}.ods-callout__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-callout__title{font-size:var(--ods-font-size-base);font-weight:600;color:var(--ods-text-primary)}.ods-callout__content{font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-callout__dismiss{flex-shrink:0;width:22px;height:22px;margin-top:-2px;margin-right:-4px;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-callout__dismiss:hover{background:rgba(0,0,0,.06);color:var(--ods-text-primary)}.ods-callout__dismiss:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-callout--tip{background:var(--ods-accent-soft);border-left-color:var(--ods-accent)}.ods-callout--tip .ods-callout__icon{color:var(--ods-accent-strong)}.ods-callout--info{background:var(--ods-status-running-bg);border-left-color:var(--ods-status-running)}.ods-callout--info .ods-callout__icon{color:var(--ods-status-running-fg)}.ods-callout--warning{background:var(--ods-status-pending-bg);border-left-color:var(--ods-status-pending)}.ods-callout--warning .ods-callout__icon{color:var(--ods-status-pending-fg)}.ods-callout--danger{background:var(--ods-status-failed-bg);border-left-color:var(--ods-status-failed)}.ods-callout--danger .ods-callout__icon{color:var(--ods-status-failed-fg)}.ods-callout--success{background:var(--ods-status-success-bg);border-left-color:var(--ods-status-success)}.ods-callout--success .ods-callout__icon{color:var(--ods-status-success-fg)}.ods-callout--neutral{background:var(--ods-status-idle-bg);border-left-color:var(--ods-status-idle)}.ods-callout--neutral .ods-callout__icon{color:var(--ods-status-idle-fg)}.ods-quote{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4) var(--ods-space-4) var(--ods-space-4) var(--ods-space-5);border-left:3px solid var(--ods-accent);border-radius:var(--ods-radius-1);background:var(--ods-surface-subtle);font-family:var(--ods-font-family-sans);margin:0}.ods-quote__mark{position:absolute;top:var(--ods-space-1);left:var(--ods-space-3);font-size:var(--ods-font-size-2xl);font-family:var(--ods-font-family-serif);color:var(--ods-accent-border);line-height:1;pointer-events:none}.ods-quote__text{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-md);line-height:var(--ods-line-height-base);color:var(--ods-text-primary);font-style:italic}.ods-quote__footer{display:flex;align-items:center;gap:var(--ods-space-1);font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-quote__author{font-family:var(--ods-font-family-sans);font-weight:600;font-style:normal;color:var(--ods-text-primary)}.ods-quote__attribution{color:var(--ods-text-tertiary)}.ods-quote--muted{background:var(--ods-surface-muted);border-left-color:var(--ods-text-tertiary)}.ods-quote--muted .ods-quote__mark{color:var(--ods-border-strong)}.ods-quote--primary{background:var(--ods-accent-soft);border-left-color:var(--ods-accent)}.ods-quote--sm{padding:var(--ods-space-3) var(--ods-space-3) var(--ods-space-3) var(--ods-space-4)}.ods-quote--sm .ods-quote__text{font-size:var(--ods-font-size-sm)}.ods-quote--sm .ods-quote__mark{font-size:var(--ods-font-size-xl);top:2px}.ods-quote--lg{padding:var(--ods-space-6) var(--ods-space-6) var(--ods-space-6) var(--ods-space-7)}.ods-quote--lg .ods-quote__text{font-size:var(--ods-font-size-lg);line-height:var(--ods-line-height-base)}.ods-quote--lg .ods-quote__mark{font-size:var(--ods-font-size-3xl);top:var(--ods-space-1);left:var(--ods-space-4)}.ods-icon-card{display:flex;font-family:var(--ods-font-family-sans);gap:var(--ods-space-3);padding:var(--ods-space-4)}.ods-icon-card--vertical{flex-direction:column;align-items:flex-start}.ods-icon-card--vertical .ods-icon-card__action{margin-top:var(--ods-space-1)}.ods-icon-card--horizontal{flex-direction:row;align-items:center}.ods-icon-card--horizontal .ods-icon-card__body{flex:1 1 auto}.ods-icon-card__icon{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);flex-shrink:0}.ods-icon-card__icon>svg{width:16px;height:16px;color:inherit !important;fill:currentColor}.ods-icon-card__body{display:flex;flex-direction:column;gap:var(--ods-space-1);min-width:0}.ods-icon-card__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-icon-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-icon-card__action{flex-shrink:0}.ods-icon-card--disabled{cursor:not-allowed}.ods-icon-card--default .ods-icon-card__icon{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-icon-card--primary .ods-icon-card__icon{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-icon-card--success .ods-icon-card__icon{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-icon-card--warning .ods-icon-card__icon{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-icon-card--error .ods-icon-card__icon{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-icon-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-icon-card--sm .ods-icon-card__icon{width:22px;height:22px}.ods-icon-card--sm .ods-icon-card__icon>svg{width:12px;height:12px}.ods-icon-card--sm .ods-icon-card__title{font-size:var(--ods-font-size-sm)}.ods-icon-card--sm .ods-icon-card__description{font-size:var(--ods-font-size-xs)}.ods-icon-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-icon-card--lg .ods-icon-card__icon{width:36px;height:36px}.ods-icon-card--lg .ods-icon-card__icon>svg{width:20px;height:20px}.ods-icon-card--lg .ods-icon-card__title{font-size:var(--ods-font-size-lg)}.ods-icon-card--lg .ods-icon-card__description{font-size:var(--ods-font-size-md)}.ods-dl{margin:0;padding:0;border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans);overflow:hidden}.ods-dl__row{display:flex;align-items:flex-start;padding:var(--ods-space-2) var(--ods-space-3);gap:var(--ods-space-3)}.ods-dl__label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);flex-shrink:0;min-width:100px}.ods-dl__value{margin:0;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);line-height:var(--ods-line-height-snug);flex:1 1 auto;min-width:0}.ods-dl--stacked .ods-dl__row{flex-direction:column;align-items:stretch;gap:var(--ods-space-1)}.ods-dl--divided .ods-dl__row+.ods-dl__row{border-top:1px solid var(--ods-border-soft)}.ods-dl--sm .ods-dl__row{padding:var(--ods-space-1) var(--ods-space-2)}.ods-dl--sm .ods-dl__label,.ods-dl--sm .ods-dl__value{font-size:var(--ods-font-size-xs)}.ods-dl--lg .ods-dl__row{padding:var(--ods-space-3) var(--ods-space-4)}.ods-dl--lg .ods-dl__label{font-size:var(--ods-font-size-sm)}.ods-dl--lg .ods-dl__value{font-size:var(--ods-font-size-md)}.ods-ribbon{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:22px;padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);white-space:nowrap;border:1px solid rgba(0,0,0,0)}.ods-ribbon__icon{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;flex-shrink:0}.ods-ribbon__icon>svg{color:inherit !important;fill:currentColor;width:100%;height:100%}.ods-ribbon__label{text-transform:uppercase}.ods-ribbon--case-normal .ods-ribbon__label{text-transform:none;letter-spacing:0}.ods-ribbon--primary{background:var(--ods-accent);border-color:var(--ods-accent)}.ods-ribbon--success{background:var(--ods-status-success);border-color:var(--ods-status-success)}.ods-ribbon--warning{background:var(--ods-status-pending);border-color:var(--ods-status-pending)}.ods-ribbon--error{background:var(--ods-status-failed);border-color:var(--ods-status-failed)}.ods-ribbon--neutral{background:var(--ods-text-tertiary);border-color:var(--ods-text-tertiary)}.ods-ribbon--sm{height:18px;padding:0 var(--ods-space-1);font-size:10px;gap:4px}.ods-ribbon--sm .ods-ribbon__icon{width:10px;height:10px}.ods-ribbon--lg{height:28px;padding:0 var(--ods-space-3);font-size:var(--ods-font-size-sm);gap:var(--ods-space-2)}.ods-ribbon--lg .ods-ribbon__icon{width:14px;height:14px}.ods-link-btn{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans);font-weight:500;text-decoration:none;cursor:pointer;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));outline:none}.ods-link-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-link-btn__icon{display:inline-flex;align-items:center;justify-content:center;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-link-btn__label{line-height:1.2}.ods-link-btn:hover .ods-link-btn__icon--right{transform:translateX(2px)}.ods-link-btn:hover .ods-link-btn__icon--left{transform:translateX(-2px)}.ods-link-btn--underline:hover .ods-link-btn__label{text-decoration:underline}.ods-link-btn--primary{color:var(--ods-accent)}.ods-link-btn--primary:hover{color:var(--ods-accent-hover)}.ods-link-btn--neutral{color:var(--ods-text-body)}.ods-link-btn--neutral:hover{color:var(--ods-text-primary)}.ods-link-btn--danger{color:var(--ods-status-failed-fg)}.ods-link-btn--danger:hover{color:var(--ods-status-failed)}.ods-link-btn--sm{font-size:var(--ods-font-size-sm)}.ods-link-btn--sm .ods-link-btn__icon{width:12px;height:12px}.ods-link-btn--md{font-size:var(--ods-font-size-md)}.ods-link-btn--md .ods-link-btn__icon{width:14px;height:14px}.ods-link-btn--lg{font-size:var(--ods-font-size-lg)}.ods-link-btn--lg .ods-link-btn__icon{width:16px;height:16px}.ods-link-btn__icon>svg{width:100%;height:100%}.ods-link-btn--disabled{color:var(--ods-text-disabled);cursor:not-allowed}.ods-link-btn--disabled:hover{color:var(--ods-text-disabled)}.ods-link-btn--disabled:hover .ods-link-btn__icon--right,.ods-link-btn--disabled:hover .ods-link-btn__icon--left{transform:none}.ods-toggle-field{display:flex;flex-direction:column;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans)}.ods-toggle-field__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-toggle-field__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-toggle-field__hint--error{color:var(--ods-status-failed-fg)}.ods-toggle-field--error .ods-toggle{border-color:var(--ods-status-failed)}.ods-toggle-field--disabled .ods-toggle__label{color:var(--ods-text-tertiary)}.ods-toggle{display:inline-flex;padding:1px;gap:1px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-toggle--full{display:flex;width:100%}.ods-toggle__opt{display:inline-flex;align-items:center;justify-content:center;gap:var(--ods-space-1);height:26px;padding:0 var(--ods-space-3);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-tertiary);cursor:pointer;flex:1 1 auto;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-toggle__opt:hover:not(.ods-toggle__opt--active):not(:disabled){color:var(--ods-text-primary)}.ods-toggle__opt:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-toggle__opt:disabled{color:var(--ods-text-tertiary);cursor:not-allowed;pointer-events:auto;opacity:.6}.ods-toggle__opt--active{background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-weight:600;box-shadow:var(--ods-shadow-1, 0 1px 2px rgba(0, 0, 0, 0.08))}.ods-toggle__icon{display:inline-flex;width:14px;height:14px;align-items:center;justify-content:center}.ods-toggle__icon>svg{color:inherit !important;fill:currentColor}.ods-toggle--sm .ods-toggle__opt{height:22px;padding:0 var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-toggle--lg .ods-toggle__opt{height:34px;padding:0 var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-num{display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-num__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-num__field{display:flex;height:var(--ods-layout-control-height);align-items:stretch;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);overflow:hidden;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-num__field:focus-within{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-num__step{width:28px;display:inline-flex;align-items:center;justify-content:center;border:0;background:var(--ods-surface-muted);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-num__step:hover:not(:disabled){background:var(--ods-surface-sunken);color:var(--ods-text-primary)}.ods-num__step:disabled{opacity:.4;cursor:not-allowed}.ods-num__step--dec{border-right:1px solid var(--ods-border-default)}.ods-num__step--inc{border-left:1px solid var(--ods-border-default)}.ods-num__step>svg{width:14px;height:14px}.ods-num__prefix,.ods-num__suffix{display:inline-flex;align-items:center;padding:0 var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);background:rgba(0,0,0,0)}.ods-num__input{flex:1 1 auto;min-width:0;padding:0 var(--ods-space-3);border:0;background:rgba(0,0,0,0);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-primary);text-align:center;outline:none}.ods-num__input::-webkit-outer-spin-button,.ods-num__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ods-num__input[type=number]{-moz-appearance:textfield}.ods-num__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-num__hint--error{color:var(--ods-status-failed-fg)}.ods-num--error .ods-num__field{border-color:var(--ods-status-failed)}.ods-num--disabled .ods-num__field{background:var(--ods-surface-muted);opacity:1}.ods-num--disabled .ods-num__field .ods-num__input{color:var(--ods-text-disabled)}.ods-num--sm .ods-num__field{height:var(--ods-layout-control-height-sm)}.ods-num--sm .ods-num__step{width:24px}.ods-num--sm .ods-num__input{font-size:var(--ods-font-size-sm)}.ods-num--lg .ods-num__field{height:var(--ods-layout-control-height-lg)}.ods-num--lg .ods-num__step{width:36px}.ods-num--lg .ods-num__input{font-size:var(--ods-font-size-md)}.ods-otp{display:flex;flex-direction:column;gap:var(--ods-space-2);font-family:var(--ods-font-family-sans)}.ods-otp__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-otp__row{display:inline-flex;gap:var(--ods-space-2)}.ods-otp__cell{width:36px;height:40px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);text-align:center;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xl);font-weight:500;color:var(--ods-text-primary);background:var(--ods-surface-canvas);outline:none;caret-color:var(--ods-accent);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-otp__cell:focus{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-otp__cell--filled{border-color:var(--ods-accent-border)}.ods-otp__hint{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg)}.ods-otp--disabled .ods-otp__cell{background:var(--ods-surface-muted);color:var(--ods-text-disabled);cursor:not-allowed}.ods-otp--error .ods-otp__cell{border-color:var(--ods-status-failed)}.ods-pwd{display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-pwd__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-pwd__field{display:flex;height:var(--ods-layout-control-height);align-items:center;gap:var(--ods-space-2);padding:0 var(--ods-space-3);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-pwd__field:focus-within{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-pwd__icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-pwd__icon>svg{width:100%;height:100%}.ods-pwd__input{flex:1 1 auto;min-width:0;border:0;outline:none;background:rgba(0,0,0,0);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);font-family:inherit;letter-spacing:1px}.ods-pwd__input:placeholder-shown{letter-spacing:normal}.ods-pwd__toggle{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;flex-shrink:0;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-pwd__toggle:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-pwd__toggle:disabled{opacity:.4;cursor:not-allowed}.ods-pwd__toggle:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-pwd__toggle>svg{width:14px;height:14px}.ods-pwd__strength{display:flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-pwd__meter{flex:1 1 auto;height:4px;border-radius:var(--ods-radius-pill);background:var(--ods-border-default);overflow:hidden}.ods-pwd__bar{display:block;height:100%;border-radius:var(--ods-radius-pill);transition:width var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-pwd__bar--0{width:10%;background:var(--ods-status-failed)}.ods-pwd__bar--1{width:30%;background:var(--ods-status-pending)}.ods-pwd__bar--2{width:55%;background:var(--ods-status-pending)}.ods-pwd__bar--3{width:80%;background:var(--ods-status-success)}.ods-pwd__bar--4{width:100%;background:var(--ods-status-success)}.ods-pwd__strength-label{font-weight:600;white-space:nowrap}.ods-pwd__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-pwd__hint--error{color:var(--ods-status-failed-fg)}.ods-pwd__requirements{list-style:none;margin:var(--ods-space-1) 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.ods-pwd__requirement{display:grid;grid-template-columns:14px 1fr;gap:var(--ods-space-2);align-items:center;min-height:18px;font-size:var(--ods-font-size-xs);line-height:1.3;color:var(--ods-text-body);transition:color var(--ods-duration-base, 200ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-pwd__requirement-dot{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--ods-border-strong);background:var(--ods-surface-canvas);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ods-surface-canvas);transition:background-color var(--ods-duration-base, 200ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-base, 200ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-pwd__requirement-check{opacity:0;transform:scale(0.5);fill:currentColor;transition:opacity var(--ods-duration-fast, 150ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-base, 200ms) cubic-bezier(0.34, 1.56, 0.64, 1)}.ods-pwd__requirement-label{min-width:0}.ods-pwd__requirement--met{color:var(--ods-text-primary)}.ods-pwd__requirement--met .ods-pwd__requirement-dot{background:var(--ods-status-success);border-color:var(--ods-status-success)}.ods-pwd__requirement--met .ods-pwd__requirement-check{opacity:1;transform:scale(1)}@media(prefers-reduced-motion: reduce){.ods-pwd .ods-pwd__requirement,.ods-pwd .ods-pwd__requirement-dot,.ods-pwd .ods-pwd__requirement-check{transition:none}}.ods-pwd--error .ods-pwd__field{border-color:var(--ods-status-failed)}.ods-pwd--disabled .ods-pwd__field{background:var(--ods-surface-muted)}.ods-pwd--sm .ods-pwd__field{height:var(--ods-layout-control-height-sm);padding:0 var(--ods-space-2)}.ods-pwd--lg .ods-pwd__field{height:var(--ods-layout-control-height-lg);padding:0 var(--ods-space-4)}.ods-pwd--lg .ods-pwd__field .ods-pwd__input{font-size:var(--ods-font-size-md)}.ods-rating{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-family:var(--ods-font-family-sans);outline:none}.ods-rating__row{display:inline-flex;align-items:center;gap:2px;color:var(--ods-border-strong);border-radius:var(--ods-radius-1);padding:2px;transition:box-shadow var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-rating:focus-visible .ods-rating__row{box-shadow:0 0 0 2px var(--ods-border-focus)}.ods-rating__item{position:relative;display:inline-flex;align-items:center;justify-content:center;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.34, 1.4, 0.64, 1))}.ods-rating__item>svg{fill:currentColor}.ods-rating--star .ods-rating__item:has([data-slug=star-filled]),.ods-rating--star .ods-rating__item:has([data-slug=star-half]){color:var(--ods-status-pending)}.ods-rating--heart .ods-rating__item:has([data-slug=favorite-filled]),.ods-rating--heart .ods-rating__item:has([data-slug=favorite-half]){color:var(--ods-status-failed)}.ods-rating__hit{position:absolute;top:0;height:100%;width:50%;z-index:1;cursor:pointer}.ods-rating__hit--left{left:0}.ods-rating__hit--right{right:0}.ods-rating__hit--full{left:0;width:100%}.ods-rating--interactive .ods-rating__item:hover{transform:scale(1.1)}.ods-rating--sm .ods-rating__item>svg{width:14px;height:14px}.ods-rating--md .ods-rating__item>svg{width:18px;height:18px}.ods-rating--lg .ods-rating__item>svg{width:24px;height:24px}.ods-rating__label{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary)}.ods-rating--readonly .ods-rating__hit{pointer-events:none}.ods-rating--disabled{opacity:.5;cursor:not-allowed}.ods-rating--disabled .ods-rating__hit{pointer-events:none}@media(prefers-reduced-motion: reduce){.ods-rating .ods-rating__item{transition:none}.ods-rating--interactive .ods-rating__item:hover{transform:none}}.ods-binary-rating{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans)}.ods-binary-rating--icon-text-stack{gap:var(--ods-space-2)}.ods-binary-rating__btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--ods-space-1);min-width:32px;min-height:32px;padding:0 var(--ods-space-2);background:rgba(0,0,0,0);border:0;border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.34, 1.4, 0.64, 1))}.ods-binary-rating__btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-binary-rating__btn:active:not(:disabled){transform:scale(0.92)}.ods-binary-rating__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-binary-rating__btn:disabled{cursor:not-allowed;pointer-events:auto;opacity:.5}.ods-binary-rating__btn--pressed.ods-binary-rating__btn--positive{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-binary-rating__btn--pressed.ods-binary-rating__btn--positive:hover:not(:disabled){background:var(--ods-accent-border)}.ods-binary-rating__btn--pressed.ods-binary-rating__btn--negative{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-binary-rating__btn--pressed.ods-binary-rating__btn--negative:hover:not(:disabled){background:var(--ods-status-failed-bd)}.ods-binary-rating__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ods-binary-rating__icon>svg{color:inherit !important;fill:currentColor}.ods-binary-rating__label{font-size:var(--ods-font-size-sm);font-weight:500;line-height:1}.ods-binary-rating--sm .ods-binary-rating__btn{min-width:28px;min-height:28px;padding:0 var(--ods-space-1)}.ods-binary-rating--sm .ods-binary-rating__icon>svg{width:14px;height:14px}.ods-binary-rating--sm .ods-binary-rating__label{font-size:var(--ods-font-size-xs)}.ods-binary-rating--md .ods-binary-rating__icon>svg{width:16px;height:16px}.ods-binary-rating--lg .ods-binary-rating__btn{min-width:40px;min-height:40px;padding:0 var(--ods-space-3)}.ods-binary-rating--lg .ods-binary-rating__icon>svg{width:20px;height:20px}.ods-binary-rating--lg .ods-binary-rating__label{font-size:var(--ods-font-size-md)}.ods-binary-rating--icon-text-stack .ods-binary-rating__btn{flex-direction:column;gap:4px;min-height:auto;padding:var(--ods-space-2) var(--ods-space-3)}.ods-binary-rating--disabled,.ods-binary-rating--readonly{cursor:not-allowed}.ods-binary-rating--disabled .ods-binary-rating__btn,.ods-binary-rating--readonly .ods-binary-rating__btn{cursor:not-allowed;pointer-events:auto}.ods-binary-rating--disabled{opacity:.5}@media(prefers-reduced-motion: reduce){.ods-binary-rating .ods-binary-rating__btn{transition:none}.ods-binary-rating .ods-binary-rating__btn:active:not(:disabled){transform:none}}.ods-slider{display:flex;flex-direction:column;gap:var(--ods-space-2);width:100%;font-family:var(--ods-font-family-sans)}.ods-slider__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3)}.ods-slider__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-slider__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-accent)}.ods-slider__track{position:relative;height:4px;border-radius:var(--ods-radius-pill);background:var(--ods-border-default)}.ods-slider__fill{position:absolute;top:0;left:0;height:100%;border-radius:var(--ods-radius-pill);background:var(--ods-accent);pointer-events:none;will-change:width}.ods-slider__input{position:absolute;inset:-8px 0;width:100%;height:20px;margin:0;padding:0;background:rgba(0,0,0,0);-webkit-appearance:none;appearance:none;cursor:pointer;opacity:1}.ods-slider__input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);border:2px solid var(--ods-accent);cursor:grab;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));will-change:transform}.ods-slider__input::-moz-range-thumb{width:14px;height:14px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);border:2px solid var(--ods-accent);cursor:grab;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-slider__input:hover::-webkit-slider-thumb{transform:scale(1.12)}.ods-slider__input:hover::-moz-range-thumb{transform:scale(1.12)}.ods-slider__input:active::-webkit-slider-thumb{transform:scale(1.18);cursor:grabbing}.ods-slider__input:active::-moz-range-thumb{transform:scale(1.18);cursor:grabbing}.ods-slider__input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-slider__input:focus-visible::-moz-range-thumb{box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-slider__input:focus,.ods-slider__input:focus-visible{outline:none}.ods-slider__input::-moz-focus-outer{border:0}.ods-slider__input:disabled{cursor:not-allowed}.ods-slider--sm .ods-slider__track{height:3px}.ods-slider--lg .ods-slider__track{height:6px}.ods-slider--success .ods-slider__fill{background:var(--ods-status-success)}.ods-slider--success .ods-slider__input::-webkit-slider-thumb{border-color:var(--ods-status-success)}.ods-slider--success .ods-slider__input::-moz-range-thumb{border-color:var(--ods-status-success)}.ods-slider--success .ods-slider__value{color:var(--ods-status-success-fg)}.ods-slider--warning .ods-slider__fill{background:var(--ods-status-pending)}.ods-slider--warning .ods-slider__input::-webkit-slider-thumb{border-color:var(--ods-status-pending)}.ods-slider--warning .ods-slider__input::-moz-range-thumb{border-color:var(--ods-status-pending)}.ods-slider--warning .ods-slider__value{color:var(--ods-status-pending-fg)}.ods-slider--error .ods-slider__fill{background:var(--ods-status-failed)}.ods-slider--error .ods-slider__input::-webkit-slider-thumb{border-color:var(--ods-status-failed)}.ods-slider--error .ods-slider__input::-moz-range-thumb{border-color:var(--ods-status-failed)}.ods-slider--error .ods-slider__value{color:var(--ods-status-failed-fg)}.ods-slider--disabled{opacity:.5;cursor:not-allowed}.ods-slider--disabled .ods-slider__input{cursor:not-allowed}.ods-slider--error-state .ods-slider__track{background:var(--ods-status-failed-bg)}.ods-slider--error-state .ods-slider__fill{background:var(--ods-status-failed)}.ods-slider--error-state .ods-slider__input::-webkit-slider-thumb{border-color:var(--ods-status-failed)}.ods-slider--error-state .ods-slider__input::-moz-range-thumb{border-color:var(--ods-status-failed)}.ods-slider--error-state .ods-slider__value{color:var(--ods-status-failed-fg)}.ods-slider__marks{position:relative;height:18px;margin-top:4px}.ods-slider__mark{position:absolute;top:0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center}.ods-slider__mark-tick{display:block;width:1px;height:4px;background:var(--ods-border-strong)}.ods-slider__mark-label{margin-top:2px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);white-space:nowrap}.ods-slider__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:2px}.ods-slider__hint--error{color:var(--ods-status-failed-fg)}.ods-range-slider{display:flex;flex-direction:column;gap:var(--ods-space-2);width:100%;font-family:var(--ods-font-family-sans)}.ods-range-slider__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3)}.ods-range-slider__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-range-slider__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-accent)}.ods-range-slider__track{position:relative;height:4px;border-radius:var(--ods-radius-pill);background:var(--ods-border-default)}.ods-range-slider__fill{position:absolute;top:0;height:100%;border-radius:var(--ods-radius-pill);background:var(--ods-accent);pointer-events:none;transition:left var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),right var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-range-slider__input{position:absolute;inset:-8px 0;width:100%;height:20px;margin:0;padding:0;background:rgba(0,0,0,0);-webkit-appearance:none;appearance:none;pointer-events:none}.ods-range-slider__input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);border:2px solid var(--ods-accent);cursor:grab;pointer-events:auto;transition:transform var(--ods-duration-instant, 80ms) var(--ods-ease-spring, cubic-bezier(0.34, 1.4, 0.64, 1)),box-shadow var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));will-change:transform}.ods-range-slider__input::-moz-range-thumb{width:14px;height:14px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);border:2px solid var(--ods-accent);cursor:grab;pointer-events:auto;transition:transform var(--ods-duration-instant, 80ms) var(--ods-ease-spring, cubic-bezier(0.34, 1.4, 0.64, 1)),box-shadow var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-range-slider__input:hover::-webkit-slider-thumb,.ods-range-slider__input:hover::-moz-range-thumb{transform:scale(1.12)}.ods-range-slider__input:active::-webkit-slider-thumb,.ods-range-slider__input:active::-moz-range-thumb{cursor:grabbing;transform:scale(1.18)}.ods-range-slider__input:focus,.ods-range-slider__input:focus-visible{outline:none}.ods-range-slider__input:focus::-webkit-slider-thumb,.ods-range-slider__input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-range-slider__input:focus::-moz-range-thumb,.ods-range-slider__input:focus-visible::-moz-range-thumb{box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-range-slider__input:disabled::-webkit-slider-thumb,.ods-range-slider__input:disabled::-moz-range-thumb{cursor:not-allowed}.ods-range-slider--sm .ods-range-slider__track{height:3px}.ods-range-slider--lg .ods-range-slider__track{height:6px}.ods-range-slider--disabled{opacity:.55;cursor:not-allowed}.ods-range-slider--error .ods-range-slider__track{background:var(--ods-status-failed-bg)}.ods-range-slider--error .ods-range-slider__fill{background:var(--ods-status-failed)}.ods-range-slider--error .ods-range-slider__input::-webkit-slider-thumb{border-color:var(--ods-status-failed)}.ods-range-slider--error .ods-range-slider__input::-moz-range-thumb{border-color:var(--ods-status-failed)}.ods-range-slider__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:2px}.ods-range-slider__hint--error{color:var(--ods-status-failed-fg)}.ods-tags{display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-tags__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-tags__field{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ods-space-1);min-height:var(--ods-layout-control-height);padding:2px var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));cursor:text}.ods-tags__field:focus-within{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-tags__chip{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:2px var(--ods-space-2);background:var(--ods-accent-soft);color:var(--ods-accent);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1.2}.ods-tags__chip-text{line-height:1.2}.ods-tags__chip-x{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:0;background:rgba(0,0,0,0);color:currentColor;opacity:.7;cursor:pointer;border-radius:var(--ods-radius-1)}.ods-tags__chip-x:hover:not(:disabled){opacity:1;background:var(--ods-accent-border)}.ods-tags__chip-x:disabled{opacity:.4;cursor:not-allowed;pointer-events:auto}.ods-tags__chip-x>svg{color:inherit !important;fill:currentColor;width:10px;height:10px}.ods-tags__input{flex:1 1 100px;min-width:80px;border:0;outline:none;background:rgba(0,0,0,0);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);font-family:inherit}.ods-tags__input::placeholder{color:var(--ods-text-tertiary)}.ods-tags__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-tags__hint--error{color:var(--ods-status-failed-fg)}.ods-tags--error .ods-tags__field{border-color:var(--ods-status-failed)}.ods-tags--disabled .ods-tags__field{background:var(--ods-surface-muted)}.ods-tags--sm .ods-tags__field{min-height:var(--ods-layout-control-height-sm);padding:1px var(--ods-space-1)}.ods-tags--sm .ods-tags__chip{font-size:10px;padding:1px var(--ods-space-1)}.ods-tags--sm .ods-tags__input{font-size:var(--ods-font-size-sm)}.ods-tags--lg .ods-tags__field{min-height:var(--ods-layout-control-height-lg);padding:var(--ods-space-1) var(--ods-space-3)}.ods-tags--lg .ods-tags__chip{font-size:var(--ods-font-size-sm);padding:2px var(--ods-space-2)}.ods-tags--lg .ods-tags__input{font-size:var(--ods-font-size-md)}.ods-color{display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-color__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-color__required{margin-left:4px;color:var(--ods-status-failed);font-weight:600}.ods-color__description{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-color__error-message{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed);line-height:var(--ods-line-height-snug)}.ods-color__field{display:flex;align-items:center;gap:var(--ods-space-2);height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-color__field:focus-within{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-color__swatch{width:20px;height:20px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);flex-shrink:0}.ods-color__hex{flex:1 1 auto;min-width:0;border:0;outline:none;background:rgba(0,0,0,0);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase}.ods-color__pick{position:relative;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));overflow:hidden}.ods-color__pick:hover{background:var(--ods-surface-sunken)}.ods-color__pick>svg{width:14px;height:14px}.ods-color__pick input[type=color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;border:0;padding:0;cursor:pointer}.ods-color__swatches{display:flex;gap:var(--ods-space-1);align-items:center}.ods-color__sw{width:20px;height:20px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);cursor:pointer;padding:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-color__sw:hover:not(:disabled){transform:scale(1.1)}.ods-color__sw--active{box-shadow:0 0 0 2px var(--ods-surface-canvas),0 0 0 3px var(--ods-accent);border-color:rgba(0,0,0,0)}.ods-color__sw:disabled{cursor:not-allowed}.ods-color--disabled .ods-color__field{background:var(--ods-surface-muted);color:var(--ods-text-disabled)}.ods-color--error .ods-color__field{border-color:var(--ods-status-failed)}.ods-color--error .ods-color__field:focus-within{border-color:var(--ods-status-failed);outline-color:var(--ods-status-failed)}.ods-color--error .ods-color__label{color:var(--ods-status-failed)}.ods-color--sm .ods-color__field{height:var(--ods-layout-control-height-sm)}.ods-color--sm .ods-color__swatch,.ods-color--sm .ods-color__pick,.ods-color--sm .ods-color__sw{width:16px;height:16px}.ods-color--sm .ods-color__pick>svg{width:11px;height:11px}.ods-color--lg .ods-color__field{height:var(--ods-layout-control-height-lg)}.ods-color--lg .ods-color__swatch,.ods-color--lg .ods-color__pick,.ods-color--lg .ods-color__sw{width:24px;height:24px}.ods-color--lg .ods-color__pick>svg{width:16px;height:16px}.ods-phone{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-phone__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-phone__field{position:relative;display:flex;align-items:stretch;height:var(--ods-layout-control-height);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);overflow:visible;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-phone__field:focus-within{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-phone__country{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:0 var(--ods-space-2);border:0;border-right:1px solid var(--ods-border-default);background:rgba(0,0,0,0);cursor:pointer;font-family:inherit;color:var(--ods-text-primary);font-size:var(--ods-font-size-base);font-weight:500;border-radius:var(--ods-radius-1) 0 0 var(--ods-radius-1);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-phone__country:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-phone__country:disabled{cursor:not-allowed}.ods-phone__flag{font-size:var(--ods-font-size-md);line-height:1}.ods-phone__dial{font-family:var(--ods-font-family-mono);font-weight:500}.ods-phone__chevron{display:inline-flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary);transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-phone__chevron--open{transform:rotate(180deg);color:var(--ods-text-primary)}.ods-phone__input{flex:1 1 auto;min-width:0;padding:0 var(--ods-space-3);border:0;outline:none;background:rgba(0,0,0,0);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-base);color:var(--ods-text-primary)}.ods-phone__input::placeholder{color:var(--ods-text-tertiary)}.ods-phone__menu{position:absolute;top:calc(100% + 4px);left:0;z-index:50;display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);min-width:260px;max-height:280px;overflow:hidden}.ods-phone__search{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3);color:var(--ods-text-tertiary);border-bottom:1px solid var(--ods-border-default);flex-shrink:0}.ods-phone__search-input{flex:1 1 auto;min-width:0;border:0;outline:none;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary)}.ods-phone__search-input::placeholder{color:var(--ods-text-tertiary)}.ods-phone__search-input:focus,.ods-phone__search-input:focus-visible{outline:none;box-shadow:none;border:0}.ods-phone__menu-list{list-style:none;margin:0;padding:var(--ods-space-1);overflow-y:auto;outline:none;flex:1 1 auto}.ods-phone__menu-empty{padding:var(--ods-space-3);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-phone__menu-item{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-phone__menu-item:hover,.ods-phone__menu-item--active{background:var(--ods-surface-muted)}.ods-phone__menu-item--selected{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:500;box-shadow:inset 3px 0 0 var(--ods-accent)}.ods-phone__menu-item--selected.ods-phone__menu-item--active{background:var(--ods-accent-border)}.ods-phone__menu-name{flex:1 1 auto;min-width:0}.ods-phone__menu-dial{color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-weight:500;font-variant-numeric:tabular-nums}.ods-phone__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-phone__hint--error{color:var(--ods-status-failed-fg)}.ods-phone--error .ods-phone__field{border-color:var(--ods-status-failed)}.ods-phone--disabled .ods-phone__field{background:var(--ods-surface-muted);cursor:not-allowed}.ods-phone--disabled .ods-phone__field .ods-phone__country{cursor:not-allowed}.ods-phone--sm .ods-phone__field{height:var(--ods-layout-control-height-sm)}.ods-phone--sm .ods-phone__country{font-size:var(--ods-font-size-sm)}.ods-phone--sm .ods-phone__input{font-size:var(--ods-font-size-sm)}.ods-phone--lg .ods-phone__field{height:var(--ods-layout-control-height-lg)}.ods-phone--lg .ods-phone__input{font-size:var(--ods-font-size-md)}.ods-calendar{display:inline-flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-3);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary)}.ods-calendar--double{flex-direction:row;gap:var(--ods-space-4)}.ods-calendar--double .ods-calendar__panel{width:280px}.ods-calendar__panel{display:flex;flex-direction:column;width:280px}.ods-calendar__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ods-space-2)}.ods-calendar__title{flex:1;text-align:center;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-md);font-weight:500;color:var(--ods-text-primary)}.ods-calendar__title--dropdowns{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-family:var(--ods-font-family-sans)}.ods-calendar__title--dropdowns>*{margin:0}.ods-calendar__nav{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-calendar__nav>svg{width:14px;height:14px}.ods-calendar__nav:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-calendar__nav:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-calendar__nav--placeholder{pointer-events:none;visibility:hidden}.ods-calendar__dow{display:grid;grid-template-columns:repeat(7, 1fr);margin-bottom:var(--ods-space-1)}.ods-calendar__dow-cell{text-align:center;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary);padding:4px 0;text-transform:uppercase}.ods-calendar__grid{display:flex;flex-direction:column}.ods-calendar__row{display:grid;grid-template-columns:repeat(7, 1fr)}.ods-calendar__cell{height:32px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-primary);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);cursor:pointer;width:100%;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-calendar__cell:hover:not(:disabled):not(.ods-calendar__cell--selected){background:var(--ods-surface-muted)}.ods-calendar__cell:focus-visible{outline:none;box-shadow:var(--ods-focus-ring);z-index:1;position:relative}.ods-calendar__cell--outside{color:var(--ods-text-tertiary)}.ods-calendar__cell--today{font-weight:700;color:var(--ods-accent)}.ods-calendar__cell--selected,.ods-calendar__cell--start,.ods-calendar__cell--end{background:var(--ods-accent);color:var(--ods-surface-canvas);font-weight:700}.ods-calendar__cell--inrange{background:var(--ods-accent-soft);color:var(--ods-accent);border-radius:0}.ods-calendar__cell--start{border-radius:var(--ods-radius-1) 0 0 var(--ods-radius-1)}.ods-calendar__cell--end{border-radius:0 var(--ods-radius-1) var(--ods-radius-1) 0}.ods-calendar__cell--start.ods-calendar__cell--end{border-radius:var(--ods-radius-1)}.ods-calendar__cell--disabled{opacity:.4;cursor:not-allowed}.ods-calendar__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);margin-top:var(--ods-space-2);padding-top:var(--ods-space-2);border-top:1px solid var(--ods-border-soft)}.ods-calendar__footer-btn{padding:4px 10px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-calendar__footer-btn:hover{background:var(--ods-surface-muted)}.ods-calendar__footer-btn:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-calendar__footer-btn--ghost{border-color:rgba(0,0,0,0);background:rgba(0,0,0,0);color:var(--ods-text-secondary)}.ods-datepicker{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-datepicker__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-datepicker__trigger{display:inline-flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-base);text-align:left;cursor:pointer;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datepicker__trigger:hover{border-color:var(--ods-text-tertiary)}.ods-datepicker__trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-datepicker__trigger>svg:first-child{color:var(--ods-text-tertiary);flex-shrink:0}.ods-datepicker__cal-icon{width:14px;height:14px}.ods-datepicker__chev{width:12px;height:12px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-datepicker__value{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums lining-nums}.ods-datepicker__value--placeholder{color:var(--ods-text-disabled)}.ods-datepicker__required{margin-left:4px;color:var(--ods-status-failed);font-weight:600}.ods-datepicker__popover{position:absolute;top:calc(100% + var(--ods-space-1));left:0;z-index:50;box-shadow:var(--ods-shadow-pop);border-radius:var(--ods-radius-1)}.ods-datepicker__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-datepicker__hint--error{color:var(--ods-status-failed-fg)}.ods-datepicker--error .ods-datepicker__trigger{border-color:var(--ods-status-failed)}.ods-datepicker--disabled .ods-datepicker__trigger{background:var(--ods-surface-muted);color:var(--ods-text-disabled);cursor:not-allowed}.ods-datepicker--sm .ods-datepicker__trigger{height:var(--ods-layout-control-height-sm);font-size:var(--ods-font-size-sm)}.ods-datepicker--lg .ods-datepicker__trigger{height:var(--ods-layout-control-height-lg);font-size:var(--ods-font-size-md)}.ods-timepicker{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-timepicker__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-timepicker__trigger{display:inline-flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-base);text-align:left;cursor:pointer;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-timepicker__trigger>svg:first-child{color:var(--ods-text-tertiary);flex-shrink:0}.ods-timepicker__trigger:hover{border-color:var(--ods-text-tertiary)}.ods-timepicker__trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-timepicker__value{flex:1 1 auto;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-weight:500;letter-spacing:var(--ods-tracking-mono)}.ods-timepicker__trigger-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-timepicker__trigger-icon>svg{color:inherit !important;fill:currentColor}.ods-timepicker__chev{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-timepicker__chev>svg{color:inherit !important;fill:currentColor}.ods-timepicker__chev--open{transform:rotate(180deg);color:var(--ods-text-primary)}.ods-timepicker__popover{position:absolute;top:calc(100% + var(--ods-space-1));left:0;z-index:50;width:280px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);overflow:hidden}.ods-timepicker__head{display:flex;align-items:center;justify-content:space-between;padding:var(--ods-space-2) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default)}.ods-timepicker__display{display:inline-flex;align-items:center;gap:0;font-family:var(--ods-font-family-mono)}.ods-timepicker__seg{border:0;background:rgba(0,0,0,0);padding:2px var(--ods-space-1);border-radius:var(--ods-radius-1);font-family:inherit;font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xl);font-weight:600;color:var(--ods-text-primary);cursor:text;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-timepicker__seg:hover{background:var(--ods-surface-muted)}.ods-timepicker__seg--active,.ods-timepicker__seg:focus-visible{outline:none;background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-timepicker__seg--drafting{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px}.ods-timepicker__display-sep{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xl);font-weight:600;color:var(--ods-text-disabled);padding:0 1px}.ods-timepicker__period{display:inline-flex;padding:1px;gap:0;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-timepicker__period-btn{padding:2px var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-timepicker__period-btn--active{background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-weight:600}.ods-timepicker__body{display:flex;align-items:center;justify-content:center;gap:var(--ods-space-4);padding:var(--ods-space-3)}.ods-timepicker__col{display:flex;flex-direction:column;align-items:center;gap:var(--ods-space-1)}.ods-timepicker__col-lbl{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-timepicker__col-val{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-2xl);font-weight:500;color:var(--ods-accent);line-height:1;min-width:40px;text-align:center}.ods-timepicker__step{display:inline-flex;align-items:center;justify-content:center;width:24px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-timepicker__step:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-timepicker__step>svg{color:inherit !important;fill:currentColor;width:14px;height:14px}.ods-timepicker__sep{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-2xl);font-weight:500;color:var(--ods-text-disabled);line-height:1}.ods-timepicker__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-timepicker__hint--error{color:var(--ods-status-failed-fg)}.ods-timepicker--error .ods-timepicker__trigger{border-color:var(--ods-status-failed)}.ods-timepicker--disabled .ods-timepicker__trigger{background:var(--ods-surface-muted);color:var(--ods-text-disabled);cursor:not-allowed}.ods-timepicker--sm .ods-timepicker__trigger{height:var(--ods-layout-control-height-sm);font-size:var(--ods-font-size-sm)}.ods-timepicker--lg .ods-timepicker__trigger{height:var(--ods-layout-control-height-lg);font-size:var(--ods-font-size-md)}.ods-tzpicker{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-tzpicker__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-tzpicker__trigger{display:inline-flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tzpicker__trigger:hover{border-color:var(--ods-text-tertiary)}.ods-tzpicker__trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-tzpicker__trigger-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-tzpicker__trigger-icon>svg{color:inherit !important;fill:currentColor}.ods-tzpicker__info{flex:1 1 auto;min-width:0;display:flex;align-items:baseline;gap:var(--ods-space-2);overflow:hidden}.ods-tzpicker__name{flex:0 1 auto;min-width:0;font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-tzpicker__name--placeholder{color:var(--ods-text-tertiary);font-weight:400}.ods-tzpicker__meta{flex:0 0 auto;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);white-space:nowrap}.ods-tzpicker__chev{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tzpicker__chev>svg{color:inherit !important;fill:currentColor}.ods-tzpicker__chev--open{transform:rotate(180deg);color:var(--ods-text-primary)}.ods-tzpicker__popover{position:absolute;top:calc(100% + var(--ods-space-1));left:0;z-index:50;width:100%;min-width:320px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);overflow:hidden}.ods-tzpicker__search{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default)}.ods-tzpicker__search input{flex:1 1 auto;min-width:0;border:none;outline:none;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);box-shadow:none;padding:0}.ods-tzpicker__search input::placeholder{color:var(--ods-text-tertiary)}.ods-tzpicker__search input:focus,.ods-tzpicker__search input:focus-visible{outline:none;box-shadow:none;border:none}.ods-tzpicker__search-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-tzpicker__search-icon>svg{color:inherit !important;fill:currentColor}.ods-tzpicker__list{list-style:none;margin:0;padding:var(--ods-space-1);max-height:280px;overflow-y:auto}.ods-tzpicker__opt{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;padding:var(--ods-space-1) var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:inherit;color:var(--ods-text-primary);cursor:pointer;text-align:left;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tzpicker__opt:hover,.ods-tzpicker__opt--active{background:var(--ods-surface-muted)}.ods-tzpicker__opt--selected{background:var(--ods-accent-soft)}.ods-tzpicker__opt--selected .ods-tzpicker__opt-name,.ods-tzpicker__opt--selected .ods-tzpicker__opt-off{color:var(--ods-accent);font-weight:600}.ods-tzpicker__opt--selected.ods-tzpicker__opt--active{background:var(--ods-accent-soft)}.ods-tzpicker__opt-text{display:flex;flex-direction:column;gap:1px;flex:1 1 auto;min-width:0}.ods-tzpicker__opt-name{font-size:var(--ods-font-size-base);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-tzpicker__opt-iana{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-tzpicker__opt-off{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-body);flex-shrink:0}.ods-tzpicker__opt-check{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--ods-accent);flex-shrink:0}.ods-tzpicker__opt-check>svg{color:inherit !important;fill:currentColor}.ods-tzpicker__empty{list-style:none;padding:var(--ods-space-3);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);text-align:center}.ods-tzpicker__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-tzpicker__hint--error{color:var(--ods-status-failed-fg)}.ods-tzpicker--error .ods-tzpicker__trigger{border-color:var(--ods-status-failed)}.ods-tzpicker--disabled .ods-tzpicker__trigger{background:var(--ods-surface-muted);color:var(--ods-text-tertiary);cursor:not-allowed;pointer-events:auto}.ods-tzpicker--sm .ods-tzpicker__trigger{height:var(--ods-layout-control-height-sm);font-size:var(--ods-font-size-sm)}.ods-tzpicker--lg .ods-tzpicker__trigger{height:var(--ods-layout-control-height-lg);font-size:var(--ods-font-size-md)}.ods-page-header{display:flex;align-items:center;gap:var(--ods-space-5);padding:var(--ods-space-5) var(--ods-space-6);background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-page-header__main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-page-header__crumbs{display:flex;align-items:center;gap:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);margin-bottom:2px}.ods-page-header__crumb{display:inline-flex;align-items:center;gap:var(--ods-space-1);color:inherit}.ods-page-header__crumb a,.ods-page-header__crumb button{color:inherit;text-decoration:none;background:none;border:0;padding:0;cursor:pointer;font:inherit}.ods-page-header__crumb a:hover,.ods-page-header__crumb button:hover{color:var(--ods-text-primary)}.ods-page-header__crumb:last-child a,.ods-page-header__crumb:last-child button,.ods-page-header__crumb:last-child>span{color:var(--ods-text-primary);font-weight:600}.ods-page-header__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-2xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-page-header__description{margin:0;font-size:var(--ods-font-size-base);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-page-header__meta{display:flex;align-items:center;gap:var(--ods-space-3);margin-top:var(--ods-space-1);flex-wrap:wrap}.ods-page-header__actions{display:flex;align-items:center;gap:var(--ods-space-2);flex-shrink:0}.ods-settings-row{display:flex;gap:var(--ods-space-3);width:100%;padding:var(--ods-space-3) var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-settings-row--center{align-items:center}.ods-settings-row--start{align-items:flex-start}.ods-settings-row__icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);flex-shrink:0}.ods-settings-row__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-settings-row__title{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-settings-row__desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-settings-row__control{flex-shrink:0;display:flex;align-items:center}.ods-form-section{display:flex;flex-direction:column;gap:var(--ods-space-4);padding:var(--ods-space-4) var(--ods-space-5);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-form-section__head{display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-form-section__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-tight)}.ods-form-section__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-form-section__body{display:flex;flex-direction:column;gap:var(--ods-space-3)}.ods-form-section__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding-top:var(--ods-space-3)}.ods-form-section--divided .ods-form-section__head{padding-bottom:var(--ods-space-3);border-bottom:1px solid var(--ods-border-default)}.ods-form-section--divided .ods-form-section__footer{border-top:1px solid var(--ods-border-default)}.ods-toolbar{display:inline-flex;align-items:center;gap:1px;padding:2px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-toolbar__btn{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-base);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-toolbar__btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-toolbar__btn:disabled{opacity:.4;cursor:not-allowed}.ods-toolbar__btn--active{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:600}.ods-toolbar__btn-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px}.ods-toolbar__btn-label{line-height:1}.ods-toolbar__divider{width:1px;height:16px;background:var(--ods-border-default);margin:0 2px}.ods-toolbar__spacer{flex:1 1 auto}.ods-drawer{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);overflow:hidden}.ods-drawer__head{display:flex;align-items:center;gap:var(--ods-space-3);padding:var(--ods-space-4) var(--ods-space-5);border-bottom:1px solid var(--ods-border-default)}.ods-drawer__titles{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}.ods-drawer__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-drawer__subtitle{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-drawer__close{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-drawer__close>svg{width:14px;height:14px}.ods-drawer__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-drawer__close:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-drawer__body{flex:1 1 auto;overflow-y:auto;padding:var(--ods-space-5);color:var(--ods-text-primary);line-height:var(--ods-line-height-base)}.ods-drawer__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-5);border-top:1px solid var(--ods-border-default)}.ods-user-card{display:flex;gap:var(--ods-space-3);padding:var(--ods-space-5);font-family:var(--ods-font-family-sans)}.ods-user-card--vertical{flex-direction:column;align-items:center;text-align:center}.ods-user-card--vertical .ods-user-card__body{align-items:center}.ods-user-card--vertical .ods-user-card__stats{width:100%;padding-top:var(--ods-space-3);border-top:1px solid var(--ods-border-default);margin-top:var(--ods-space-1)}.ods-user-card--vertical .ods-user-card__action{width:100%}.ods-user-card--horizontal{flex-direction:row;align-items:center}.ods-user-card--horizontal .ods-user-card__body{flex:1 1 auto;min-width:0;align-items:flex-start;text-align:left}.ods-user-card--horizontal .ods-user-card__stats{gap:var(--ods-space-4)}.ods-user-card__avatar{flex-shrink:0}.ods-user-card__avatar--legacy{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--ods-radius-pill);background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-lg);font-weight:600;overflow:hidden}.ods-user-card__avatar--legacy img{width:100%;height:100%;object-fit:cover}.ods-user-card__body{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-user-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-user-card__role{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-user-card__meta{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-user-card__stats{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3)}.ods-user-card__stat{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;gap:1px}.ods-user-card__stat-value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-user-card__stat-label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-user-card__action{flex-shrink:0}.ods-product-card{display:flex;flex-direction:column;overflow:hidden}.ods-product-card__image{width:100%;background:var(--ods-surface-subtle);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-product-card__image>img,.ods-product-card__image>video,.ods-product-card__image>svg{width:100%;height:100%;object-fit:cover;display:block}.ods-product-card__image--aspect-16-9{aspect-ratio:16/9}.ods-product-card__image--aspect-4-3{aspect-ratio:4/3}.ods-product-card__image--aspect-1-1{aspect-ratio:1/1}.ods-product-card__image--aspect-3-4{aspect-ratio:3/4}.ods-product-card__image--aspect-21-9{aspect-ratio:21/9}.ods-product-card--interactive:hover .ods-product-card__image>img,.ods-product-card--interactive:hover .ods-product-card__image>video{transform:scale(1.04)}.ods-product-card__body{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);flex:1 1 auto;min-width:0}.ods-product-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-product-card__tag{align-self:flex-start;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1}.ods-product-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-product-card__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ods-product-card__rating{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-product-card__stars{display:inline-flex;gap:2px;color:var(--ods-status-pending-fg)}.ods-product-card__stars>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-product-card__rating-value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-weight:600;color:var(--ods-text-primary)}.ods-product-card__rating-count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-product-card__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);margin-top:var(--ods-space-2)}.ods-product-card__price-group{display:flex;align-items:baseline;gap:var(--ods-space-1)}.ods-product-card__price{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-product-card__strike{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);text-decoration:line-through}.ods-product-card__action{display:flex;align-items:center}.ods-blog-card{display:flex;flex-direction:column;overflow:hidden}.ods-blog-card__cover{width:100%;background:var(--ods-surface-subtle);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-blog-card__cover>img,.ods-blog-card__cover>video,.ods-blog-card__cover>svg{width:100%;height:100%;object-fit:cover;display:block}.ods-blog-card__cover--aspect-16-9{aspect-ratio:16/9}.ods-blog-card__cover--aspect-4-3{aspect-ratio:4/3}.ods-blog-card__cover--aspect-1-1{aspect-ratio:1/1}.ods-blog-card__cover--aspect-3-4{aspect-ratio:3/4}.ods-blog-card__cover--aspect-21-9{aspect-ratio:21/9}.ods-blog-card--interactive:hover .ods-blog-card__cover>img,.ods-blog-card--interactive:hover .ods-blog-card__cover>video{transform:scale(1.03)}.ods-blog-card__body{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);flex:1 1 auto;min-width:0}.ods-blog-card__meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ods-space-2)}.ods-blog-card__tags{display:inline-flex;flex-wrap:wrap;gap:var(--ods-space-1)}.ods-blog-card__tag{padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1}.ods-blog-card__date,.ods-blog-card__reading{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-blog-card__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-blog-card__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ods-blog-card__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);margin-top:var(--ods-space-2);padding-top:var(--ods-space-3);border-top:1px solid var(--ods-border-soft)}.ods-blog-card__author{display:inline-flex;align-items:center;gap:var(--ods-space-2);min-width:0;flex:1 1 auto}.ods-blog-card__author-text{display:inline-flex;flex-direction:column;min-width:0}.ods-blog-card__author-name{font-size:var(--ods-font-size-sm);font-weight:600;color:var(--ods-text-primary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-blog-card__author-byline{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:1.2}.ods-blog-card__action{flex-shrink:0;font-size:var(--ods-font-size-sm);color:var(--ods-accent);font-weight:500}.ods-blog-card--horizontal{flex-direction:row;align-items:stretch}.ods-blog-card--horizontal .ods-blog-card__cover{width:240px;flex-shrink:0;aspect-ratio:auto}.ods-blog-card--interactive{text-decoration:none;color:inherit}.ods-testimonial{display:flex;flex-direction:column;gap:var(--ods-space-4);padding:var(--ods-space-5);font-family:var(--ods-font-family-sans);margin:0}.ods-testimonial__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ods-space-2)}.ods-testimonial__quote{display:inline-flex;align-items:center;justify-content:center;color:var(--ods-accent-border)}.ods-testimonial__quote>svg{width:28px;height:28px;color:inherit !important;fill:currentColor}.ods-testimonial__logo{display:inline-flex;align-items:center;color:var(--ods-text-tertiary);max-height:28px}.ods-testimonial__logo>svg,.ods-testimonial__logo>img{max-height:28px;width:auto}.ods-testimonial__text{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);color:var(--ods-text-primary);line-height:var(--ods-line-height-base);font-style:italic}.ods-testimonial__rating{display:inline-flex;align-items:center;gap:2px}.ods-testimonial__star{color:var(--ods-border-strong)}.ods-testimonial__star>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-testimonial__star--on{color:var(--ods-status-pending)}.ods-testimonial__author{display:flex;align-items:center;gap:var(--ods-space-3)}.ods-testimonial__avatar{flex-shrink:0}.ods-testimonial__avatar--legacy{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--ods-radius-pill);background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-base);font-weight:600;overflow:hidden}.ods-testimonial__avatar--legacy img{width:100%;height:100%;object-fit:cover}.ods-testimonial__author-info{display:flex;flex-direction:column;gap:1px;min-width:0}.ods-testimonial__author-name{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-testimonial__author-role{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-testimonial--sm{gap:var(--ods-space-3);padding:var(--ods-space-4)}.ods-testimonial--sm .ods-testimonial__text{font-size:var(--ods-font-size-md)}.ods-testimonial--sm .ods-testimonial__quote>svg{width:22px;height:22px}.ods-testimonial--lg{gap:var(--ods-space-5);padding:var(--ods-space-6)}.ods-testimonial--lg .ods-testimonial__text{font-size:var(--ods-font-size-xl)}.ods-testimonial--lg .ods-testimonial__quote>svg{width:36px;height:36px}.ods-feature-card{display:flex;gap:var(--ods-space-3);padding:var(--ods-space-5)}.ods-feature-card__icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--ods-radius-1);flex-shrink:0;background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-feature-card__icon>svg{width:18px;height:18px;color:inherit !important;fill:currentColor}.ods-feature-card__body{display:flex;flex-direction:column;gap:var(--ods-space-2);flex:1 1 auto;min-width:0}.ods-feature-card__eyebrow{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-accent);line-height:1}.ods-feature-card__title{margin:0;font-size:var(--ods-font-size-lg);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-feature-card__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-feature-card__link{display:inline-flex;align-items:center;gap:var(--ods-space-1);align-self:flex-start;margin-top:var(--ods-space-1);border:0;padding:0;background:rgba(0,0,0,0);color:var(--ods-accent);font-family:inherit;font-size:var(--ods-font-size-md);font-weight:500;text-decoration:none;cursor:pointer;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-feature-card__link:hover{color:var(--ods-accent-hover, var(--ods-accent))}.ods-feature-card__link:hover .ods-feature-card__link-icon{transform:translateX(2px)}.ods-feature-card__link:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-feature-card__link-icon{display:inline-flex;align-items:center;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-feature-card__link-icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-feature-card--default .ods-feature-card__icon{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-feature-card--primary .ods-feature-card__icon{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-feature-card--success .ods-feature-card__icon{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-feature-card--warning .ods-feature-card__icon{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-feature-card--error .ods-feature-card__icon{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-feature-card--vertical{flex-direction:column}.ods-feature-card--horizontal{flex-direction:row;align-items:flex-start}.ods-feature-card--sm{padding:var(--ods-space-4);gap:var(--ods-space-2)}.ods-feature-card--sm .ods-feature-card__icon{width:28px;height:28px}.ods-feature-card--sm .ods-feature-card__icon>svg{width:14px;height:14px}.ods-feature-card--sm .ods-feature-card__title{font-size:var(--ods-font-size-md)}.ods-feature-card--sm .ods-feature-card__desc{font-size:var(--ods-font-size-sm)}.ods-feature-card--sm .ods-feature-card__link{font-size:var(--ods-font-size-sm)}.ods-feature-card--lg{padding:var(--ods-space-6);gap:var(--ods-space-4)}.ods-feature-card--lg .ods-feature-card__icon{width:40px;height:40px}.ods-feature-card--lg .ods-feature-card__icon>svg{width:22px;height:22px}.ods-feature-card--lg .ods-feature-card__title{font-size:var(--ods-font-size-xl)}.ods-feature-card--lg .ods-feature-card__desc{font-size:var(--ods-font-size-md)}.ods-feature-card--lg .ods-feature-card__link{font-size:var(--ods-font-size-md)}.ods-pricing{display:flex;flex-direction:column;gap:var(--ods-space-4);padding:var(--ods-space-6);font-family:var(--ods-font-family-sans)}.ods-pricing__head{display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-pricing__badge{align-self:flex-start;padding:1px var(--ods-space-2);border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1}.ods-pricing__name{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary)}.ods-pricing__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-pricing__price{display:flex;align-items:baseline;gap:var(--ods-space-1)}.ods-pricing__amount{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-3xl);font-weight:500;color:var(--ods-text-primary);line-height:1}.ods-pricing__period{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-pricing__sep{border:0;border-top:1px solid var(--ods-border-default);margin:0}.ods-pricing__features{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-pricing__feature{display:flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-base);color:var(--ods-text-primary)}.ods-pricing__feature--excluded{color:var(--ods-text-tertiary);text-decoration:line-through}.ods-pricing__feature-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.ods-pricing__feature-icon>svg{color:inherit !important;fill:currentColor}.ods-pricing__feature-icon--included{color:var(--ods-status-success-fg)}.ods-pricing__feature-icon--excluded{color:var(--ods-text-tertiary)}.ods-pricing__feature-text{flex:1 1 auto;min-width:0}.ods-pricing__cta{display:flex;flex-direction:column}.ods-pricing--highlighted .ods-pricing__period,.ods-pricing--highlighted .ods-pricing__feature--excluded,.ods-pricing--highlighted .ods-pricing__feature-icon--excluded{color:var(--ods-text-body)}.ods-choice-card{display:flex;flex-direction:column;gap:var(--ods-space-2);width:100%;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);text-align:left;cursor:pointer;padding:var(--ods-space-4);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-choice-card:hover:not(.ods-choice-card--disabled){border-color:var(--ods-border-strong);background:var(--ods-surface-subtle)}.ods-choice-card:focus-visible{outline:none;box-shadow:var(--ods-focus-ring);border-color:var(--ods-border-focus)}.ods-choice-card--selected{border-color:var(--ods-accent);background:var(--ods-accent-soft)}.ods-choice-card--disabled{opacity:.5;cursor:not-allowed}.ods-choice-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ods-space-2)}.ods-choice-card__icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body);flex-shrink:0}.ods-choice-card__icon>svg{width:16px;height:16px;color:inherit !important;fill:currentColor}.ods-choice-card--selected .ods-choice-card__icon{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-choice-card__check{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:1px solid var(--ods-border-strong);color:rgba(0,0,0,0);flex-shrink:0;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-choice-card__check[data-selection-mode=single]{border-radius:var(--ods-radius-pill)}.ods-choice-card__check[data-selection-mode=multiple]{border-radius:var(--ods-radius-1)}.ods-choice-card__check--on{background:var(--ods-accent);border-color:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-choice-card__check-icon{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%}.ods-choice-card__check-icon>svg{width:80%;height:80%;color:inherit !important;fill:currentColor}.ods-choice-card__badge{align-self:flex-start;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase}.ods-choice-card__body{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-choice-card__title{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-choice-card__desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-choice-card--horizontal{flex-direction:row;align-items:center;gap:var(--ods-space-3)}.ods-choice-card--horizontal .ods-choice-card__head{display:contents}.ods-choice-card--horizontal .ods-choice-card__body{flex:1 1 auto}.ods-choice-card--sm{gap:var(--ods-space-1-5);padding:var(--ods-space-3)}.ods-choice-card--sm .ods-choice-card__title{font-size:var(--ods-font-size-sm)}.ods-choice-card--sm .ods-choice-card__desc{font-size:var(--ods-font-size-xs)}.ods-choice-card--sm .ods-choice-card__icon{width:22px;height:22px}.ods-choice-card--sm .ods-choice-card__icon>svg{width:12px;height:12px}.ods-choice-card--sm .ods-choice-card__check{width:14px;height:14px}.ods-choice-card--lg{gap:var(--ods-space-3);padding:var(--ods-space-5)}.ods-choice-card--lg .ods-choice-card__title{font-size:var(--ods-font-size-lg)}.ods-choice-card--lg .ods-choice-card__desc{font-size:var(--ods-font-size-md)}.ods-choice-card--lg .ods-choice-card__icon{width:36px;height:36px}.ods-choice-card--lg .ods-choice-card__icon>svg{width:20px;height:20px}.ods-choice-card--lg .ods-choice-card__check{width:22px;height:22px}.ods-kanban-card{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-3);border-left-width:3px !important;border-left-style:solid !important;border-left-color:rgba(0,0,0,0) !important;transition:border-left-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-kanban-card--low{border-left-color:var(--ods-status-success) !important}.ods-kanban-card--medium{border-left-color:var(--ods-status-pending) !important}.ods-kanban-card--high{border-left-color:var(--ods-status-failed) !important}.ods-kanban-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);min-width:0}.ods-kanban-card__tags{display:inline-flex;flex-wrap:wrap;gap:4px;flex:1 1 auto;min-width:0}.ods-kanban-card__tag{padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1}.ods-kanban-card__badge{padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:700;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1}.ods-kanban-card__more{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;flex-shrink:0;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-kanban-card__more>svg{color:inherit !important;fill:currentColor}.ods-kanban-card__more:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-kanban-card__more:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-kanban-card__title{margin:0;font-size:var(--ods-font-size-base);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-kanban-card__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2)}.ods-kanban-card__meta{display:flex;align-items:center;gap:var(--ods-space-3);flex-wrap:wrap}.ods-kanban-card__date,.ods-kanban-card__comments{display:inline-flex;align-items:center;gap:4px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-kanban-card__date>svg,.ods-kanban-card__comments>svg{color:inherit !important;fill:currentColor}.ods-kanban-card__assignee{flex-shrink:0}.ods-kanban-card__assignee--legacy{width:20px;height:20px;border-radius:var(--ods-radius-pill);overflow:hidden;background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-xs);font-weight:600;display:inline-flex;align-items:center;justify-content:center}.ods-connector-card{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);font-family:var(--ods-font-family-sans)}.ods-connector-card--stretched{position:relative}.ods-connector-card__stretched-link{color:inherit;text-decoration:none}.ods-connector-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-connector-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-connector-card--stretched .ods-connector-card__action,.ods-connector-card--stretched .ods-connector-card__head-trailing{position:relative;z-index:2}.ods-connector-card__head{display:flex;align-items:flex-start;gap:var(--ods-space-3)}.ods-connector-card__logo{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body);overflow:hidden}.ods-connector-card__logo>svg{width:20px;height:20px;color:inherit !important;fill:currentColor}.ods-connector-card__logo>img{width:100%;height:100%;object-fit:contain}.ods-connector-card__head-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-connector-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-connector-card__meta{display:inline-flex;align-items:center;gap:var(--ods-space-1);flex-wrap:wrap}.ods-connector-card__chip{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-connector-card__chip-sep{color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs)}.ods-connector-card__head-trailing{display:inline-flex;align-items:center;gap:var(--ods-space-2);flex-shrink:0}.ods-connector-card__status{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-body);white-space:nowrap}.ods-connector-card__status-dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:currentColor;flex-shrink:0}.ods-connector-card__status-label{line-height:1}.ods-connector-card__status--connected{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:rgba(0,0,0,0)}.ods-connector-card__status--syncing{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:rgba(0,0,0,0)}.ods-connector-card__status--syncing .ods-connector-card__status-dot{animation:ods-connector-card-pulse 1.4s ease-in-out infinite}.ods-connector-card__status--configured{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:rgba(0,0,0,0)}.ods-connector-card__status--disconnected{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-connector-card__status--error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border-color:rgba(0,0,0,0)}.ods-connector-card__status--coming-soon{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:rgba(0,0,0,0)}.ods-connector-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-connector-card__stats{display:grid;grid-template-columns:1fr;gap:var(--ods-space-1);margin:0;padding-top:var(--ods-space-2);border-top:1px solid var(--ods-border-default)}.ods-connector-card__stat{display:flex;align-items:baseline;justify-content:space-between;gap:var(--ods-space-2)}.ods-connector-card__stat-label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-connector-card__stat-value{margin:0;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary)}.ods-connector-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-connector-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-connector-card__action{margin-top:var(--ods-space-1)}.ods-connector-card__action>button,.ods-connector-card__action>a{width:100%}.ods-connector-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-connector-card--sm .ods-connector-card__logo{width:28px;height:28px}.ods-connector-card--sm .ods-connector-card__logo>svg{width:16px;height:16px}.ods-connector-card--sm .ods-connector-card__name{font-size:var(--ods-font-size-sm)}.ods-connector-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-connector-card--lg .ods-connector-card__logo{width:48px;height:48px}.ods-connector-card--lg .ods-connector-card__logo>svg{width:24px;height:24px}.ods-connector-card--lg .ods-connector-card__name{font-size:var(--ods-font-size-lg)}.ods-connector-card--status-coming-soon .ods-connector-card__description,.ods-connector-card--status-coming-soon .ods-connector-card__stats,.ods-connector-card--status-coming-soon .ods-connector-card__tags{opacity:.7}@keyframes ods-connector-card-pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}@media(prefers-reduced-motion: reduce){.ods-connector-card__status--syncing .ods-connector-card__status-dot{animation:none}}.ods-metric-card{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);font-family:var(--ods-font-family-sans)}.ods-metric-card--stretched{position:relative}.ods-metric-card__stretched-link{color:inherit;text-decoration:none}.ods-metric-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-metric-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-metric-card--stretched .ods-metric-card__footer{position:relative;z-index:2}.ods-metric-card__head{display:flex;align-items:flex-start;gap:var(--ods-space-2)}.ods-metric-card__icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-metric-card__icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-metric-card__head-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-metric-card__label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);font-weight:500;line-height:var(--ods-line-height-tight)}.ods-metric-card__period{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-metric-card__trailing{flex-shrink:0}.ods-metric-card__main{display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-metric-card__value{font-family:var(--ods-font-family-sans);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-2xl);font-weight:600;color:var(--ods-text-primary);line-height:1.1;display:inline-flex;align-items:baseline;gap:4px}.ods-metric-card__unit{font-size:var(--ods-font-size-md);font-weight:500;color:var(--ods-text-tertiary)}.ods-metric-card__delta{display:inline-flex;align-items:center;gap:6px;font-size:var(--ods-font-size-sm)}.ods-metric-card__delta-glyph{display:inline-flex;align-items:center;justify-content:center}.ods-metric-card__delta-glyph>svg{width:12px;height:12px;color:inherit !important;fill:currentColor}.ods-metric-card__delta-value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-weight:500}.ods-metric-card__delta-suffix{color:var(--ods-text-tertiary)}.ods-metric-card__delta--success{color:var(--ods-status-success-fg)}.ods-metric-card__delta--failed{color:var(--ods-status-failed-fg)}.ods-metric-card__delta--neutral{color:var(--ods-text-tertiary)}.ods-metric-card__sparkline{width:100%;margin-top:var(--ods-space-1)}.ods-metric-card__sparkline>div{width:100%}.ods-metric-card__sparkline svg{width:100%;height:auto;display:block}.ods-metric-card__footer{padding-top:var(--ods-space-2);border-top:1px solid var(--ods-border-default);display:flex;justify-content:flex-end;align-items:center;font-size:var(--ods-font-size-sm)}.ods-metric-card__footer a,.ods-metric-card__footer button{color:var(--ods-accent);text-decoration:none;font-weight:500;background:none;border:none;padding:0;cursor:pointer}.ods-metric-card__footer a:hover,.ods-metric-card__footer button:hover{text-decoration:underline}.ods-metric-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-metric-card--sm .ods-metric-card__value{font-size:var(--ods-font-size-xl)}.ods-metric-card--sm .ods-metric-card__delta{font-size:var(--ods-font-size-xs)}.ods-metric-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-metric-card--lg .ods-metric-card__value{font-size:var(--ods-font-size-3xl)}.ods-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.ods-pipeline-card{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);font-family:var(--ods-font-family-sans)}.ods-pipeline-card--stretched{position:relative}.ods-pipeline-card__stretched-link{color:inherit;text-decoration:none}.ods-pipeline-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-pipeline-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-pipeline-card--stretched .ods-pipeline-card__head-actions{position:relative;z-index:2}.ods-pipeline-card__head{display:flex;align-items:flex-start;gap:var(--ods-space-3)}.ods-pipeline-card__ring{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px}.ods-pipeline-card__ring>svg{width:24px;height:24px;color:inherit}.ods-pipeline-card__ring--running{color:var(--ods-accent)}.ods-pipeline-card__ring--queued{color:var(--ods-text-tertiary)}.ods-pipeline-card__ring--succeeded{color:var(--ods-status-success-fg)}.ods-pipeline-card__ring--failed{color:var(--ods-status-failed-fg)}.ods-pipeline-card__ring--paused{color:var(--ods-status-pending-fg)}.ods-pipeline-card__ring--skipped{color:var(--ods-text-tertiary)}.ods-pipeline-card__ring--scheduled{color:var(--ods-accent)}.ods-pipeline-card__head-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:4px}.ods-pipeline-card__title-row{display:flex;align-items:center;gap:var(--ods-space-2);flex-wrap:wrap}.ods-pipeline-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-pipeline-card__status{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--ods-radius-pill);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1;white-space:nowrap}.ods-pipeline-card__status--running{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-pipeline-card__status--queued{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-pipeline-card__status--succeeded{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-pipeline-card__status--failed{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-pipeline-card__status--paused{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-pipeline-card__status--skipped{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-pipeline-card__status--scheduled{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-pipeline-card__route{display:inline-flex;align-items:center;flex-wrap:wrap;gap:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-pipeline-card__route-side{display:inline-flex;align-items:center;gap:4px;min-width:0}.ods-pipeline-card__route-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px}.ods-pipeline-card__route-icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-pipeline-card__route-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-pipeline-card__route-arrow{color:var(--ods-text-tertiary);opacity:.7}.ods-pipeline-card__head-actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.ods-pipeline-card__action-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-xs);font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease}.ods-pipeline-card__action-btn:hover{background:var(--ods-surface-muted)}.ods-pipeline-card__action-btn:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px}.ods-pipeline-card__action-btn:disabled{opacity:.5;cursor:not-allowed}.ods-pipeline-card__action-btn>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-pipeline-card__action-btn--icon{width:28px;height:28px;padding:0;justify-content:center}.ods-pipeline-card__meta{margin:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-pipeline-card__meta-item{display:flex;align-items:baseline;gap:4px}.ods-pipeline-card__meta-label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-pipeline-card__meta-value{margin:0;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-primary)}.ods-pipeline-card__sparkline{display:flex;flex-direction:column;gap:4px}.ods-pipeline-card__sparkline>div{width:100%}.ods-pipeline-card__sparkline svg{width:100%;height:auto;display:block}.ods-pipeline-card__sparkline-label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-pipeline-card__volume{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-pipeline-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-pipeline-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-pipeline-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-pipeline-card--sm .ods-pipeline-card__name{font-size:var(--ods-font-size-sm)}.ods-pipeline-card--sm .ods-pipeline-card__ring{width:22px;height:22px}.ods-pipeline-card--sm .ods-pipeline-card__ring>svg{width:18px;height:18px}.ods-pipeline-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-pipeline-card--lg .ods-pipeline-card__name{font-size:var(--ods-font-size-lg)}.ods-pipeline-card--lg .ods-pipeline-card__ring{width:32px;height:32px}.ods-pipeline-card--lg .ods-pipeline-card__ring>svg{width:28px;height:28px}.ods-alert-card{position:relative;display:flex;align-items:stretch;font-family:var(--ods-font-family-sans);overflow:hidden}.ods-alert-card__stretched-link{color:inherit;text-decoration:none}.ods-alert-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-alert-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-alert-card--stretched .ods-alert-card__actions,.ods-alert-card--stretched .ods-alert-card__trailing{position:relative;z-index:2}.ods-alert-card__stripe{flex-shrink:0;width:4px;align-self:stretch;background:var(--ods-text-tertiary)}.ods-alert-card__stripe--P0{background:var(--ods-status-failed-fg)}.ods-alert-card__stripe--P1{background:var(--ods-status-pending-fg)}.ods-alert-card__stripe--P2{background:var(--ods-accent)}.ods-alert-card__stripe--P3{background:var(--ods-text-tertiary)}.ods-alert-card__stripe--info{background:var(--ods-accent)}.ods-alert-card__content{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4)}.ods-alert-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);flex-wrap:wrap}.ods-alert-card__badges{display:inline-flex;align-items:center;gap:var(--ods-space-1);flex-wrap:wrap}.ods-alert-card__severity{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--ods-radius-pill);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1.2;white-space:nowrap}.ods-alert-card__severity--P0{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-alert-card__severity--P1{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-alert-card__severity--P2{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-alert-card__severity--P3{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-alert-card__severity--info{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-alert-card__state{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--ods-radius-pill);border:1px solid var(--ods-border-default);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1.2;white-space:nowrap}.ods-alert-card__state--open{border-color:var(--ods-status-failed-fg);color:var(--ods-status-failed-fg)}.ods-alert-card__state--acknowledged{border-color:var(--ods-status-pending-fg);color:var(--ods-status-pending-fg)}.ods-alert-card__state--resolved{border-color:var(--ods-status-success-fg);color:var(--ods-status-success-fg)}.ods-alert-card__state--muted{border-color:var(--ods-border-default);color:var(--ods-text-tertiary)}.ods-alert-card__trailing{flex-shrink:0}.ods-alert-card__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-alert-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-alert-card__resources{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}.ods-alert-card__resource{display:inline-flex;align-items:baseline;gap:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-alert-card__resource-kind{text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-alert-card__resource-label{color:var(--ods-text-primary)}.ods-alert-card__meta{margin:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-alert-card__meta-item{display:inline-flex;align-items:baseline;gap:4px}.ods-alert-card__meta-label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-alert-card__meta-value{margin:0;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-primary)}.ods-alert-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-alert-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-alert-card__actions{display:flex;flex-wrap:wrap;gap:var(--ods-space-1);margin-top:var(--ods-space-1)}.ods-alert-card__action-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--ods-radius-1);border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .08s ease}.ods-alert-card__action-btn:hover{background:var(--ods-surface-muted)}.ods-alert-card__action-btn:active{transform:translateY(1px)}.ods-alert-card__action-btn:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px}.ods-alert-card__action-btn:disabled{opacity:.5;cursor:not-allowed}.ods-alert-card__action-btn>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-alert-card__action-icon{display:inline-flex;align-items:center}.ods-alert-card__action-btn--primary{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-alert-card__action-btn--primary:hover{background:var(--ods-accent);filter:brightness(0.95)}.ods-alert-card__action-btn--success{background:var(--ods-status-success-fg);color:var(--ods-surface-canvas)}.ods-alert-card__action-btn--success:hover{background:var(--ods-status-success-fg);filter:brightness(0.95)}.ods-alert-card__action-btn--danger{background:var(--ods-status-failed-fg);color:var(--ods-surface-canvas)}.ods-alert-card__action-btn--danger:hover{background:var(--ods-status-failed-fg);filter:brightness(0.95)}.ods-alert-card__action-btn--neutral{border-color:var(--ods-border-default)}.ods-alert-card--state-resolved .ods-alert-card__title,.ods-alert-card--state-resolved .ods-alert-card__description,.ods-alert-card--state-resolved .ods-alert-card__resources,.ods-alert-card--state-muted .ods-alert-card__title,.ods-alert-card--state-muted .ods-alert-card__description,.ods-alert-card--state-muted .ods-alert-card__resources{opacity:.7}.ods-alert-card--sm .ods-alert-card__content{padding:var(--ods-space-3);gap:var(--ods-space-1)}.ods-alert-card--sm .ods-alert-card__title{font-size:var(--ods-font-size-sm)}.ods-alert-card--lg .ods-alert-card__content{padding:var(--ods-space-5);gap:var(--ods-space-3)}.ods-alert-card--lg .ods-alert-card__title{font-size:var(--ods-font-size-lg)}.ods-alert-card--lg .ods-alert-card__stripe{width:6px}.ods-dataset-card{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);font-family:var(--ods-font-family-sans)}.ods-dataset-card--stretched{position:relative}.ods-dataset-card__stretched-link{color:inherit;text-decoration:none}.ods-dataset-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-dataset-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-dataset-card--stretched .ods-dataset-card__footer,.ods-dataset-card--stretched .ods-dataset-card__trailing{position:relative;z-index:2}.ods-dataset-card__head{display:flex;align-items:flex-start;gap:var(--ods-space-3)}.ods-dataset-card__icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body);overflow:hidden}.ods-dataset-card__icon>svg{width:18px;height:18px;color:inherit !important;fill:currentColor}.ods-dataset-card__icon>img{width:100%;height:100%;object-fit:contain}.ods-dataset-card__head-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-dataset-card__title-row{display:flex;align-items:center;gap:var(--ods-space-2);flex-wrap:wrap}.ods-dataset-card__name{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight);word-break:break-all}.ods-dataset-card__health{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-muted);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1.2;white-space:nowrap}.ods-dataset-card__health-dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:currentColor;flex-shrink:0}.ods-dataset-card__health--fresh{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-dataset-card__health--stale{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-dataset-card__health--broken{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-dataset-card__health--unknown{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-dataset-card__health--verified{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-dataset-card__source{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-dataset-card__trailing{flex-shrink:0}.ods-dataset-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-dataset-card__stats{margin:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-dataset-card__stat{display:inline-flex;align-items:baseline;gap:4px}.ods-dataset-card__stat-label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-dataset-card__stat-value{margin:0;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary)}.ods-dataset-card__meta{display:flex;flex-wrap:wrap;gap:var(--ods-space-3);font-size:var(--ods-font-size-xs)}.ods-dataset-card__meta-item{display:inline-flex;align-items:baseline;gap:4px}.ods-dataset-card__meta-label{font-family:var(--ods-font-family-mono);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-dataset-card__meta-value{color:var(--ods-text-body)}.ods-dataset-card__footer-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);flex-wrap:wrap}.ods-dataset-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-dataset-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-dataset-card__footer{margin-left:auto;font-size:var(--ods-font-size-sm)}.ods-dataset-card__footer a,.ods-dataset-card__footer button{color:var(--ods-accent);text-decoration:none;font-weight:500;background:none;border:none;padding:0;cursor:pointer}.ods-dataset-card__footer a:hover,.ods-dataset-card__footer button:hover{text-decoration:underline}.ods-dataset-card--tile .ods-dataset-card__head{flex-direction:column;align-items:flex-start}.ods-dataset-card--sm{gap:var(--ods-space-1);padding:var(--ods-space-3)}.ods-dataset-card--sm .ods-dataset-card__name{font-size:var(--ods-font-size-sm)}.ods-dataset-card--sm .ods-dataset-card__icon{width:24px;height:24px}.ods-dataset-card--sm .ods-dataset-card__icon>svg{width:14px;height:14px}.ods-dataset-card--lg{gap:var(--ods-space-3);padding:var(--ods-space-5)}.ods-dataset-card--lg .ods-dataset-card__name{font-size:var(--ods-font-size-lg)}.ods-dataset-card--lg .ods-dataset-card__icon{width:40px;height:40px}.ods-dataset-card--lg .ods-dataset-card__icon>svg{width:22px;height:22px}.ods-dataset-card--health-broken{background:linear-gradient(to right, var(--ods-status-failed-bg) 0, transparent 6px)}.ods-integration-card{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);font-family:var(--ods-font-family-sans)}.ods-integration-card--stretched{position:relative}.ods-integration-card__stretched-link{color:inherit;text-decoration:none}.ods-integration-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-integration-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-integration-card--stretched .ods-integration-card__actions,.ods-integration-card--stretched .ods-integration-card__footer,.ods-integration-card--stretched .ods-integration-card__trailing{position:relative;z-index:2}.ods-integration-card__head{display:flex;align-items:flex-start;gap:var(--ods-space-3)}.ods-integration-card__logo{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body);overflow:hidden}.ods-integration-card__logo>svg{width:22px;height:22px;color:inherit !important;fill:currentColor}.ods-integration-card__logo>img{width:100%;height:100%;object-fit:contain}.ods-integration-card__head-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-integration-card__title-row{display:flex;align-items:center;gap:var(--ods-space-2);flex-wrap:wrap}.ods-integration-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-integration-card__meta{display:inline-flex;align-items:center;gap:var(--ods-space-2);flex-wrap:wrap}.ods-integration-card__category{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-integration-card__trailing{flex-shrink:0}.ods-integration-card__status{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-muted);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1.2;color:var(--ods-text-body);white-space:nowrap}.ods-integration-card__status-dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:currentColor;flex-shrink:0}.ods-integration-card__status-label{line-height:1}.ods-integration-card__status--connected{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-integration-card__status--not-configured{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-integration-card__status--error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-integration-card__status--coming-soon{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-integration-card__status--deprecated{background:var(--ods-surface-muted);color:var(--ods-text-tertiary);text-decoration:line-through}.ods-integration-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-integration-card__scopes{display:flex;flex-wrap:wrap;gap:4px}.ods-integration-card__scope{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);line-height:1.4;background:var(--ods-surface-canvas)}.ods-integration-card__scope--read{border-color:var(--ods-accent);color:var(--ods-accent)}.ods-integration-card__scope--write{border-color:var(--ods-status-pending-fg);color:var(--ods-status-pending-fg)}.ods-integration-card__scope--admin{border-color:var(--ods-status-failed-fg);color:var(--ods-status-failed-fg)}.ods-integration-card__scope--neutral{color:var(--ods-text-tertiary)}.ods-integration-card__sub-meta{display:flex;align-items:center;gap:var(--ods-space-3);flex-wrap:wrap}.ods-integration-card__connected-at{display:inline-flex;align-items:baseline;gap:4px;font-size:var(--ods-font-size-xs)}.ods-integration-card__sub-meta-label{font-family:var(--ods-font-family-mono);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-integration-card__sub-meta-value{font-family:var(--ods-font-family-mono);color:var(--ods-text-body)}.ods-integration-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-integration-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-integration-card__footer-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);flex-wrap:wrap;margin-top:var(--ods-space-1)}.ods-integration-card__actions{display:flex;flex-wrap:wrap;gap:var(--ods-space-1)}.ods-integration-card__footer{margin-left:auto;font-size:var(--ods-font-size-sm)}.ods-integration-card__footer a,.ods-integration-card__footer button{color:var(--ods-accent);text-decoration:none;font-weight:500;background:none;border:none;padding:0;cursor:pointer}.ods-integration-card__footer a:hover,.ods-integration-card__footer button:hover{text-decoration:underline}.ods-integration-card__action-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:rgba(0,0,0,0);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .08s ease}.ods-integration-card__action-btn:hover{background:var(--ods-surface-muted)}.ods-integration-card__action-btn:active{transform:translateY(1px)}.ods-integration-card__action-btn:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px}.ods-integration-card__action-btn:disabled{opacity:.5;cursor:not-allowed}.ods-integration-card__action-btn>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-integration-card__action-icon{display:inline-flex;align-items:center}.ods-integration-card__action-btn--primary{background:var(--ods-accent);color:var(--ods-surface-canvas);border-color:rgba(0,0,0,0)}.ods-integration-card__action-btn--primary:hover{background:var(--ods-accent);filter:brightness(0.95)}.ods-integration-card__action-btn--destructive{background:rgba(0,0,0,0);color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-fg)}.ods-integration-card__action-btn--destructive:hover{background:var(--ods-status-failed-bg)}.ods-integration-card--status-coming-soon .ods-integration-card__description,.ods-integration-card--status-coming-soon .ods-integration-card__scopes,.ods-integration-card--status-coming-soon .ods-integration-card__sub-meta,.ods-integration-card--status-deprecated .ods-integration-card__description,.ods-integration-card--status-deprecated .ods-integration-card__scopes,.ods-integration-card--status-deprecated .ods-integration-card__sub-meta{opacity:.7}.ods-integration-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-integration-card--sm .ods-integration-card__logo{width:32px;height:32px}.ods-integration-card--sm .ods-integration-card__logo>svg{width:18px;height:18px}.ods-integration-card--sm .ods-integration-card__name{font-size:var(--ods-font-size-sm)}.ods-integration-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-integration-card--lg .ods-integration-card__logo{width:48px;height:48px}.ods-integration-card--lg .ods-integration-card__logo>svg{width:26px;height:26px}.ods-integration-card--lg .ods-integration-card__name{font-size:var(--ods-font-size-lg)}.ods-template-card{display:flex;flex-direction:column;font-family:var(--ods-font-family-sans);overflow:hidden}.ods-template-card--stretched{position:relative}.ods-template-card__stretched-link{color:inherit;text-decoration:none}.ods-template-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-template-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-template-card--stretched .ods-template-card__cta,.ods-template-card--stretched .ods-template-card__footer{position:relative;z-index:2}.ods-template-card__image{position:relative;width:100%;background:var(--ods-surface-muted);color:var(--ods-text-tertiary);display:flex;align-items:center;justify-content:center;overflow:hidden}.ods-template-card__image>img,.ods-template-card__image>svg{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.ods-template-card__image>svg{object-fit:contain}.ods-template-card:hover .ods-template-card__image>img,.ods-template-card:hover .ods-template-card__image>svg{transform:scale(1.03)}.ods-template-card__image--ratio-16-9{aspect-ratio:16/9}.ods-template-card__image--ratio-4-3{aspect-ratio:4/3}.ods-template-card__image--ratio-1-1{aspect-ratio:1/1}.ods-template-card__image--ratio-3-4{aspect-ratio:3/4}.ods-template-card__image--ratio-21-9{aspect-ratio:21/9}.ods-template-card__image--icon{background:var(--ods-surface-muted)}.ods-template-card__icon{display:inline-flex;align-items:center;justify-content:center;color:inherit}.ods-template-card__icon>svg{width:56px;height:56px;color:inherit !important;fill:currentColor;transition:transform .4s ease}.ods-template-card:hover .ods-template-card__image--icon .ods-template-card__icon>svg{transform:scale(1.05)}.ods-template-card__image--tone-default{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-template-card__image--tone-primary{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-template-card__image--tone-success{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-template-card__image--tone-warning{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-template-card__image--tone-error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-template-card__image--tone-info{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-template-card__image--flow{background:var(--ods-surface-muted);padding:var(--ods-space-3)}.ods-template-card__icon-flow{display:inline-flex;align-items:center;gap:var(--ods-space-2);flex-wrap:wrap;justify-content:center;max-width:100%}.ods-template-card__icon-flow-item{display:inline-flex;align-items:center;gap:var(--ods-space-2)}.ods-template-card__icon-tile{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--ods-radius-2);flex-shrink:0;transition:transform .4s ease}.ods-template-card__icon-tile>svg{width:28px;height:28px;color:inherit !important;fill:currentColor}.ods-template-card:hover .ods-template-card__icon-tile{transform:scale(1.05)}.ods-template-card__icon-tile--tone-default{background:var(--ods-surface-canvas);color:var(--ods-text-body);box-shadow:inset 0 0 0 1px var(--ods-border-default)}.ods-template-card__icon-tile--tone-primary{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-template-card__icon-tile--tone-success{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-template-card__icon-tile--tone-warning{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-template-card__icon-tile--tone-error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-template-card__icon-tile--tone-info{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-template-card__icon-connector{display:inline-flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary);font-family:var(--ods-font-family-sans);font-size:22px;line-height:1;user-select:none}.ods-template-card__icon-connector>svg{width:22px;height:22px;color:inherit !important;fill:currentColor}.ods-template-card__badge{position:absolute;top:var(--ods-space-2);left:var(--ods-space-2);padding:2px 8px;border-radius:var(--ods-radius-pill);background:var(--ods-accent);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1.2}.ods-template-card__content{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);flex:1 1 auto}.ods-template-card__category{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);line-height:1}.ods-template-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-template-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-template-card__requirements{display:flex;flex-wrap:wrap;gap:4px}.ods-template-card__requirement{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-body);line-height:1.4}.ods-template-card__stats{margin:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-template-card__stat{display:inline-flex;align-items:baseline;gap:4px}.ods-template-card__stat-label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-template-card__stat-value{margin:0;display:inline-flex;align-items:center;gap:4px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-primary)}.ods-template-card__stat-icon{display:inline-flex;align-items:center;color:var(--ods-text-tertiary)}.ods-template-card__stat-icon>svg{width:12px;height:12px;color:inherit !important;fill:currentColor}.ods-template-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-template-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-template-card__footer-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);flex-wrap:wrap;margin-top:auto;padding-top:var(--ods-space-2);border-top:1px solid var(--ods-border-default)}.ods-template-card__author{display:inline-flex;align-items:center;gap:6px;min-width:0}.ods-template-card__author-avatar{flex-shrink:0}.ods-template-card__author-name{font-size:var(--ods-font-size-xs);color:var(--ods-text-body);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-template-card__author-byline{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-template-card__footer-actions{display:inline-flex;align-items:center;gap:var(--ods-space-2)}.ods-template-card__footer{font-size:var(--ods-font-size-sm)}.ods-template-card__footer a,.ods-template-card__footer button{color:var(--ods-accent);text-decoration:none;font-weight:500;background:none;border:none;padding:0;cursor:pointer}.ods-template-card__footer a:hover,.ods-template-card__footer button:hover{text-decoration:underline}.ods-template-card--sm .ods-template-card__content{padding:var(--ods-space-3);gap:var(--ods-space-1)}.ods-template-card--sm .ods-template-card__name{font-size:var(--ods-font-size-sm)}.ods-template-card--sm .ods-template-card__icon>svg{width:40px;height:40px}.ods-template-card--sm .ods-template-card__icon-tile{width:44px;height:44px}.ods-template-card--sm .ods-template-card__icon-tile>svg{width:22px;height:22px}.ods-template-card--sm .ods-template-card__icon-connector{font-size:18px}.ods-template-card--sm .ods-template-card__icon-connector>svg{width:18px;height:18px}.ods-template-card--lg .ods-template-card__content{padding:var(--ods-space-5);gap:var(--ods-space-3)}.ods-template-card--lg .ods-template-card__name{font-size:var(--ods-font-size-lg)}.ods-template-card--lg .ods-template-card__icon>svg{width:72px;height:72px}.ods-template-card--lg .ods-template-card__icon-tile{width:64px;height:64px}.ods-template-card--lg .ods-template-card__icon-tile>svg{width:32px;height:32px}.ods-template-card--lg .ods-template-card__icon-connector{font-size:26px}.ods-template-card--lg .ods-template-card__icon-connector>svg{width:26px;height:26px}.ods-pagination{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ods-space-3);font-family:var(--ods-font-family-sans);color:var(--ods-text-body)}.ods-pagination__total{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);margin-right:auto}.ods-pagination__controls{display:inline-flex;align-items:center;gap:2px}.ods-pagination__pages{list-style:none;margin:0;padding:0;display:inline-flex;align-items:center;gap:2px}.ods-pagination__compact-label{padding:0 var(--ods-space-2);font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-pagination__compact-label strong{color:var(--ods-text-primary);font-weight:600}.ods-pagination__btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);line-height:1;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.ods-pagination__btn:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-pagination__btn:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px}.ods-pagination__btn:disabled{cursor:not-allowed;opacity:.45}.ods-pagination__btn>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-pagination__btn--icon{width:32px;padding:0}.ods-pagination__btn--current{background:var(--ods-accent);color:var(--ods-surface-canvas);border-color:rgba(0,0,0,0);font-weight:600}.ods-pagination__btn--current:hover:not(:disabled){background:var(--ods-accent);filter:brightness(0.95)}.ods-pagination__ellipsis{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);user-select:none}.ods-pagination__jump{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-pagination__jump-label{color:var(--ods-text-tertiary)}.ods-pagination__jump-input{width:60px;height:32px;padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);text-align:center}.ods-pagination__jump-input::-webkit-outer-spin-button,.ods-pagination__jump-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ods-pagination__jump-input{-moz-appearance:textfield}.ods-pagination__jump-input:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px;border-color:var(--ods-accent)}.ods-pagination__page-size{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-pagination__page-size-label{color:var(--ods-text-tertiary)}.ods-pagination__page-size-select{height:32px;padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);cursor:pointer}.ods-pagination__page-size-select:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px;border-color:var(--ods-accent)}.ods-pagination--sm{gap:var(--ods-space-2)}.ods-pagination--sm .ods-pagination__btn,.ods-pagination--sm .ods-pagination__ellipsis,.ods-pagination--sm .ods-pagination__jump-input,.ods-pagination--sm .ods-pagination__page-size-select{min-width:28px;height:28px;font-size:var(--ods-font-size-xs)}.ods-pagination--sm .ods-pagination__btn--icon{width:28px}.ods-pagination--sm .ods-pagination__ellipsis{width:28px}.ods-pagination--lg .ods-pagination__btn,.ods-pagination--lg .ods-pagination__ellipsis,.ods-pagination--lg .ods-pagination__jump-input,.ods-pagination--lg .ods-pagination__page-size-select{min-width:36px;height:36px;font-size:var(--ods-font-size-md)}.ods-pagination--lg .ods-pagination__btn--icon{width:36px}.ods-pagination--lg .ods-pagination__ellipsis{width:36px}.ods-pagination--lg .ods-pagination__btn>svg{width:16px;height:16px}.ods-pagination--compact{gap:var(--ods-space-2)}.ods-pagination--disabled{opacity:.7;pointer-events:none}.ods-stepper{list-style:none;margin:0;padding:0;font-family:var(--ods-font-family-sans);color:var(--ods-text-body)}.ods-stepper--horizontal{display:flex;align-items:flex-start;gap:0}.ods-stepper--horizontal .ods-stepper__step{display:flex;align-items:flex-start;flex:1 1 0;min-width:0}.ods-stepper--horizontal .ods-stepper__step-btn,.ods-stepper--horizontal .ods-stepper__step-static{flex-direction:column;align-items:center;text-align:center;gap:var(--ods-space-2);padding:var(--ods-space-2);min-width:0}.ods-stepper--horizontal .ods-stepper__connector{flex:1 1 auto;height:2px;margin-top:22px;min-width:24px}.ods-stepper--vertical{display:flex;flex-direction:column;gap:0}.ods-stepper--vertical .ods-stepper__step{display:flex;flex-direction:column;align-items:stretch}.ods-stepper--vertical .ods-stepper__step-btn,.ods-stepper--vertical .ods-stepper__step-static{flex-direction:row;align-items:flex-start;text-align:left;gap:var(--ods-space-3);padding:var(--ods-space-2) 0}.ods-stepper--vertical .ods-stepper__connector{width:2px;min-height:var(--ods-space-4);margin-left:13px}.ods-stepper__step-btn,.ods-stepper__step-static{display:inline-flex;background:rgba(0,0,0,0);border:0;color:inherit;font-family:inherit;font-size:inherit;width:100%;cursor:default}.ods-stepper__step-btn:focus-visible,.ods-stepper__step-static:focus-visible{outline:2px solid var(--ods-accent);outline-offset:4px;border-radius:var(--ods-radius-1)}.ods-stepper--interactive .ods-stepper__step-btn:not(:disabled){cursor:pointer}.ods-stepper--interactive .ods-stepper__step-btn:not(:disabled):hover .ods-stepper__indicator{transform:scale(1.05)}.ods-stepper__step-btn:disabled{cursor:not-allowed;opacity:.5}.ods-stepper__indicator{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--ods-radius-pill);flex-shrink:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;line-height:1;transition:transform .16s ease}.ods-stepper__indicator>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-stepper__indicator-num{line-height:1}.ods-stepper__indicator--pending{background:var(--ods-surface-muted);color:var(--ods-text-tertiary);box-shadow:inset 0 0 0 1px var(--ods-border-default)}.ods-stepper__indicator--active{background:var(--ods-accent);color:var(--ods-surface-canvas);box-shadow:0 0 0 4px var(--ods-accent-soft)}.ods-stepper__indicator--complete{background:var(--ods-status-success-fg);color:var(--ods-surface-canvas)}.ods-stepper__indicator--error{background:var(--ods-status-failed-fg);color:var(--ods-surface-canvas)}.ods-stepper__label-text{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-stepper__label-title{font-size:var(--ods-font-size-sm);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-stepper__label-optional{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-stepper__label-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-base)}.ods-stepper__step--active .ods-stepper__label-title{color:var(--ods-text-primary)}.ods-stepper__step--complete .ods-stepper__label-title{color:var(--ods-text-body)}.ods-stepper__step--pending .ods-stepper__label-title{color:var(--ods-text-tertiary)}.ods-stepper__step--error .ods-stepper__label-title{color:var(--ods-status-failed-fg)}.ods-stepper__connector{background:var(--ods-border-default);flex-shrink:0;transition:background .18s ease}.ods-stepper__connector--complete{background:var(--ods-status-success-fg)}.ods-stepper--sm .ods-stepper__indicator{width:22px;height:22px;font-size:10px}.ods-stepper--sm .ods-stepper__indicator>svg{width:12px;height:12px}.ods-stepper--sm .ods-stepper__label-title{font-size:var(--ods-font-size-xs)}.ods-stepper--sm.ods-stepper--horizontal .ods-stepper__connector{margin-top:19px}.ods-stepper--sm.ods-stepper--vertical .ods-stepper__connector{margin-left:10px}.ods-stepper--lg .ods-stepper__indicator{width:36px;height:36px;font-size:var(--ods-font-size-sm)}.ods-stepper--lg .ods-stepper__indicator>svg{width:18px;height:18px}.ods-stepper--lg .ods-stepper__label-title{font-size:var(--ods-font-size-md)}.ods-stepper--lg.ods-stepper--horizontal .ods-stepper__connector{margin-top:26px}.ods-stepper--lg.ods-stepper--vertical .ods-stepper__connector{margin-left:17px}.ods-stepper--disabled{opacity:.7;pointer-events:none}@media(prefers-reduced-motion: reduce){.ods-stepper__indicator,.ods-stepper__connector{transition:none}}.ods-cmdk{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:10vh var(--ods-space-4) var(--ods-space-4);background:rgba(0,0,0,.5);font-family:var(--ods-font-family-sans)}.ods-cmdk__panel-wrap{width:100%;max-width:640px}.ods-cmdk__panel{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:0 24px 48px rgba(0,0,0,.18),0 4px 12px rgba(0,0,0,.08);overflow:hidden;max-height:70vh}.ods-cmdk__searchbar{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-4);border-bottom:1px solid var(--ods-border-default)}.ods-cmdk__search-icon{color:var(--ods-text-tertiary);flex-shrink:0}.ods-cmdk__input{flex:1 1 auto;min-width:0;background:rgba(0,0,0,0);border:0;outline:none;color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-md);line-height:var(--ods-line-height-base)}.ods-cmdk__input::placeholder{color:var(--ods-text-tertiary)}.ods-cmdk__esc-hint{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1.4;flex-shrink:0}.ods-cmdk__list{flex:1 1 auto;overflow-y:auto;padding:var(--ods-space-2);min-height:80px}.ods-cmdk__list::-webkit-scrollbar{width:8px}.ods-cmdk__list::-webkit-scrollbar-thumb{background:var(--ods-border-default);border-radius:var(--ods-radius-pill)}.ods-cmdk__list::-webkit-scrollbar-thumb:hover{background:var(--ods-border-strong, var(--ods-text-tertiary))}.ods-cmdk__group+.ods-cmdk__group{margin-top:var(--ods-space-3)}.ods-cmdk__group-heading{position:sticky;top:0;z-index:1;padding:var(--ods-space-2) var(--ods-space-3) var(--ods-space-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:500;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-cmdk__option{display:flex;align-items:center;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);border-radius:var(--ods-radius-1);cursor:pointer;color:var(--ods-text-body);transition:background .08s ease}.ods-cmdk__option--active{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-cmdk__option--danger{color:var(--ods-status-failed-fg)}.ods-cmdk__option--danger.ods-cmdk__option--active{background:var(--ods-status-failed-bg)}.ods-cmdk__option--disabled{opacity:.5;cursor:not-allowed}.ods-cmdk__option--disabled.ods-cmdk__option--active{background:rgba(0,0,0,0)}.ods-cmdk__option-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;color:var(--ods-text-tertiary)}.ods-cmdk__option-icon>svg{width:16px;height:16px;color:inherit !important;fill:currentColor}.ods-cmdk__option--active .ods-cmdk__option-icon{color:var(--ods-accent)}.ods-cmdk__option-body{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1 auto}.ods-cmdk__option-label{font-size:var(--ods-font-size-sm);font-weight:500;color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-cmdk__option-desc{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-cmdk__option-shortcut{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1.4;flex-shrink:0}.ods-cmdk__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ods-space-6);text-align:center;gap:4px}.ods-cmdk__empty-title{margin:0;font-size:var(--ods-font-size-md);color:var(--ods-text-body);font-weight:600}.ods-cmdk__empty-hint{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-cmdk__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-4);border-top:1px solid var(--ods-border-default);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs)}@media(prefers-reduced-motion: reduce){.ods-cmdk__option{transition:none}}.ods-segmented{display:inline-flex;align-items:stretch;gap:2px;padding:2px;border-radius:var(--ods-radius-2);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-segmented--full{display:flex;width:100%}.ods-segmented--full .ods-segmented__segment{flex:1 1 0}.ods-segmented--disabled{opacity:.6;pointer-events:none}.ods-segmented__segment{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:var(--ods-space-1) var(--ods-space-3);height:30px;border-radius:calc(var(--ods-radius-2) - 2px);background:rgba(0,0,0,0);border:0;color:var(--ods-text-tertiary);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;line-height:1;cursor:pointer;transition:color .16s ease}.ods-segmented__segment:hover:not(:disabled):not(.ods-segmented__segment--selected){color:var(--ods-text-body)}.ods-segmented__segment:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px}.ods-segmented__segment:disabled{cursor:not-allowed;opacity:.5}.ods-segmented__segment--selected{color:var(--ods-text-primary)}.ods-segmented__indicator{position:absolute;inset:0;z-index:0;border-radius:inherit;background:var(--ods-surface-canvas);box-shadow:0 1px 2px rgba(0,0,0,.08),0 0 0 1px var(--ods-border-default)}.ods-segmented__icon,.ods-segmented__label{position:relative;z-index:1;display:inline-flex;align-items:center;line-height:1}.ods-segmented__icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-segmented--icon-only .ods-segmented__segment{padding:0;width:30px}.ods-segmented--sm{padding:1px;gap:1px}.ods-segmented--sm .ods-segmented__segment{height:24px;padding:0 var(--ods-space-2);font-size:var(--ods-font-size-xs)}.ods-segmented--sm .ods-segmented__icon>svg{width:12px;height:12px}.ods-segmented--sm.ods-segmented--icon-only .ods-segmented__segment{width:24px}.ods-segmented--lg .ods-segmented__segment{height:38px;padding:0 var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-segmented--lg .ods-segmented__icon>svg{width:16px;height:16px}.ods-segmented--lg.ods-segmented--icon-only .ods-segmented__segment{width:38px}.ods-tree{--ods-tree-indent: 18px;list-style:none;margin:0;padding:var(--ods-space-1) 0;font-family:var(--ods-font-family-sans);color:var(--ods-text-body)}.ods-tree__node{list-style:none;margin:0;padding:0}.ods-tree__node:focus-visible{outline:none}.ods-tree__node:focus-visible>.ods-tree__row{outline:2px solid var(--ods-accent);outline-offset:-2px;border-radius:var(--ods-radius-1)}.ods-tree__group{list-style:none;margin:0;padding:0;overflow:hidden}.ods-tree__row{display:flex;align-items:center;gap:6px;min-height:28px;padding-right:var(--ods-space-2);cursor:pointer;user-select:none;color:var(--ods-text-body);transition:background .08s ease}.ods-tree__row:hover{background:var(--ods-surface-muted)}.ods-tree__node--selected>.ods-tree__row{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:500}.ods-tree__node--disabled>.ods-tree__row{opacity:.5;cursor:not-allowed}.ods-tree__node--disabled>.ods-tree__row:hover{background:rgba(0,0,0,0)}.ods-tree__twisty{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;flex-shrink:0;border-radius:var(--ods-radius-1);transition:transform .12s ease,background .12s ease}.ods-tree__twisty:hover:not(:disabled){background:rgba(0,0,0,.05)}.ods-tree__twisty>svg{width:12px;height:12px;color:inherit !important;fill:currentColor}.ods-tree__twisty--leaf{cursor:default;visibility:hidden}.ods-tree__twisty--open{transform:rotate(90deg)}.ods-tree__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-tree__icon>svg{width:16px;height:16px;color:inherit !important;fill:currentColor}.ods-tree__node--selected>.ods-tree__row>.ods-tree__icon{color:var(--ods-accent)}.ods-tree__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ods-font-size-sm)}.ods-tree__trailing{flex-shrink:0;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs)}.ods-tree__loading,.ods-tree__empty{list-style:none;margin:0;padding:var(--ods-space-1) var(--ods-space-2);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-tree--guides .ods-tree__group{position:relative}.ods-tree--guides .ods-tree__group::before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--ods-tree-indent)/2 - 1px);width:1px;background:var(--ods-border-default)}.ods-tree--guides .ods-tree__group .ods-tree__group::before{left:calc(var(--ods-tree-indent)/2 - 1px)}.ods-tree--sm{--ods-tree-indent: 14px}.ods-tree--sm .ods-tree__row{min-height:24px}.ods-tree--sm .ods-tree__label{font-size:var(--ods-font-size-xs)}.ods-tree--sm .ods-tree__icon>svg{width:14px;height:14px}.ods-tree--lg{--ods-tree-indent: 22px}.ods-tree--lg .ods-tree__row{min-height:34px}.ods-tree--lg .ods-tree__label{font-size:var(--ods-font-size-md)}.ods-tree--lg .ods-tree__icon{width:18px;height:18px}.ods-tree--lg .ods-tree__icon>svg{width:18px;height:18px}.ods-tree--disabled{opacity:.7;pointer-events:none}@media(prefers-reduced-motion: reduce){.ods-tree__twisty,.ods-tree__row{transition:none}}.ods-ctxmenu{position:fixed;z-index:1100;min-width:200px;max-width:320px;padding:var(--ods-space-1) 0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:0 12px 28px rgba(0,0,0,.18),0 2px 6px rgba(0,0,0,.08);font-family:var(--ods-font-family-sans);color:var(--ods-text-body);outline:none}.ods-ctxmenu__list{list-style:none;margin:0;padding:0}.ods-ctxmenu__item{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-3);cursor:pointer;font-size:var(--ods-font-size-sm);line-height:1.4;color:var(--ods-text-body);user-select:none;transition:background .08s ease,color .08s ease}.ods-ctxmenu__item--active{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-ctxmenu__item--danger{color:var(--ods-status-failed-fg)}.ods-ctxmenu__item--danger.ods-ctxmenu__item--active{background:var(--ods-status-failed-bg)}.ods-ctxmenu__item--disabled{cursor:not-allowed;opacity:.5}.ods-ctxmenu__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-text-tertiary)}.ods-ctxmenu__icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-ctxmenu__item--active .ods-ctxmenu__icon{color:var(--ods-accent)}.ods-ctxmenu__item--danger .ods-ctxmenu__icon{color:inherit}.ods-ctxmenu__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-ctxmenu__shortcut{flex-shrink:0;padding:1px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1.4}.ods-ctxmenu__separator{list-style:none;margin:var(--ods-space-1) 0;height:1px;background:var(--ods-border-default);pointer-events:none}@media(prefers-reduced-motion: reduce){.ods-ctxmenu__item{transition:none}}.ods-stack{display:flex;flex-direction:column;min-width:0}.ods-stack--inline{display:inline-flex}.ods-stack--full{width:100%}.ods-stack--dir-row{flex-direction:row}.ods-stack--dir-column{flex-direction:column}.ods-stack--dir-row-reverse{flex-direction:row-reverse}.ods-stack--dir-column-reverse{flex-direction:column-reverse}.ods-grid{display:grid;min-width:0}.ods-grid__item{min-width:0;min-height:0}.ods-divider{border:0;margin:0;background:rgba(0,0,0,0);flex-shrink:0}.ods-divider--horizontal{width:100%;height:0;border-top:1px solid var(--ods-border-default)}.ods-divider--vertical{width:0;align-self:stretch;border-left:1px solid var(--ods-border-default)}.ods-divider--solid.ods-divider--horizontal{border-top-style:solid}.ods-divider--solid.ods-divider--vertical{border-left-style:solid}.ods-divider--dashed.ods-divider--horizontal{border-top-style:dashed}.ods-divider--dashed.ods-divider--vertical{border-left-style:dashed}.ods-divider--dotted.ods-divider--horizontal{border-top-style:dotted}.ods-divider--dotted.ods-divider--vertical{border-left-style:dotted}.ods-divider--tone-default{border-color:var(--ods-border-default)}.ods-divider--tone-subtle{border-color:var(--ods-surface-muted)}.ods-divider--tone-strong{border-color:var(--ods-text-tertiary)}.ods-divider--tone-accent{border-color:var(--ods-accent)}.ods-divider--spacing-0.ods-divider--horizontal{margin-top:var(--ods-space-0);margin-bottom:var(--ods-space-0)}.ods-divider--spacing-0.ods-divider--vertical{margin-left:var(--ods-space-0);margin-right:var(--ods-space-0)}.ods-divider--spacing-1.ods-divider--horizontal{margin-top:var(--ods-space-1);margin-bottom:var(--ods-space-1)}.ods-divider--spacing-1.ods-divider--vertical{margin-left:var(--ods-space-1);margin-right:var(--ods-space-1)}.ods-divider--spacing-2.ods-divider--horizontal{margin-top:var(--ods-space-2);margin-bottom:var(--ods-space-2)}.ods-divider--spacing-2.ods-divider--vertical{margin-left:var(--ods-space-2);margin-right:var(--ods-space-2)}.ods-divider--spacing-3.ods-divider--horizontal{margin-top:var(--ods-space-3);margin-bottom:var(--ods-space-3)}.ods-divider--spacing-3.ods-divider--vertical{margin-left:var(--ods-space-3);margin-right:var(--ods-space-3)}.ods-divider--spacing-4.ods-divider--horizontal{margin-top:var(--ods-space-4);margin-bottom:var(--ods-space-4)}.ods-divider--spacing-4.ods-divider--vertical{margin-left:var(--ods-space-4);margin-right:var(--ods-space-4)}.ods-divider--spacing-5.ods-divider--horizontal{margin-top:var(--ods-space-5);margin-bottom:var(--ods-space-5)}.ods-divider--spacing-5.ods-divider--vertical{margin-left:var(--ods-space-5);margin-right:var(--ods-space-5)}.ods-divider--spacing-6.ods-divider--horizontal{margin-top:var(--ods-space-6);margin-bottom:var(--ods-space-6)}.ods-divider--spacing-6.ods-divider--vertical{margin-left:var(--ods-space-6);margin-right:var(--ods-space-6)}.ods-divider--spacing-7.ods-divider--horizontal{margin-top:var(--ods-space-7);margin-bottom:var(--ods-space-7)}.ods-divider--spacing-7.ods-divider--vertical{margin-left:var(--ods-space-7);margin-right:var(--ods-space-7)}.ods-divider--spacing-8.ods-divider--horizontal{margin-top:var(--ods-space-8);margin-bottom:var(--ods-space-8)}.ods-divider--spacing-8.ods-divider--vertical{margin-left:var(--ods-space-8);margin-right:var(--ods-space-8)}.ods-divider--full{width:100%}.ods-divider--labeled{display:flex;align-items:center;gap:var(--ods-space-3)}.ods-divider--labeled.ods-divider--horizontal{width:100%;border:0}.ods-divider--labeled.ods-divider--vertical{flex-direction:column;align-self:stretch;width:auto;border:0}.ods-divider--labeled .ods-divider__line{flex:1 1 auto;border-color:inherit}.ods-divider--labeled.ods-divider--horizontal .ods-divider__line{height:0;border-top:1px solid var(--ods-border-default)}.ods-divider--labeled.ods-divider--vertical .ods-divider__line{width:0;border-left:1px solid var(--ods-border-default)}.ods-divider--labeled.ods-divider--dashed.ods-divider--horizontal .ods-divider__line{border-top-style:dashed}.ods-divider--labeled.ods-divider--dotted.ods-divider--horizontal .ods-divider__line{border-top-style:dotted}.ods-divider--labeled.ods-divider--dashed.ods-divider--vertical .ods-divider__line{border-left-style:dashed}.ods-divider--labeled.ods-divider--dotted.ods-divider--vertical .ods-divider__line{border-left-style:dotted}.ods-divider--labeled.ods-divider--tone-subtle .ods-divider__line{border-color:var(--ods-surface-muted)}.ods-divider--labeled.ods-divider--tone-strong .ods-divider__line{border-color:var(--ods-text-tertiary)}.ods-divider--labeled.ods-divider--tone-accent .ods-divider__line{border-color:var(--ods-accent)}.ods-divider--labeled .ods-divider__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);white-space:nowrap}.ods-accordion{display:flex;flex-direction:column;font-family:var(--ods-font-family-sans)}.ods-accordion--disabled{opacity:.7;pointer-events:none}.ods-accordion__item{border-bottom:1px solid var(--ods-border-default)}.ods-accordion__item:last-child{border-bottom:0}.ods-accordion--bordered{border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);overflow:hidden}.ods-accordion--separated{gap:var(--ods-space-2)}.ods-accordion--separated .ods-accordion__item{border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);overflow:hidden}.ods-accordion__trigger{display:flex;align-items:center;gap:var(--ods-space-3);width:100%;padding:var(--ods-space-3) var(--ods-space-4);background:rgba(0,0,0,0);border:0;text-align:left;color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-md);font-weight:500;line-height:1.4;cursor:pointer;transition:background .12s ease}.ods-accordion__trigger:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-accordion__trigger:focus-visible{outline:2px solid var(--ods-accent);outline-offset:-2px}.ods-accordion__trigger:disabled{cursor:not-allowed;opacity:.55}.ods-accordion__icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-accordion__icon>svg{width:18px;height:18px;color:inherit !important;fill:currentColor}.ods-accordion__label-wrap{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.ods-accordion__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-accordion__description{font-size:var(--ods-font-size-sm);font-weight:400;color:var(--ods-text-tertiary)}.ods-accordion__trailing{flex-shrink:0;color:var(--ods-text-tertiary)}.ods-accordion__chevron{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform .16s ease}.ods-accordion__chevron>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-accordion__chevron--open{transform:rotate(180deg)}.ods-accordion__content{padding:0 var(--ods-space-4) var(--ods-space-4);color:var(--ods-text-body);font-size:var(--ods-font-size-sm);line-height:var(--ods-line-height-base)}.ods-accordion--sm .ods-accordion__trigger{padding:var(--ods-space-2) var(--ods-space-3);font-size:var(--ods-font-size-sm)}.ods-accordion--sm .ods-accordion__content{padding:0 var(--ods-space-3) var(--ods-space-3);font-size:var(--ods-font-size-xs)}.ods-accordion--sm .ods-accordion__icon,.ods-accordion--sm .ods-accordion__chevron{width:16px;height:16px}.ods-accordion--sm .ods-accordion__icon>svg{width:14px;height:14px}.ods-accordion--sm .ods-accordion__chevron>svg{width:12px;height:12px}.ods-accordion--lg .ods-accordion__trigger{padding:var(--ods-space-4) var(--ods-space-5);font-size:var(--ods-font-size-lg)}.ods-accordion--lg .ods-accordion__content{padding:0 var(--ods-space-5) var(--ods-space-5);font-size:var(--ods-font-size-md)}.ods-accordion--lg .ods-accordion__icon,.ods-accordion--lg .ods-accordion__chevron{width:24px;height:24px}.ods-accordion--lg .ods-accordion__icon>svg{width:22px;height:22px}.ods-accordion--lg .ods-accordion__chevron>svg{width:16px;height:16px}@media(prefers-reduced-motion: reduce){.ods-accordion__chevron,.ods-accordion__trigger{transition:none}}.ods-scroll-area{position:relative;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--ods-border-default) rgba(0,0,0,0)}.ods-scroll-area:focus{outline:none}.ods-scroll-area:focus-visible{outline:2px solid var(--ods-accent);outline-offset:-2px;border-radius:var(--ods-radius-1)}.ods-scroll-area::-webkit-scrollbar{width:var(--ods-scrollbar-size, 10px);height:var(--ods-scrollbar-size, 10px)}.ods-scroll-area::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.ods-scroll-area::-webkit-scrollbar-thumb{background:var(--ods-border-default);border-radius:var(--ods-radius-pill);border:2px solid rgba(0,0,0,0);background-clip:padding-box;transition:background .16s ease}.ods-scroll-area::-webkit-scrollbar-thumb:hover{background:var(--ods-text-tertiary);background-clip:padding-box}.ods-scroll-area::-webkit-scrollbar-thumb:active{background:var(--ods-text-body);background-clip:padding-box}.ods-scroll-area--axis-vertical{overflow-x:hidden;overflow-y:auto}.ods-scroll-area--axis-horizontal{overflow-x:auto;overflow-y:hidden}.ods-scroll-area--axis-both{overflow:auto}.ods-scroll-area--behavior-hover::-webkit-scrollbar-thumb{background:rgba(0,0,0,0)}.ods-scroll-area--behavior-hover:hover::-webkit-scrollbar-thumb,.ods-scroll-area--behavior-hover:focus-within::-webkit-scrollbar-thumb,.ods-scroll-area--behavior-hover:active::-webkit-scrollbar-thumb{background:var(--ods-border-default);background-clip:padding-box}.ods-scroll-area--behavior-none{scrollbar-width:none}.ods-scroll-area--behavior-none::-webkit-scrollbar{display:none}.ods-scroll-area--sm{--ods-scrollbar-size: 8px}.ods-scroll-area--md{--ods-scrollbar-size: 10px}.ods-scroll-area--lg{--ods-scrollbar-size: 14px}.ods-scroll-area--full-height{height:100%;max-height:100%}.ods-scroll-area--full-width{width:100%;max-width:100%}.ods-confirm-dialog__title{display:inline-flex;align-items:center;gap:var(--ods-space-2)}.ods-confirm-dialog__title-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.ods-confirm-dialog__title-icon>svg{width:18px;height:18px;color:inherit !important;fill:currentColor}.ods-confirm-dialog__title--danger{color:var(--ods-status-failed-fg)}.ods-confirm-dialog__title--warning{color:var(--ods-status-pending-fg)}.ods-confirm-dialog__title--primary{color:var(--ods-text-primary)}.ods-confirm-dialog__title--danger .ods-confirm-dialog__title-icon{color:var(--ods-status-failed-fg)}.ods-confirm-dialog__title--warning .ods-confirm-dialog__title-icon{color:var(--ods-status-pending-fg)}.ods-confirm-dialog__title--primary .ods-confirm-dialog__title-icon{color:var(--ods-accent)}.ods-confirm-dialog__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);width:100%}.ods-confirm-dialog__require{display:flex;flex-direction:column;gap:var(--ods-space-1);margin-top:var(--ods-space-3)}.ods-confirm-dialog__require-label{font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-confirm-dialog__require-label strong{font-family:var(--ods-font-family-mono);font-weight:600;color:var(--ods-text-primary);background:var(--ods-surface-muted);padding:1px 6px;border-radius:var(--ods-radius-1)}.ods-confirm-dialog__require-input{height:var(--ods-layout-control-height, 36px);padding:0 var(--ods-space-3);border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm)}.ods-confirm-dialog__require-input:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px;border-color:var(--ods-accent)}.ods-confirm-dialog__require-input[aria-invalid=true]{border-color:var(--ods-status-failed-fg)}.ods-confirm-dialog__require-input:disabled{opacity:.6;cursor:not-allowed}.ods-coachmark{position:fixed;z-index:1200;width:320px;max-width:calc(100vw - var(--ods-space-4)*2);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:0 16px 36px rgba(0,0,0,.2),0 4px 8px rgba(0,0,0,.08);font-family:var(--ods-font-family-sans);color:var(--ods-text-body);display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-coachmark__close{position:absolute;top:var(--ods-space-2);right:var(--ods-space-2);display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border-radius:var(--ods-radius-1);border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background .12s ease,color .12s ease}.ods-coachmark__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-coachmark__close:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px}.ods-coachmark__close>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-coachmark__header{display:flex;align-items:center;gap:var(--ods-space-2);padding-right:var(--ods-space-5)}.ods-coachmark__icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);flex-shrink:0}.ods-coachmark__icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-coachmark__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-coachmark__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-coachmark__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);margin-top:var(--ods-space-2)}.ods-coachmark__dots{display:inline-flex;align-items:center;gap:6px}.ods-coachmark__dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:var(--ods-border-default);transition:background .16s ease}.ods-coachmark__dot--past{background:var(--ods-accent-border, var(--ods-accent));opacity:.5}.ods-coachmark__dot--active{background:var(--ods-accent);width:18px}.ods-coachmark__actions{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-coachmark__btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:var(--ods-radius-1);border:1px solid rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease}.ods-coachmark__btn:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px}.ods-coachmark__btn--ghost{background:rgba(0,0,0,0);color:var(--ods-text-tertiary)}.ods-coachmark__btn--ghost:hover{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-coachmark__btn--secondary{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-coachmark__btn--secondary:hover{background:var(--ods-surface-muted);filter:brightness(0.96)}.ods-coachmark__btn--primary{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-coachmark__btn--primary:hover{filter:brightness(0.95)}.ods-coachmark--top{transform-origin:bottom center}.ods-coachmark--bottom{transform-origin:top center}.ods-coachmark--left{transform-origin:right center}.ods-coachmark--right{transform-origin:left center}.ods-coachmark__halo{position:fixed;z-index:1199;pointer-events:none;border-radius:var(--ods-radius-2);box-shadow:0 0 0 4px var(--ods-accent-soft),0 0 0 2px var(--ods-accent)}@media(prefers-reduced-motion: reduce){.ods-coachmark,.ods-coachmark__halo,.ods-coachmark__dot,.ods-coachmark__btn,.ods-coachmark__close{transition:none}}.ods-spotlight{position:fixed;inset:0;z-index:1150;pointer-events:none}.ods-spotlight__dim{position:absolute;inset:0;pointer-events:auto;cursor:pointer}.ods-spotlight__dim--pass-through{cursor:default}.ods-spotlight__content{position:relative;z-index:1;pointer-events:auto;width:100%;height:100%}@media(prefers-reduced-motion: reduce){.ods-spotlight{transition:none}}.ods-progress-bar{display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-progress-bar__header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--ods-space-2)}.ods-progress-bar__label{font-size:var(--ods-font-size-sm);color:var(--ods-text-body);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-progress-bar__value-label{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-progress-bar__track{position:relative;width:100%;height:8px;background:var(--ods-surface-muted);border-radius:var(--ods-radius-pill);overflow:hidden}.ods-progress-bar__fill{position:absolute;inset-block:0;left:0;background:var(--ods-accent);border-radius:inherit;transition:width .24s ease}.ods-progress-bar--default .ods-progress-bar__fill{background:var(--ods-accent)}.ods-progress-bar--success .ods-progress-bar__fill{background:var(--ods-status-success-fg)}.ods-progress-bar--warning .ods-progress-bar__fill{background:var(--ods-status-pending-fg)}.ods-progress-bar--danger .ods-progress-bar__fill{background:var(--ods-status-failed-fg)}.ods-progress-bar--sm .ods-progress-bar__track{height:4px}.ods-progress-bar--lg .ods-progress-bar__track{height:12px}.ods-progress-bar--indeterminate .ods-progress-bar__fill{width:33%;transition:none;animation:ods-progress-bar-sweep 1.4s ease-in-out infinite}@keyframes ods-progress-bar-sweep{0%{left:-33%}50%{left:50%}100%{left:100%}}@media(prefers-reduced-motion: reduce){.ods-progress-bar--indeterminate .ods-progress-bar__fill{animation:ods-progress-bar-pulse 1.6s ease-in-out infinite;left:0;width:100%}@keyframes ods-progress-bar-pulse{0%,100%{opacity:.4}50%{opacity:1}}}.ods-inline-msg{display:inline-flex;align-items:center;gap:6px;font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);line-height:1.4;min-width:0}.ods-inline-msg__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ods-inline-msg__icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-inline-msg__text{min-width:0}.ods-inline-msg--info{color:var(--ods-accent)}.ods-inline-msg--success{color:var(--ods-status-success-fg)}.ods-inline-msg--warning{color:var(--ods-status-pending-fg)}.ods-inline-msg--danger{color:var(--ods-status-failed-fg)}.ods-inline-msg--sm{font-size:var(--ods-font-size-xs);gap:4px}.ods-inline-msg--sm .ods-inline-msg__icon>svg{width:12px;height:12px}.ods-timeline{list-style:none;margin:0;padding:var(--ods-space-1);display:flex;flex-direction:column;font-family:var(--ods-font-family-sans)}.ods-timeline__item{display:flex;gap:var(--ods-space-3);width:100%}.ods-timeline__rail{display:flex;flex-direction:column;align-items:center;width:20px;flex-shrink:0}.ods-timeline__dot{display:inline-flex;align-items:center;justify-content:center;width:10px;height:10px;border-radius:var(--ods-radius-pill);color:var(--ods-surface-canvas)}.ods-timeline__dot--default{background:var(--ods-accent);box-shadow:0 0 0 2px var(--ods-accent-soft)}.ods-timeline__dot--success{background:var(--ods-status-success);box-shadow:0 0 0 2px var(--ods-status-success-bg)}.ods-timeline__dot--warning{background:var(--ods-status-pending);box-shadow:0 0 0 2px var(--ods-status-pending-bg)}.ods-timeline__dot--error{background:var(--ods-status-failed);box-shadow:0 0 0 2px var(--ods-status-failed-bg)}.ods-timeline__dot--muted{background:var(--ods-text-tertiary);box-shadow:0 0 0 2px var(--ods-surface-muted)}.ods-timeline__dot>svg,.ods-timeline__dot>*{width:6px;height:6px}.ods-timeline__dot>svg{color:inherit !important;fill:currentColor}@media(prefers-reduced-motion: reduce){.ods-timeline .ods-timeline__item{transition:none !important}}.ods-timeline__line{flex:1 1 auto;width:1px;background:var(--ods-border-default);min-height:24px}.ods-timeline__body{display:flex;flex-direction:column;gap:2px;padding:0 0 var(--ods-space-4);flex:1 1 auto;min-width:0}.ods-timeline .ods-timeline__item:last-child .ods-timeline__body{padding-bottom:0}.ods-timeline__title{font-size:var(--ods-font-size-base);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-timeline__desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-snug)}.ods-timeline__meta{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-timeline--sm .ods-timeline__title{font-size:var(--ods-font-size-sm)}.ods-timeline--sm .ods-timeline__desc,.ods-timeline--sm .ods-timeline__meta{font-size:var(--ods-font-size-xs)}.ods-timeline--sm .ods-timeline__dot{width:8px;height:8px}.ods-chat{display:flex;align-items:flex-start;gap:var(--ods-space-2);width:100%;font-family:var(--ods-font-family-sans)}.ods-chat--sm{gap:var(--ods-space-1-5)}.ods-chat--sm .ods-chat__bubble{padding:var(--ods-space-1-5) var(--ods-space-2-5);font-size:var(--ods-font-size-sm)}.ods-chat--lg{gap:var(--ods-space-3)}.ods-chat--lg .ods-chat__bubble{padding:var(--ods-space-3) var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-chat__avatar-slot{flex-shrink:0}.ods-chat__column{display:flex;flex-direction:column;gap:var(--ods-space-1);max-width:85%;min-width:0}.ods-chat__bubble{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3);border-radius:var(--ods-radius-2)}.ods-chat__body{font-size:var(--ods-font-size-base);line-height:var(--ods-line-height-base)}.ods-chat__body>*+*{margin-top:var(--ods-space-2)}.ods-chat__body>pre{margin:0;padding:var(--ods-space-2);background:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);overflow-x:auto}.ods-chat__attachments{display:flex;flex-wrap:wrap;gap:var(--ods-space-1-5)}.ods-chat__meta{display:flex;align-items:center;gap:var(--ods-space-1-5);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1}.ods-chat__author{font-weight:600}.ods-chat__time{opacity:.7}.ods-chat__status{display:inline-flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary)}.ods-chat__status--read{color:var(--ods-status-success)}.ods-chat__status--failed{color:var(--ods-status-failed)}.ods-chat__actions{display:flex;align-items:center;gap:var(--ods-space-1-5)}.ods-chat__typing{display:inline-flex;align-items:center;gap:4px;padding:2px 0}.ods-chat__typing-dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.55;animation:ods-chat-typing 1.2s var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) infinite}.ods-chat__typing-dot:nth-child(2){animation-delay:.18s}.ods-chat__typing-dot:nth-child(3){animation-delay:.36s}@media(prefers-reduced-motion: reduce){.ods-chat__typing-dot{animation:none;opacity:.7}}.ods-chat--user{flex-direction:row-reverse}.ods-chat--user .ods-chat__column{align-items:flex-end}.ods-chat--user .ods-chat__bubble{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-chat--user .ods-chat__meta{justify-content:flex-end;color:var(--ods-text-tertiary)}.ods-chat--bot .ods-chat__bubble{background:var(--ods-surface-subtle);color:var(--ods-text-primary);border:1px solid var(--ods-border-default)}.ods-chat--bot .ods-chat__meta{color:var(--ods-text-tertiary)}.ods-chat--system .ods-chat__bubble{background:var(--ods-surface-canvas);color:var(--ods-text-body);border:1px dashed var(--ods-border-default)}.ods-chat--system .ods-chat__meta{color:var(--ods-text-tertiary)}.ods-chat--failed.ods-chat--user .ods-chat__bubble{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border:1px solid var(--ods-status-failed)}@keyframes ods-chat-typing{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-3px);opacity:1}}.ods-progress-ring{position:relative;display:inline-flex;align-items:center;justify-content:center;font-family:var(--ods-font-family-sans);color:var(--ods-accent)}.ods-progress-ring__svg{display:block}.ods-progress-ring__track{stroke:var(--ods-border-default)}.ods-progress-ring__fill{stroke:currentColor;transition:stroke-dashoffset var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));will-change:stroke-dashoffset}.ods-progress-ring__center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.ods-progress-ring__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-md);font-weight:500;color:var(--ods-text-primary)}.ods-progress-ring--primary{color:var(--ods-accent)}.ods-progress-ring--success{color:var(--ods-status-success)}.ods-progress-ring--warning{color:var(--ods-status-pending)}.ods-progress-ring--error{color:var(--ods-status-failed)}.ods-progress-ring--neutral{color:var(--ods-text-tertiary)}.ods-progress-ring--indeterminate .ods-progress-ring__svg{animation:ods-progress-ring-spin 900ms linear infinite}@media(prefers-reduced-motion: reduce){.ods-progress-ring--indeterminate .ods-progress-ring__svg{animation:none}.ods-progress-ring .ods-progress-ring__fill{transition:none}}@keyframes ods-progress-ring-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.ods-popover__anchor{display:inline-flex;align-items:center;cursor:pointer}.ods-popover{min-width:200px;max-width:320px;padding:var(--ods-space-3) var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);line-height:var(--ods-line-height-base)}.ods-popover__arrow{position:absolute;width:10px;height:10px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);transform:rotate(45deg);pointer-events:none;z-index:-1}.ods-popover[data-placement=top] .ods-popover__arrow{bottom:-6px;left:50%;margin-left:-5px;border-top:none;border-left:none}.ods-popover[data-placement=bottom] .ods-popover__arrow{top:-6px;left:50%;margin-left:-5px;border-bottom:none;border-right:none}.ods-popover[data-placement=left] .ods-popover__arrow{right:-6px;top:50%;margin-top:-5px;border-left:none;border-bottom:none}.ods-popover[data-placement=right] .ods-popover__arrow{left:-6px;top:50%;margin-top:-5px;border-right:none;border-top:none}.ods-hover-card__anchor{display:inline-flex;align-items:center}.ods-hover-card{min-width:240px;max-width:320px;padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);line-height:var(--ods-line-height-base)}.ods-sheet__backdrop{position:fixed;inset:0;z-index:900;background:rgba(10,10,10,.45)}.ods-sheet{position:fixed;z-index:901;display:flex;flex-direction:column;background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);will-change:transform;outline:none;box-shadow:var(--ods-shadow-pop);border:1px solid var(--ods-border-default)}.ods-sheet--bottom{left:0;right:0;bottom:0;border-radius:var(--ods-radius-2) var(--ods-radius-2) 0 0;max-height:100vh}.ods-sheet--top{left:0;right:0;top:0;border-radius:0 0 var(--ods-radius-2) var(--ods-radius-2);max-height:100vh}.ods-sheet--left{top:0;bottom:0;left:0;border-radius:0 var(--ods-radius-2) var(--ods-radius-2) 0;max-width:100vw}.ods-sheet--right{top:0;bottom:0;right:0;border-radius:var(--ods-radius-2) 0 0 var(--ods-radius-2);max-width:100vw}.ods-sheet__handle{width:36px;height:3px;background:var(--ods-border-strong);border-radius:var(--ods-radius-pill);margin:var(--ods-space-2) auto 0;flex-shrink:0}.ods-sheet__head{display:flex;flex-direction:column;gap:var(--ods-space-1);padding:var(--ods-space-4) var(--ods-space-5) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default);flex-shrink:0}.ods-sheet__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-tight);line-height:var(--ods-line-height-tight)}.ods-sheet__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-sheet__body{flex:1 1 auto;overflow-y:auto;padding:var(--ods-space-4) var(--ods-space-5)}.ods-sheet__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-5);border-top:1px solid var(--ods-border-default);flex-shrink:0}.ods-bar-chart{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-bar-chart__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);margin-bottom:var(--ods-space-2)}.ods-bar-chart__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-bar-chart__total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-bar-chart__frame{display:flex;gap:var(--ods-space-2)}.ods-bar-chart__frame--horizontal{flex-direction:column}.ods-bar-chart__y-axis{position:relative;flex-shrink:0;width:32px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);padding-right:var(--ods-space-1)}.ods-bar-chart__y-axis--horizontal{width:100%;height:16px;padding:0;padding-top:var(--ods-space-1)}.ods-bar-chart__tick{line-height:1;white-space:nowrap}.ods-bar-chart__plot{position:relative;flex:1 1 auto;min-width:0}.ods-bar-chart__plot--with-x-axis::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--ods-border-default)}.ods-bar-chart__grid{position:absolute;inset:0;pointer-events:none}.ods-bar-chart__gridline{position:absolute;background:var(--ods-border-soft);opacity:.5}.ods-bar-chart__gridline--baseline{background:var(--ods-border-default);opacity:1}.ods-bar-chart__bars{position:relative;display:flex;align-items:flex-end;gap:var(--ods-space-2);height:100%;z-index:1}.ods-bar-chart__bars--horizontal{flex-direction:column;align-items:stretch;justify-content:space-between;width:100%}.ods-bar-chart__bars--grouped .ods-bar-chart__cat{display:flex;align-items:flex-end;gap:2px;flex:1 1 auto}.ods-bar-chart__bars--stacked .ods-bar-chart__cat{position:relative;flex:1 1 auto;height:100%}.ods-bar-chart__cat{display:flex;align-items:flex-end;flex:1 1 auto;height:100%}.ods-bar-chart__col{flex:1 1 auto;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;height:100%;border-radius:var(--ods-radius-1);transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-bar-chart__col--interactive{cursor:pointer}.ods-bar-chart__col--interactive:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-bar-chart__plot--interactive:hover .ods-bar-chart__col--interactive,.ods-bar-chart__plot--interactive:focus-within .ods-bar-chart__col--interactive{opacity:.55}.ods-bar-chart__plot--interactive .ods-bar-chart__col--interactive:hover,.ods-bar-chart__plot--interactive .ods-bar-chart__col--interactive:focus-visible,.ods-bar-chart__plot--interactive .ods-bar-chart__col--active{opacity:1}.ods-bar-chart__bar{width:100%;min-height:2px;border-radius:var(--ods-radius-1) var(--ods-radius-1) 0 0;background:var(--ods-accent-soft);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),filter var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-bar-chart--horizontal .ods-bar-chart__bar{height:100%;width:auto;border-radius:0 var(--ods-radius-1) var(--ods-radius-1) 0}.ods-bar-chart__col--interactive:hover .ods-bar-chart__bar,.ods-bar-chart__col--interactive:focus-visible .ods-bar-chart__bar,.ods-bar-chart__col--active .ods-bar-chart__bar{filter:brightness(0.85)}.ods-bar-chart__sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}.ods-bar-chart__tooltip{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:var(--ods-space-2);padding:4px 8px;background:var(--ods-text-primary);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1;white-space:nowrap;pointer-events:none;box-shadow:var(--ods-shadow-1, 0 2px 8px rgba(0, 0, 0, 0.15))}.ods-bar-chart__tooltip-label{font-weight:500;opacity:.85}.ods-bar-chart__tooltip-value{font-variant-numeric:tabular-nums lining-nums;font-weight:600}.ods-bar-chart__labels{display:flex;gap:var(--ods-space-2);margin-top:var(--ods-space-1)}.ods-bar-chart__labels--horizontal{flex-direction:column;align-items:flex-end;gap:0;justify-content:space-between;margin-top:0}.ods-bar-chart__labels-spacer{flex-shrink:0;width:32px;padding-right:var(--ods-space-1)}.ods-bar-chart__label{flex:1 1 auto;text-align:center;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-bar-chart__label--hi{color:var(--ods-accent);font-weight:600}.ods-bar-chart__label--active{color:var(--ods-text-primary);font-weight:600}.ods-bar-chart__legend{list-style:none;margin:var(--ods-space-2) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-bar-chart__legend-item{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-size:var(--ods-font-size-xs);color:var(--ods-text-body)}.ods-bar-chart__legend-dot{width:10px;height:10px;border-radius:var(--ods-radius-1);flex-shrink:0}.ods-line-chart{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-line-chart__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);margin-bottom:var(--ods-space-2)}.ods-line-chart__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-line-chart__total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-line-chart__frame{display:flex;gap:var(--ods-space-2)}.ods-line-chart__y-axis{position:relative;flex-shrink:0;width:38px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);padding-right:var(--ods-space-1)}.ods-line-chart__tick{line-height:1;white-space:nowrap}.ods-line-chart__plot{position:relative;flex:1 1 auto;min-width:0}.ods-line-chart__plot--with-x-axis::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--ods-border-default);pointer-events:none}.ods-line-chart__plot--clickable{cursor:crosshair}.ods-line-chart__svg{width:100%;height:100%;display:block}.ods-line-chart__dot{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--ods-surface-canvas);border:2px solid var(--ods-accent);transform:translate(-50%, -50%);pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.15);z-index:1}.ods-line-chart__crosshair{position:absolute;top:0;bottom:0;width:1px;background:linear-gradient(var(--ods-border-default) 50%, transparent 0);background-size:1px 4px;transform:translateX(-50%);pointer-events:none;z-index:1}.ods-line-chart__brush{position:absolute;top:0;bottom:0;background:var(--ods-accent-soft);opacity:.65;border-left:2px solid var(--ods-accent);border-right:2px solid var(--ods-accent);pointer-events:none;z-index:1;display:flex;align-items:flex-start;justify-content:center}.ods-line-chart__brush-label{margin-top:4px;padding:2px 6px;background:var(--ods-text-primary);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;white-space:nowrap;opacity:1;box-shadow:var(--ods-shadow-1, 0 2px 8px rgba(0, 0, 0, 0.15))}.ods-line-chart__brush-count{opacity:.7;font-weight:500}.ods-line-chart__head-right{display:inline-flex;align-items:center;gap:var(--ods-space-2)}.ods-line-chart__reset{appearance:none;border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-body);border-radius:var(--ods-radius-1);padding:2px var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-line-chart__reset:hover{background:var(--ods-surface-muted)}.ods-line-chart__reset:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-line-chart--zoomable .ods-line-chart__plot--zoomable{cursor:crosshair}.ods-line-chart__tooltip{position:absolute;z-index:2;display:inline-flex;flex-direction:column;gap:4px;padding:6px 10px;background:var(--ods-text-primary);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1.2;white-space:nowrap;pointer-events:none;box-shadow:var(--ods-shadow-1, 0 2px 8px rgba(0, 0, 0, 0.15));margin-top:-8px}.ods-line-chart__tooltip-x{font-weight:500;opacity:.85}.ods-line-chart__tooltip-row{display:inline-flex;align-items:center;gap:6px}.ods-line-chart__tooltip-dot{display:inline-block;width:8px;height:8px;border-radius:var(--ods-radius-1);flex-shrink:0}.ods-line-chart__tooltip-label{opacity:.85}.ods-line-chart__tooltip-value{font-variant-numeric:tabular-nums lining-nums;font-weight:600;margin-left:auto}.ods-line-chart__labels{display:flex;gap:var(--ods-space-2);margin-top:var(--ods-space-1)}.ods-line-chart__labels-spacer{flex-shrink:0;width:38px;padding-right:var(--ods-space-1)}.ods-line-chart__labels-row{flex:1 1 auto;position:relative;height:16px;min-width:0}.ods-line-chart__label{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));white-space:nowrap;top:0}.ods-line-chart__label--active{color:var(--ods-text-primary);font-weight:600}.ods-line-chart__legend{list-style:none;margin:var(--ods-space-2) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-line-chart__legend-item{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-size:var(--ods-font-size-xs);color:var(--ods-text-body)}.ods-line-chart__legend-dot{width:10px;height:10px;border-radius:var(--ods-radius-1);flex-shrink:0}.ods-donut{display:flex;flex-direction:column;align-items:center;gap:var(--ods-space-3);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-donut__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);align-self:flex-start}.ods-donut__ring{position:relative;display:inline-block}.ods-donut__center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;pointer-events:none}.ods-donut__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xl);font-weight:500;color:var(--ods-text-primary)}.ods-donut__small{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-donut__seg{transition:stroke-width var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));outline:none}.ods-donut__seg--interactive{cursor:pointer}.ods-donut__ring:hover .ods-donut__seg--interactive,.ods-donut__ring:focus-within .ods-donut__seg--interactive{opacity:.55}.ods-donut__ring .ods-donut__seg--interactive:hover,.ods-donut__ring .ods-donut__seg--interactive:focus-visible{opacity:1}.ods-donut__seg--interactive:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-donut__legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%}.ods-donut__legend-item{display:flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-sm);color:var(--ods-text-primary)}.ods-donut__dot{width:8px;height:8px;border-radius:var(--ods-radius-1);flex-shrink:0}.ods-donut__legend-label{flex:1 1 auto}.ods-donut__legend-value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-donut__legend-pct{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-weight:500;color:var(--ods-text-body);min-width:36px;text-align:right}.ods-sparkline{display:inline-block;vertical-align:middle;color:var(--ods-accent);line-height:0}.ods-sparkline__svg{display:block;width:100%;height:100%}.ods-sparkline--empty{background:linear-gradient(to bottom, transparent 50%, var(--ods-border-soft) 50%, var(--ods-border-soft) calc(50% + 1px), transparent calc(50% + 1px));opacity:.5}.ods-auth-card{display:flex;flex-direction:column;gap:var(--ods-space-4);width:400px;max-width:100%;padding:var(--ods-space-7);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans)}.ods-auth-card__logo{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--ods-radius-1);background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-lg);font-weight:600;align-self:center}.ods-auth-card--left .ods-auth-card__head,.ods-auth-card--left .ods-auth-card__title,.ods-auth-card--left .ods-auth-card__desc{text-align:left;align-items:flex-start}.ods-auth-card--left .ods-auth-card__title-row{justify-content:flex-start}.ods-auth-card--left .ods-auth-card__logo{align-self:flex-start}.ods-auth-card__head{display:flex;flex-direction:column;align-items:center;gap:var(--ods-space-1);text-align:center}.ods-auth-card__title-row{display:flex;align-items:center;justify-content:center;gap:var(--ods-space-2);flex-wrap:wrap}.ods-auth-card__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-2xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight);text-align:center}.ods-auth-card__scope{display:inline-flex;align-items:center}.ods-auth-card__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base);text-align:center}.ods-auth-card__messages{display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-auth-card__body{display:flex;flex-direction:column;gap:var(--ods-space-3)}.ods-auth-card__divider{display:block;width:100%}.ods-auth-card__footer{display:flex;align-items:center;justify-content:center;gap:var(--ods-space-1);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-auth-divider{display:flex;align-items:center;gap:var(--ods-space-3);width:100%}.ods-auth-divider__line{flex:1 1 0;min-width:0;height:1px;background:var(--ods-border-default)}.ods-auth-divider__label{flex:0 0 auto;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;color:var(--ods-text-tertiary);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;padding:0 var(--ods-space-1)}.ods-auth-section{display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-auth-section__head{display:flex;flex-direction:column;gap:1px}.ods-auth-section__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-body);text-transform:uppercase}.ods-auth-section__desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-auth-section__body{display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-auth-section+.ods-auth-section{margin-top:var(--ods-space-1);padding-top:var(--ods-space-3);border-top:1px solid var(--ods-border-default)}.ods-auth-tabs{display:flex;flex-direction:column;gap:var(--ods-space-3)}.ods-auth-tabs__list{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:1px;padding:1px;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-auth-tabs__tab{position:relative;display:flex;align-items:center;justify-content:center;gap:var(--ods-space-1);padding:var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);cursor:pointer;text-align:center;font-family:inherit;color:var(--ods-text-body);transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-auth-tabs__tab:hover{color:var(--ods-text-primary)}.ods-auth-tabs__tab:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;z-index:1}.ods-auth-tabs__tab--active{color:var(--ods-text-primary)}.ods-auth-tabs__indicator{position:absolute;inset:0;background:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);z-index:0;box-shadow:var(--ods-shadow-1, 0 1px 2px rgba(0, 0, 0, 0.06))}.ods-auth-tabs__icon,.ods-auth-tabs__label{position:relative;z-index:1}.ods-auth-tabs__icon{display:inline-flex;align-items:center;color:var(--ods-accent)}.ods-auth-tabs__icon>svg{color:inherit !important;fill:currentColor}.ods-auth-tabs__label{font-size:var(--ods-font-size-sm);font-weight:600}.ods-auth-tabs__panel{display:flex;flex-direction:column;gap:var(--ods-space-3)}.ods-auth-row{display:grid;gap:var(--ods-space-3)}.ods-auth-badge{display:inline-flex;align-items:center}.ods-social-btn .ods-btn__icon{width:18px;height:18px;flex-shrink:0}.ods-social-btn.ods-social-btn--github .ods-btn__icon,.ods-social-btn.ods-social-btn--x .ods-btn__icon,.ods-social-btn.ods-social-btn--apple .ods-btn__icon{color:var(--ods-text-primary)}.ods-social-btn.ods-social-btn--github .ods-btn__icon>svg,.ods-social-btn.ods-social-btn--x .ods-btn__icon>svg,.ods-social-btn.ods-social-btn--apple .ods-btn__icon>svg{color:inherit !important;fill:currentColor}.ods-social-btn.ods-social-btn--linkedin .ods-btn__icon{color:#0a66c2}.ods-social-btn.ods-social-btn--linkedin .ods-btn__icon>svg{color:inherit !important;fill:currentColor}.ods-social-btn.ods-social-btn--icon-only{width:var(--ods-layout-control-height);padding:0;justify-content:center}.ods-social-btn.ods-social-btn--icon-only.ods-btn--sm{width:var(--ods-layout-control-height-sm)}.ods-social-btn.ods-social-btn--icon-only.ods-btn--lg{width:var(--ods-layout-control-height-lg)}.ods-resizable{display:flex;width:100%;height:100%;min-height:0;position:relative}.ods-resizable--horizontal{flex-direction:row}.ods-resizable--vertical{flex-direction:column}.ods-resizable--dragging{cursor:col-resize;user-select:none}.ods-resizable--dragging .ods-resizable__handle{background:var(--ods-accent)}.ods-resizable--vertical.ods-resizable--dragging{cursor:row-resize}.ods-resizable__panel{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.ods-resizable__panel--first{flex:0 0 auto}.ods-resizable__panel--second{flex:1 1 auto}.ods-resizable__handle{position:relative;flex-shrink:0;background:var(--ods-border-default);transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));outline:none;z-index:1}.ods-resizable--horizontal .ods-resizable__handle{width:1px;cursor:col-resize}.ods-resizable--horizontal .ods-resizable__handle::before{content:"";position:absolute;top:0;bottom:0;left:-4px;right:-4px}.ods-resizable--vertical .ods-resizable__handle{height:1px;cursor:row-resize}.ods-resizable--vertical .ods-resizable__handle::before{content:"";position:absolute;left:0;right:0;top:-4px;bottom:-4px}.ods-resizable__handle:hover{background:var(--ods-accent)}.ods-resizable__handle:focus-visible{background:var(--ods-accent);outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-resizable__grip{position:absolute;background:var(--ods-text-tertiary);border-radius:var(--ods-radius-pill);opacity:0;transition:opacity var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-resizable--horizontal .ods-resizable__grip{top:50%;left:50%;width:2px;height:24px;transform:translate(-50%, -50%)}.ods-resizable--vertical .ods-resizable__grip{left:50%;top:50%;width:24px;height:2px;transform:translate(-50%, -50%)}.ods-resizable__handle:hover .ods-resizable__grip,.ods-resizable--dragging .ods-resizable__handle .ods-resizable__grip{opacity:1;background:var(--ods-surface-canvas)}.ods-resizable-panel{position:relative;flex-shrink:0;min-width:0;min-height:0}.ods-resizable-panel--right{height:100%}.ods-resizable-panel--bottom{width:100%}.ods-resizable-panel__content{height:100%;width:100%;overflow:auto}.ods-resizable-panel__handle{position:absolute;background:rgba(0,0,0,0);outline:none;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-resizable-panel__handle:hover{background:var(--ods-accent)}.ods-resizable-panel__handle:focus-visible{background:var(--ods-accent);outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-resizable-panel--right .ods-resizable-panel__handle{top:0;right:-2px;bottom:0;width:4px;cursor:col-resize}.ods-resizable-panel--bottom .ods-resizable-panel__handle{left:0;right:0;bottom:-2px;height:4px;cursor:row-resize}.ods-resizable-panel--dragging .ods-resizable-panel__handle{background:var(--ods-accent)}.ods-resizable-panel__grip{display:none}.ods-prompt-input-wrapper{display:flex;flex-direction:column;width:100%}.ods-prompt-input{position:relative;display:flex;flex-direction:column;width:100%;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-2);font-family:var(--ods-font-family-sans);transition:border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-prompt-input:focus-within{border-color:var(--ods-border-focus);box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-prompt-input--running{border-color:var(--ods-accent)}.ods-prompt-input--error{border-color:var(--ods-status-failed)}.ods-prompt-input--disabled{opacity:.6;cursor:not-allowed}.ods-prompt-input--disabled .ods-prompt-input__textarea{cursor:not-allowed}.ods-prompt-input--drag-over{border-color:var(--ods-accent);box-shadow:0 0 0 3px var(--ods-accent-border);background:var(--ods-accent-soft)}@property --ods-prompt-ambient-angle{syntax:"<angle>";initial-value:0deg;inherits:false}@keyframes ods-prompt-ambient-spin{to{--ods-prompt-ambient-angle: 360deg}}.ods-prompt-input--border-ambient{border-color:rgba(0,0,0,0);background-clip:padding-box;box-shadow:0 0 24px -8px var(--ods-accent-border)}.ods-prompt-input--border-ambient::before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--ods-prompt-ambient-angle), transparent 0%, var(--ods-accent) 25%, transparent 50%, transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:ods-prompt-ambient-spin var(--ods-prompt-ambient-duration, 6s) linear infinite}.ods-prompt-input--border-ambient::after{content:"";position:absolute;inset:-16px;z-index:-2;background:var(--ods-gradient-glow-accent);pointer-events:none;opacity:.6}.ods-prompt-input--border-ambient.ods-prompt-input--running::after{opacity:1}.ods-prompt-input--border-ambient.ods-prompt-input--error::before{background:conic-gradient(from var(--ods-prompt-ambient-angle), transparent 0%, var(--ods-status-failed) 25%, transparent 50%, transparent 100%)}.ods-prompt-input--border-ambient.ods-prompt-input--error::after{background:var(--ods-gradient-glow-failed)}.ods-prompt-input--border-ambient:focus-within{box-shadow:0 0 32px -6px var(--ods-accent-border)}.ods-prompt-input--border-ambient.ods-prompt-input--ambient-static::before{animation:none}@media(prefers-reduced-motion: reduce){.ods-prompt-input--border-ambient::before{animation:none}}.ods-prompt-input__label{display:block;padding:var(--ods-space-2) var(--ods-space-3) 0;font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-prompt-input__drop-overlay{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ods-space-1);background:var(--ods-accent-soft);border:2px dashed var(--ods-accent);border-radius:inherit;color:var(--ods-accent);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:600;pointer-events:none}.ods-prompt-input__drop-overlay>svg{fill:currentColor}.ods-prompt-input__attachments{display:flex;flex-wrap:wrap;gap:var(--ods-space-1);padding:var(--ods-space-2) var(--ods-space-3) 0}.ods-prompt-input__chip{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:22px;padding:0 var(--ods-space-1) 0 var(--ods-space-2);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);max-width:220px}.ods-prompt-input__chip-glyph{display:inline-flex;align-items:center;color:var(--ods-text-tertiary);flex-shrink:0}.ods-prompt-input__chip-glyph>svg{fill:currentColor}.ods-prompt-input__chip-thumb{width:14px;height:14px;border-radius:var(--ods-radius-1);object-fit:cover}.ods-prompt-input__chip-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;color:var(--ods-text-primary)}.ods-prompt-input__chip-size{color:var(--ods-text-tertiary);flex-shrink:0}.ods-prompt-input__chip-remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;flex-shrink:0;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-prompt-input__chip-remove>svg{fill:currentColor}.ods-prompt-input__chip-remove:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-prompt-input__chip-remove:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-prompt-input__field{position:relative;display:flex;flex-direction:column}.ods-prompt-input__textarea{width:100%;min-height:36px;padding:8px var(--ods-space-3) 0;border:0;background:rgba(0,0,0,0);outline:none;font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-md);line-height:1.4;color:var(--ods-text-primary);resize:none}.ods-prompt-input__textarea::placeholder{color:var(--ods-text-tertiary)}.ods-prompt-input__suggestions{list-style:none;margin:0;padding:var(--ods-space-1);position:absolute;bottom:calc(100% + 4px);left:0;right:0;max-height:280px;overflow-y:auto;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);z-index:50}.ods-prompt-input__suggestion{display:flex;align-items:flex-start;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-prompt-input__suggestion:hover,.ods-prompt-input__suggestion--active{background:var(--ods-surface-muted)}.ods-prompt-input__suggestion-icon{display:inline-flex;width:14px;height:14px;margin-top:2px;color:var(--ods-accent);flex-shrink:0}.ods-prompt-input__suggestion-text{display:flex;flex-direction:column;gap:1px;min-width:0}.ods-prompt-input__suggestion-label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary)}.ods-prompt-input__suggestion-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-prompt-input__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:4px var(--ods-space-2) 6px var(--ods-space-3)}.ods-prompt-input__toolbar-left,.ods-prompt-input__toolbar-right{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-prompt-input__count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-prompt-input__count--over{color:var(--ods-status-failed-fg);font-weight:600}.ods-prompt-input__send{display:inline-flex;align-items:center;justify-content:center;gap:var(--ods-space-1);width:28px;height:28px;padding:0;border:0;background:var(--ods-accent);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-prompt-input__send>svg{fill:currentColor}.ods-prompt-input__send:hover:not(:disabled){background:var(--ods-accent-hover);transform:translateY(-1px)}.ods-prompt-input__send:active:not(:disabled){transform:translateY(0)}.ods-prompt-input__send:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-prompt-input__send--disabled,.ods-prompt-input__send:disabled{background:var(--ods-surface-muted);color:var(--ods-text-tertiary);cursor:not-allowed;transform:none}.ods-prompt-input__send--stop{width:auto;padding:0 var(--ods-space-2);background:var(--ods-status-failed);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase}.ods-prompt-input__send--stop:hover:not(:disabled){background:var(--ods-status-failed-fg);transform:none}.ods-prompt-input__quick-actions{display:flex;flex-wrap:wrap;gap:var(--ods-space-1);padding:0 var(--ods-space-3) var(--ods-space-2)}.ods-prompt-input__quick-action{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-pill);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-prompt-input__quick-action:hover{background:var(--ods-accent-soft);border-color:var(--ods-accent-border);color:var(--ods-accent)}.ods-prompt-input__quick-action:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-prompt-input__quick-action-icon{display:inline-flex;width:12px;height:12px;color:var(--ods-text-tertiary)}.ods-prompt-input__quick-action-icon>svg{fill:currentColor}.ods-prompt-input__quick-action:hover .ods-prompt-input__quick-action-icon{color:var(--ods-accent)}.ods-prompt-input__hint{padding:4px var(--ods-space-1) 0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-sortable{display:flex;width:100%;position:relative}.ods-sortable--vertical{flex-direction:column}.ods-sortable--horizontal{flex-direction:row}.ods-sortable--disabled{opacity:.6;pointer-events:none}.ods-sortable--dragging .ods-sortable__item:not(.ods-sortable__item--dragging){transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sortable__item{position:relative;transition:opacity var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sortable__item--dragging{opacity:.45;cursor:grabbing}.ods-sortable__item--kb-active{outline:2px solid var(--ods-accent);outline-offset:1px;border-radius:var(--ods-radius-1)}.ods-sortable__indicator{position:absolute;background:var(--ods-accent);opacity:0;pointer-events:none;transition:opacity var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));z-index:2}.ods-sortable--vertical .ods-sortable__indicator{left:0;right:0;height:2px}.ods-sortable--vertical .ods-sortable__indicator::before,.ods-sortable--vertical .ods-sortable__indicator::after{content:"";position:absolute;top:-2px;width:6px;height:6px;border:2px solid var(--ods-accent);background:var(--ods-surface-canvas);border-radius:var(--ods-radius-pill)}.ods-sortable--vertical .ods-sortable__indicator::before{left:-3px}.ods-sortable--vertical .ods-sortable__indicator::after{right:-3px}.ods-sortable--vertical .ods-sortable__indicator--before{top:-1px}.ods-sortable--vertical .ods-sortable__indicator--after{bottom:-1px}.ods-sortable--horizontal .ods-sortable__indicator{top:0;bottom:0;width:2px}.ods-sortable--horizontal .ods-sortable__indicator::before,.ods-sortable--horizontal .ods-sortable__indicator::after{content:"";position:absolute;left:-2px;width:6px;height:6px;border:2px solid var(--ods-accent);background:var(--ods-surface-canvas);border-radius:var(--ods-radius-pill)}.ods-sortable--horizontal .ods-sortable__indicator::before{top:-3px}.ods-sortable--horizontal .ods-sortable__indicator::after{bottom:-3px}.ods-sortable--horizontal .ods-sortable__indicator--before{left:-1px}.ods-sortable--horizontal .ods-sortable__indicator--after{right:-1px}.ods-sortable__item--drop-before .ods-sortable__indicator--before{opacity:1}.ods-sortable__item--drop-after .ods-sortable__indicator--after{opacity:1}.ods-sortable-handle{display:inline-flex;align-items:center;justify-content:center;width:16px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:grab;flex-shrink:0;border-radius:var(--ods-radius-1);transition:color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sortable-handle>svg{color:inherit !important;fill:currentColor;width:12px;height:12px}.ods-sortable-handle:hover{color:var(--ods-accent)}.ods-sortable-handle:active{cursor:grabbing}.ods-sortable-handle:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px;color:var(--ods-accent)}.ods-sortable__item--kb-active .ods-sortable-handle{color:var(--ods-accent);background:var(--ods-accent-soft)}.ods-sortable__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.ods-code-editor{display:flex;flex-direction:column;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);overflow:hidden}.ods-code-editor--readonly{background:var(--ods-surface-subtle)}.ods-code-editor:focus-within{border-color:var(--ods-border-focus);box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-code-editor__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-code-editor__toolbar-left,.ods-code-editor__toolbar-right{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-code-editor__toolbar-left{gap:var(--ods-space-2)}.ods-code-editor__lang{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);background:var(--ods-surface-muted);color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-code-editor__lines{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-code-editor__status{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-code-editor__btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-code-editor__btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-code-editor__btn:disabled{opacity:.4;cursor:not-allowed}.ods-code-editor__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-code-editor__btn--active{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent-border)}.ods-code-editor__btn--success{color:var(--ods-status-success-fg);background:var(--ods-status-success-bg);border-color:var(--ods-status-success-bd)}.ods-code-editor__find{display:flex;align-items:center;gap:var(--ods-space-1);padding:var(--ods-space-1) var(--ods-space-2);background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-default);color:var(--ods-text-tertiary)}.ods-code-editor__find-input{flex:1 1 auto;min-width:0;height:22px;padding:0 var(--ods-space-2);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);outline:none;transition:border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-code-editor__find-input:focus{border-color:var(--ods-border-focus)}.ods-code-editor__find-input::placeholder{color:var(--ods-text-disabled)}.ods-code-editor__find-count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);min-width:56px;text-align:center}.ods-code-editor__body{display:flex;flex:1 1 auto;min-height:0;overflow:hidden;background:var(--ods-surface-canvas);position:relative}.ods-code-editor__gutter{flex-shrink:0;display:flex;flex-direction:column;padding:var(--ods-space-2) 0;background:var(--ods-surface-subtle);border-right:1px solid var(--ods-border-default);overflow:hidden;user-select:none;pointer-events:none;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-disabled);min-width:36px}.ods-code-editor__line-no{display:inline-block;width:100%;padding:0 var(--ods-space-2);text-align:right;line-height:20px}.ods-code-editor__line-no--active{color:var(--ods-accent);font-weight:600}.ods-code-editor__textarea{flex:1 1 auto;border:0;outline:none;padding:var(--ods-space-2) var(--ods-space-3);background:rgba(0,0,0,0);resize:none;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);line-height:20px;color:var(--ods-text-primary);white-space:pre;overflow:auto;tab-size:2}.ods-code-editor__textarea::placeholder{color:var(--ods-text-disabled);font-style:italic}.ods-code-editor--sql .ods-code-editor__textarea{caret-color:var(--ods-accent)}.ods-code-editor--wrap .ods-code-editor__textarea{white-space:pre-wrap;word-break:break-word;overflow-x:hidden}.ods-code-editor__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:4px var(--ods-space-2);background:var(--ods-surface-subtle);border-top:1px solid var(--ods-border-soft);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);letter-spacing:var(--ods-tracking-mono)}.ods-code-editor__pos{font-variant-numeric:tabular-nums lining-nums}.ods-code-editor__shortcut-hint{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.ods-code-editor__sep{color:var(--ods-text-disabled);margin:0 2px}.ods-code-editor__kbd{display:inline-flex;align-items:center;justify-content:center;height:16px;min-width:18px;padding:0 4px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;color:var(--ods-text-body);margin-right:2px}.ods-monaco{display:flex;flex-direction:column;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);overflow:hidden}.ods-monaco--readonly{background:var(--ods-surface-subtle)}.ods-monaco:focus-within{border-color:var(--ods-border-focus);box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-monaco__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-monaco__toolbar-left,.ods-monaco__toolbar-right{display:inline-flex;align-items:center;gap:var(--ods-space-1);min-width:0}.ods-monaco__toolbar-left{gap:var(--ods-space-2)}.ods-monaco__lang{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);background:var(--ods-surface-muted);color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);flex-shrink:0}.ods-monaco__lines{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-monaco__status{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-monaco__btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-monaco__btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-monaco__btn:disabled{opacity:.4;cursor:not-allowed}.ods-monaco__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-monaco__btn--active{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent-border)}.ods-monaco__btn--success{color:var(--ods-status-success-fg);background:var(--ods-status-success-bg);border-color:var(--ods-status-success-bd)}.ods-monaco__btn>svg{width:14px;height:14px}.ods-monaco__body{display:flex;flex:1 1 auto;min-height:0;position:relative}.ods-monaco__body>section,.ods-monaco__body>div{flex:1 1 auto;min-width:0}.ods-monaco__loading{display:flex;align-items:center;justify-content:center;gap:var(--ods-space-2);height:100%;padding:var(--ods-space-4);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);letter-spacing:var(--ods-tracking-mono)}.ods-monaco__loading-spin{display:inline-flex;color:var(--ods-accent);animation:ods-monaco-spin .9s linear infinite}.ods-monaco__loading-spin>svg{width:14px;height:14px}@keyframes ods-monaco-spin{to{transform:rotate(360deg)}}.ods-monaco__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:4px var(--ods-space-2);background:var(--ods-surface-subtle);border-top:1px solid var(--ods-border-soft);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);letter-spacing:var(--ods-tracking-mono)}.ods-monaco__pos{font-variant-numeric:tabular-nums lining-nums}.ods-monaco__shortcut-hint{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.ods-monaco__sep{color:var(--ods-text-disabled);margin:0 2px}.ods-monaco__kbd{display:inline-flex;align-items:center;justify-content:center;height:16px;min-width:18px;padding:0 4px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;color:var(--ods-text-body);margin-right:2px}.ods-monaco-diff{display:flex;flex-direction:column;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);overflow:hidden}.ods-monaco-diff:focus-within{border-color:var(--ods-border-focus);box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-monaco-diff__labels{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-monaco-diff__label{padding:1px var(--ods-space-1);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-monaco-diff__label--orig{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd)}.ods-monaco-diff__label--mod{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-monaco-diff__arrow{color:var(--ods-text-disabled)}.ods-csv-viewer{display:flex;flex-direction:column;min-width:0;font-family:var(--ods-font-family-sans);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2, 6px);background:var(--ods-surface-canvas);overflow:hidden}.ods-csv-viewer__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default);background:var(--ods-surface-muted);font-size:var(--ods-font-size-sm)}.ods-csv-viewer__head-left,.ods-csv-viewer__head-right{display:inline-flex;align-items:center;gap:var(--ods-space-2);min-width:0}.ods-csv-viewer__title{font-weight:600;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-csv-viewer__status{color:var(--ods-text-tertiary)}.ods-csv-viewer__copy{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:rgba(0,0,0,0);border:0;border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-csv-viewer__copy:hover{background:var(--ods-surface-canvas);color:var(--ods-text-primary)}.ods-csv-viewer__copy--copied{color:var(--ods-status-success)}.ods-csv-viewer__body{flex:1 1 auto;min-height:0;overflow:auto}.ods-csv-viewer__empty{padding:var(--ods-space-6) var(--ods-space-3);text-align:center;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-sm)}.ods-csv-viewer__warn{margin:var(--ods-space-2) var(--ods-space-3)}.ods-csv-viewer__table{width:100%;border-collapse:collapse;font-family:var(--ods-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--ods-font-size-xs)}.ods-csv-viewer__table th,.ods-csv-viewer__table td{padding:6px 10px;border-bottom:1px solid var(--ods-border-subtle, var(--ods-border-default));text-align:left;vertical-align:top;white-space:pre-wrap;word-break:break-word;color:var(--ods-text-primary)}.ods-csv-viewer__table thead th{position:sticky;top:0;background:var(--ods-surface-muted);font-weight:600;color:var(--ods-text-secondary);border-bottom-color:var(--ods-border-strong, var(--ods-border-default));z-index:1}.ods-csv-viewer__table tbody tr:nth-child(even) td{background:var(--ods-surface-muted)}.ods-csv-viewer__table tbody tr:hover td{background:var(--ods-surface-canvas);box-shadow:inset 0 0 0 1px var(--ods-border-strong, var(--ods-border-default))}.ods-csv-viewer__raw{margin:0;padding:var(--ods-space-2) var(--ods-space-3);font-family:var(--ods-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--ods-font-size-xs);line-height:1.5;color:var(--ods-text-primary);white-space:pre}.ods-csv-viewer__raw-line{display:flex;align-items:baseline;gap:12px}.ods-csv-viewer__raw-line-no{display:inline-block;min-width:2.5ch;color:var(--ods-text-tertiary);text-align:right;user-select:none}.ods-csv-viewer__raw-line-text{flex:1;min-width:0}.ods-csv-viewer__edit{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-2)}.ods-csv-viewer__parse-error{margin:0}.ods-json-viewer{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);overflow:hidden;font-family:var(--ods-font-family-mono)}.ods-json-viewer__head{display:flex;align-items:center;gap:var(--ods-space-2);justify-content:space-between;padding:var(--ods-space-1) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default)}.ods-json-viewer__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-json-viewer__status{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-json-viewer__body{padding:var(--ods-space-1) 0;overflow:auto;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);line-height:20px}.ods-json-viewer__row{display:flex;align-items:center;gap:4px;padding:0 var(--ods-space-3);white-space:nowrap}.ods-json-viewer__row--container{cursor:pointer}.ods-json-viewer__row--container:hover{background:var(--ods-surface-subtle)}.ods-json-viewer__row--close{padding-left:var(--ods-space-3)}.ods-json-viewer__caret{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-json-viewer__caret>svg{width:8px;height:8px}.ods-json-viewer__caret:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-json-viewer__caret--open{transform:rotate(90deg);color:var(--ods-accent)}.ods-json-viewer__caret-spacer{display:inline-block;width:12px;flex-shrink:0}.ods-json-viewer__key{color:var(--ods-text-primary);font-weight:500}.ods-json-viewer__key--index{color:var(--ods-text-tertiary)}.ods-json-viewer__colon{color:var(--ods-text-tertiary)}.ods-json-viewer__comma{color:var(--ods-text-tertiary)}.ods-json-viewer__bracket{color:var(--ods-text-body);font-weight:500}.ods-json-viewer__preview{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin:0 4px}.ods-json-viewer__value{display:inline-flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums lining-nums}.ods-json-viewer__value--string{color:var(--ods-status-success-fg)}.ods-json-viewer__value--number{color:var(--ods-status-running-fg)}.ods-json-viewer__value--boolean{color:var(--ods-status-pending-fg)}.ods-json-viewer__value--null{color:var(--ods-text-tertiary);font-style:italic}.ods-json-viewer__copy{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;opacity:0;transition:opacity var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-json-viewer__copy>svg{width:10px;height:10px}.ods-json-viewer__row:hover .ods-json-viewer__copy{opacity:1}.ods-json-viewer__copy:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-json-viewer__copy--success{opacity:1;color:var(--ods-status-success)}.ods-xml-viewer{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);overflow:hidden;font-family:var(--ods-font-family-mono)}.ods-xml-viewer__head{display:flex;align-items:center;gap:var(--ods-space-2);justify-content:space-between;padding:var(--ods-space-1) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default)}.ods-xml-viewer__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-xml-viewer__status{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-xml-viewer__status--error{color:var(--ods-status-failed-fg)}.ods-xml-viewer__body{padding:var(--ods-space-1) 0;overflow:auto;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);line-height:20px}.ods-xml-viewer__raw{margin:0;padding:var(--ods-space-2) var(--ods-space-3);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);color:var(--ods-text-body);white-space:pre-wrap;word-break:break-word}.ods-xml-viewer__row{display:flex;align-items:center;gap:4px;padding:0 var(--ods-space-3);white-space:nowrap;min-width:0}.ods-xml-viewer__row--element{cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-xml-viewer__row--element:hover{background:var(--ods-surface-subtle)}.ods-xml-viewer__row--element:hover .ods-xml-viewer__copy,.ods-xml-viewer__row--element .ods-xml-viewer__copy--copied{opacity:1}.ods-xml-viewer__caret{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-xml-viewer__caret>svg{color:inherit !important;fill:currentColor}.ods-xml-viewer__caret:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-xml-viewer__caret:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-xml-viewer__caret--open{transform:rotate(90deg);color:var(--ods-accent)}.ods-xml-viewer__caret-spacer{display:inline-block;width:12px;flex-shrink:0}.ods-xml-viewer__bracket{color:var(--ods-text-tertiary);font-weight:500}.ods-xml-viewer__tag{color:var(--ods-status-failed-fg);font-weight:600}.ods-xml-viewer__attr{display:inline-flex;align-items:center;margin-left:var(--ods-space-1)}.ods-xml-viewer__attr-name{color:var(--ods-status-pending-fg);font-weight:500}.ods-xml-viewer__attr-eq{color:var(--ods-text-tertiary)}.ods-xml-viewer__attr-value{color:var(--ods-status-success-fg)}.ods-xml-viewer__preview{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin:0 4px}.ods-xml-viewer__text{color:var(--ods-text-body);white-space:pre-wrap;word-break:break-word}.ods-xml-viewer__comment{color:var(--ods-text-tertiary);font-style:italic;white-space:pre-wrap}.ods-xml-viewer__cdata{color:var(--ods-status-running-fg);white-space:pre-wrap;word-break:break-word}.ods-xml-viewer__pi{color:var(--ods-status-pending-fg);font-style:italic}.ods-xml-viewer__copy{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:var(--ods-space-1);padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;opacity:0;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-xml-viewer__copy>svg{color:inherit !important;fill:currentColor}.ods-xml-viewer__copy:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-xml-viewer__copy:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px;opacity:1}.ods-xml-viewer__copy--copied{color:var(--ods-status-success-fg);transform:scale(1.15);animation:ods-xml-viewer-copy-flash 1.2s ease-out forwards}@keyframes ods-xml-viewer-copy-flash{0%{transform:scale(1.15)}20%{transform:scale(1)}100%{transform:scale(1)}}.ods-yaml-viewer{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);overflow:hidden;font-family:var(--ods-font-family-mono)}.ods-yaml-viewer--wrap .ods-yaml-viewer__line{white-space:pre-wrap;word-break:break-word}.ods-yaml-viewer__head{display:flex;align-items:center;gap:var(--ods-space-2);justify-content:space-between;padding:var(--ods-space-1) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default)}.ods-yaml-viewer__head-right{display:inline-flex;align-items:center;gap:var(--ods-space-2)}.ods-yaml-viewer__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-yaml-viewer__status{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-yaml-viewer__body{padding:var(--ods-space-1) 0;overflow:auto;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);line-height:20px}.ods-yaml-viewer__line{display:flex;align-items:center;gap:0;padding:0 var(--ods-space-2) 0 0;min-height:20px;white-space:nowrap;position:relative}.ods-yaml-viewer__line--key:hover,.ods-yaml-viewer__line--sequence:hover{background:var(--ods-surface-subtle)}.ods-yaml-viewer__line--collapsed .ods-yaml-viewer__value{opacity:.6}.ods-yaml-viewer__line-no{flex-shrink:0;width:36px;padding:0 var(--ods-space-2) 0 0;text-align:right;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);user-select:none;border-right:1px solid var(--ods-border-soft);margin-right:var(--ods-space-2)}.ods-yaml-viewer__indent{display:inline-block;flex-shrink:0}.ods-yaml-viewer__caret{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;margin-right:4px;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-yaml-viewer__caret>svg{color:inherit !important;fill:currentColor}.ods-yaml-viewer__caret:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-yaml-viewer__caret:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-yaml-viewer__caret--open{transform:rotate(90deg);color:var(--ods-accent)}.ods-yaml-viewer__caret-spacer{display:inline-block;width:12px;margin-right:4px;flex-shrink:0}.ods-yaml-viewer__key{color:var(--ods-text-primary);font-weight:500}.ods-yaml-viewer__colon{color:var(--ods-text-tertiary)}.ods-yaml-viewer__dash{color:var(--ods-accent);font-weight:600}.ods-yaml-viewer__value{font-variant-numeric:tabular-nums lining-nums}.ods-yaml-viewer__value--string{color:var(--ods-status-success-fg)}.ods-yaml-viewer__value--number{color:var(--ods-status-running-fg)}.ods-yaml-viewer__value--boolean{color:var(--ods-status-pending-fg)}.ods-yaml-viewer__value--null{color:var(--ods-text-tertiary);font-style:italic}.ods-yaml-viewer__comment{color:var(--ods-text-tertiary);font-style:italic}.ods-yaml-viewer__preview{color:var(--ods-text-tertiary);font-style:italic}.ods-yaml-viewer__copy{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;transition:color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-yaml-viewer__copy>svg{color:inherit !important;fill:currentColor}.ods-yaml-viewer__copy:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-yaml-viewer__copy:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-yaml-viewer__copy--copied{color:var(--ods-status-success-fg);transform:scale(1.15);animation:ods-yaml-viewer-copy-flash 1.2s ease-out forwards}@keyframes ods-yaml-viewer-copy-flash{0%{transform:scale(1.15)}20%{transform:scale(1)}100%{transform:scale(1)}}.ods-file-dropzone-wrap{display:flex;flex-direction:column;gap:var(--ods-space-2);width:100%}.ods-file-dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ods-space-2);padding:var(--ods-space-7) var(--ods-space-4);background:var(--ods-surface-canvas);border:1px dashed var(--ods-border-strong);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary);cursor:pointer;transition:border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),padding var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-spring, cubic-bezier(0.34, 1.2, 0.64, 1));text-align:center;user-select:none;outline:none}.ods-file-dropzone--compact{padding:var(--ods-space-4) var(--ods-space-3)}.ods-file-dropzone--has-files{padding:var(--ods-space-4) var(--ods-space-3)}.ods-file-dropzone:focus-visible{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-file-dropzone:hover:not(.ods-file-dropzone--disabled):not(.ods-file-dropzone--over){background:var(--ods-surface-subtle);border-color:var(--ods-text-tertiary)}.ods-file-dropzone--over{background:var(--ods-accent-soft);border-color:var(--ods-accent);border-style:solid;transform:scale(1.01)}.ods-file-dropzone--error{border-color:var(--ods-status-failed);background:var(--ods-status-failed-bg)}.ods-file-dropzone--disabled{opacity:.55;cursor:not-allowed}.ods-file-dropzone__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.ods-file-dropzone__icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--ods-radius-pill);background:var(--ods-accent-soft);color:var(--ods-accent);transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-file-dropzone--over .ods-file-dropzone__icon{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-file-dropzone--error .ods-file-dropzone__icon{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-file-dropzone--compact .ods-file-dropzone__icon{width:28px;height:28px}.ods-file-dropzone--has-files .ods-file-dropzone__icon{width:28px;height:28px}.ods-file-dropzone__title{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-file-dropzone--compact .ods-file-dropzone__title{font-size:var(--ods-font-size-base)}.ods-file-dropzone--has-files .ods-file-dropzone__title{font-size:var(--ods-font-size-base)}.ods-file-dropzone__hint{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-file-dropzone__cta-row{display:inline-flex;align-items:center;gap:var(--ods-space-2);margin-top:var(--ods-space-1)}.ods-file-dropzone__cta{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-accent)}.ods-file-dropzone__kbd-hint{display:inline-flex;align-items:center;gap:4px;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-file-dropzone__kbd{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:22px;padding:0 4px;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;color:var(--ods-text-body)}.ods-file-dropzone__error{margin-top:var(--ods-space-1);font-size:var(--ods-font-size-sm);color:var(--ods-status-failed-fg)}.ods-file-dropzone__list-wrap{display:flex;flex-direction:column;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);overflow:hidden}.ods-file-dropzone__list-head{display:flex;align-items:center;justify-content:space-between;padding:var(--ods-space-1) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-soft);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-file-dropzone__list-title{font-weight:600;color:var(--ods-text-primary);text-transform:uppercase}.ods-file-dropzone__list-status{color:var(--ods-text-tertiary);font-variant-numeric:tabular-nums lining-nums}.ods-file-dropzone__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.ods-file-dropzone__item{display:flex;align-items:center;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);border-bottom:1px solid var(--ods-border-soft);background:var(--ods-surface-canvas);transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-file-dropzone__item:last-child{border-bottom:0}.ods-file-dropzone__item:hover{background:var(--ods-surface-subtle)}.ods-file-dropzone__item--error{background:var(--ods-status-failed-bg)}.ods-file-dropzone__item--done .ods-file-dropzone__item-name{color:var(--ods-text-body)}.ods-file-dropzone__item-thumb{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);overflow:hidden}.ods-file-dropzone__item-thumb img{width:100%;height:100%;object-fit:cover}.ods-file-dropzone__item-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-file-dropzone__item-head{display:flex;align-items:baseline;gap:var(--ods-space-2);min-width:0}.ods-file-dropzone__item-name{flex:1 1 auto;min-width:0;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-file-dropzone__item-size{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);flex-shrink:0}.ods-file-dropzone__item-error{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg)}.ods-file-dropzone__progress{position:relative;width:100%;height:3px;background:var(--ods-surface-muted);border-radius:var(--ods-radius-pill);overflow:hidden;margin-top:2px}.ods-file-dropzone__progress-fill{position:absolute;inset:0 auto 0 0;background:var(--ods-accent);transition:width var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-file-dropzone__item-actions{display:inline-flex;align-items:center;gap:var(--ods-space-1);flex-shrink:0}.ods-file-dropzone__item-status{display:inline-flex;align-items:center;gap:4px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono)}.ods-file-dropzone__item-status--uploading{color:var(--ods-accent)}.ods-file-dropzone__item-status--done{width:18px;height:18px;justify-content:center;background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-radius:var(--ods-radius-pill)}.ods-file-dropzone__item-status--error{width:18px;height:18px;justify-content:center;color:var(--ods-status-failed-fg)}.ods-file-dropzone__spin{display:inline-flex;animation:ods-fd-spin .9s linear infinite}@keyframes ods-fd-spin{to{transform:rotate(360deg)}}.ods-file-dropzone__item-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-file-dropzone__item-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-file-dropzone__item-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-agent-card{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);transition:background-color var(--ods-duration-instant) var(--ods-ease-out),border-color var(--ods-duration-instant) var(--ods-ease-out),box-shadow var(--ods-duration-instant) var(--ods-ease-out)}.ods-agent-card--interactive{cursor:pointer}.ods-agent-card--interactive:hover{background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-agent-card:focus-visible{outline:none;box-shadow:var(--ods-focus-ring);border-color:var(--ods-border-focus)}.ods-agent-card--selected{background:var(--ods-accent-soft);border-color:var(--ods-accent)}.ods-agent-card--selected:hover{background:var(--ods-accent-soft);border-color:var(--ods-accent)}.ods-agent-card--loading,.ods-agent-card--error{cursor:default}.ods-agent-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3);font-size:var(--ods-font-size-sm)}.ods-agent-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-agent-card--dense{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-agent-card--dense .ods-agent-card__head{gap:var(--ods-space-2)}.ods-agent-card__head{display:flex;align-items:center;gap:var(--ods-space-3)}.ods-agent-card__checkbox{display:inline-flex;align-items:center;flex-shrink:0}.ods-agent-card__avatar{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--ods-radius-1);background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-md);font-weight:var(--ods-font-weight-semibold);flex-shrink:0}.ods-agent-card--sm .ods-agent-card__avatar{width:28px;height:28px;font-size:var(--ods-font-size-sm)}.ods-agent-card--lg .ods-agent-card__avatar{width:44px;height:44px;font-size:var(--ods-font-size-lg)}.ods-agent-card__avatar--trigger{background:var(--ods-node-trigger-bg);color:var(--ods-node-trigger-fg);border:1px solid var(--ods-node-trigger-bd)}.ods-agent-card__avatar--action{background:var(--ods-node-action-bg);color:var(--ods-node-action-fg);border:1px solid var(--ods-node-action-bd)}.ods-agent-card__avatar--transform{background:var(--ods-node-transform-bg);color:var(--ods-node-transform-fg);border:1px solid var(--ods-node-transform-bd)}.ods-agent-card__avatar--condition{background:var(--ods-node-condition-bg);color:var(--ods-node-condition-fg);border:1px solid var(--ods-node-condition-bd)}.ods-agent-card__avatar--io{background:var(--ods-node-io-bg);color:var(--ods-node-io-fg);border:1px solid var(--ods-node-io-bd)}.ods-agent-card__id{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}.ods-agent-card__name{font-size:var(--ods-font-size-md);font-weight:var(--ods-font-weight-semibold);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-agent-card--sm .ods-agent-card__name{font-size:var(--ods-font-size-sm)}.ods-agent-card--lg .ods-agent-card__name{font-size:var(--ods-font-size-lg)}.ods-agent-card__role{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-agent-card--sm .ods-agent-card__role{font-size:var(--ods-font-size-xs)}.ods-agent-card__status{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:22px;padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);border:1px solid rgba(0,0,0,0);font-size:var(--ods-font-size-xs);font-weight:var(--ods-font-weight-medium);white-space:nowrap;flex-shrink:0}.ods-agent-card__status--idle{background:var(--ods-status-idle-bg);color:var(--ods-status-idle-fg);border-color:var(--ods-status-idle-bd)}.ods-agent-card__status--running{background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd)}.ods-agent-card__status--success{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-agent-card__status--failed{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd)}.ods-agent-card__status--paused{background:var(--ods-surface-sunken);color:var(--ods-text-body);border-color:var(--ods-border-default)}.ods-agent-card__status--draft{background:var(--ods-surface-muted);color:var(--ods-text-body);border-color:var(--ods-border-default)}.ods-agent-card__status-dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:currentColor;flex-shrink:0}.ods-agent-card__meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-agent-card__model,.ods-agent-card__tools{display:inline-flex;align-items:center;gap:4px;padding:1px var(--ods-space-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);color:var(--ods-text-body);letter-spacing:var(--ods-tracking-mono)}.ods-agent-card__model>svg,.ods-agent-card__tools>svg{color:var(--ods-text-tertiary);flex-shrink:0}.ods-agent-card__model>span,.ods-agent-card__tools>span{font-variant-numeric:tabular-nums lining-nums;font-weight:var(--ods-font-weight-semibold);color:var(--ods-text-primary)}.ods-agent-card__last-used{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);color:var(--ods-text-tertiary);font-variant-numeric:tabular-nums lining-nums}.ods-agent-card__tags{display:flex;flex-wrap:wrap;align-items:center;column-gap:var(--ods-space-1-5);row-gap:var(--ods-space-1-5)}.ods-agent-card__tag-overflow{color:var(--ods-text-secondary);cursor:help}.ods-agent-card__stats,.ods-agent-card__actions{display:flex;align-items:center;gap:var(--ods-space-2);padding-top:var(--ods-space-2);border-top:1px solid var(--ods-border-soft)}.ods-agent-card__skeleton{display:block;border-radius:var(--ods-radius-1);background:linear-gradient(90deg, var(--ods-border-default) 0%, var(--ods-surface-canvas) 50%, var(--ods-border-default) 100%);background-size:200% 100%}.ods-agent-card__skeleton--avatar{width:36px;height:36px;flex-shrink:0}.ods-agent-card__skeleton--name{width:60%;min-width:80px;height:14px}.ods-agent-card__skeleton--role{width:80%;min-width:120px;height:12px;margin-top:4px}.ods-agent-card__skeleton--pill{width:64px;height:22px;flex-shrink:0;border-radius:var(--ods-radius-1)}.ods-agent-card__skeleton--chip{width:80px;height:18px}.ods-agent-card--error{border-color:var(--ods-status-failed-bd);background:var(--ods-status-failed-bg)}.ods-agent-card__error{display:flex;align-items:flex-start;gap:var(--ods-space-2);color:var(--ods-status-failed-fg)}.ods-agent-card__error-icon{flex-shrink:0;color:var(--ods-status-failed);margin-top:2px}.ods-agent-card__error-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-agent-card__error-title{font-size:var(--ods-font-size-sm);font-weight:var(--ods-font-weight-semibold);color:var(--ods-status-failed-fg)}.ods-agent-card__error-message{font-size:var(--ods-font-size-xs);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-agent-card__error-retry{background:rgba(0,0,0,0);border:1px solid var(--ods-status-failed-bd);color:var(--ods-status-failed-fg);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:var(--ods-font-weight-medium);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);cursor:pointer;flex-shrink:0}.ods-agent-card__error-retry:hover{background:var(--ods-status-failed-bd)}.ods-agent-card__error-retry:focus-visible{outline:none;box-shadow:var(--ods-focus-ring-error)}.ods-tool-card{display:flex;align-items:center;gap:var(--ods-space-3);padding:var(--ods-space-3) var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tool-card--compact{padding:var(--ods-space-2) var(--ods-space-3)}.ods-tool-card--interactive{cursor:pointer}.ods-tool-card--interactive:hover{background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-tool-card--interactive:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-color:var(--ods-border-focus)}.ods-tool-card--enabled{border-color:var(--ods-accent-border)}.ods-tool-card--enabled .ods-tool-card__icon{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-tool-card--disabled{opacity:.55;cursor:not-allowed;pointer-events:auto}.ods-tool-card--disabled.ods-tool-card--interactive{cursor:not-allowed}.ods-tool-card__icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);color:var(--ods-text-body)}.ods-tool-card__icon>svg{color:inherit !important;fill:currentColor}.ods-tool-card__icon--search{background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd)}.ods-tool-card__icon--database{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-tool-card__icon--web{background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd)}.ods-tool-card__icon--code{background:var(--ods-node-transform-bg);color:var(--ods-node-transform-fg);border-color:var(--ods-node-transform-bd)}.ods-tool-card__icon--file{background:var(--ods-status-idle-bg);color:var(--ods-status-idle-fg);border-color:var(--ods-status-idle-bd)}.ods-tool-card__icon--api{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-tool-card__icon--ai{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent-border)}.ods-tool-card__icon--custom{background:var(--ods-node-io-bg);color:var(--ods-node-io-fg);border-color:var(--ods-node-io-bd)}.ods-tool-card__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-tool-card__head{display:flex;align-items:center;gap:var(--ods-space-1);min-width:0}.ods-tool-card__name{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-tool-card__new{display:inline-flex;align-items:center;height:16px;padding:0 var(--ods-space-1);background:var(--ods-accent);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:9px;font-weight:700;letter-spacing:var(--ods-tracking-mono)}.ods-tool-card__badge{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-tool-card__desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ods-tool-card__switch{display:inline-flex;align-items:center;width:32px;height:18px;padding:1px;border:0;background:var(--ods-border-strong);border-radius:var(--ods-radius-pill);cursor:pointer;flex-shrink:0;transition:background-color var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tool-card__switch--on{background:var(--ods-accent)}.ods-tool-card__switch:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-tool-card__switch:disabled{cursor:not-allowed;opacity:.6;pointer-events:auto}.ods-tool-card__switch-thumb{width:14px;height:14px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);box-shadow:0 1px 2px rgba(0,0,0,.12);transition:transform var(--ods-duration-base, 180ms) var(--ods-ease-spring, cubic-bezier(0.34, 1.2, 0.64, 1))}.ods-tool-card__switch--on .ods-tool-card__switch-thumb{transform:translateX(14px)}.ods-trace-step{display:flex;align-items:stretch;gap:var(--ods-space-3);font-family:var(--ods-font-family-sans)}.ods-trace-step--last .ods-trace-step__body{padding-bottom:0}.ods-trace-step--no-rail .ods-trace-step__rail{display:none}.ods-trace-step__rail{position:relative;display:flex;flex-direction:column;align-items:center;width:16px;flex-shrink:0}.ods-trace-step__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-body);flex-shrink:0;z-index:1;margin-top:6px}.ods-trace-step__icon>svg{color:inherit !important;fill:currentColor}.ods-trace-step__line{flex:1 1 auto;width:1px;background:var(--ods-border-default);min-height:16px}.ods-trace-step--thought .ods-trace-step__icon{color:var(--ods-text-body)}.ods-trace-step--tool .ods-trace-step__icon{color:var(--ods-accent);border-color:var(--ods-accent-border);background:var(--ods-accent-soft)}.ods-trace-step--input .ods-trace-step__icon{color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd);background:var(--ods-status-running-bg)}.ods-trace-step--output .ods-trace-step__icon{color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd);background:var(--ods-status-success-bg)}.ods-trace-step--error .ods-trace-step__icon{color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd);background:var(--ods-status-failed-bg)}.ods-trace-step--status-running .ods-trace-step__icon{border-color:var(--ods-accent);color:var(--ods-accent);background:var(--ods-accent-soft)}.ods-trace-step__spin{display:inline-flex;width:12px;height:12px;animation:ods-trace-spin .9s linear infinite}.ods-trace-step__spin>svg{color:inherit !important;fill:currentColor}@keyframes ods-trace-spin{to{transform:rotate(360deg)}}.ods-trace-step__body{flex:1 1 auto;min-width:0;padding:0 0 var(--ods-space-3)}.ods-trace-step__head{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;padding:4px 0;border:0;background:rgba(0,0,0,0);text-align:left;cursor:pointer;color:inherit;font-family:inherit;border-radius:var(--ods-radius-1)}.ods-trace-step__head:disabled{cursor:default;pointer-events:auto}.ods-trace-step__head:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-trace-step__head:hover:not(:disabled) .ods-trace-step__title{color:var(--ods-accent)}.ods-trace-step__index{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:18px;padding:0 var(--ods-space-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:600;color:var(--ods-text-tertiary);flex-shrink:0}.ods-trace-step__index--pulsing{animation:ods-trace-index-pulse 1.4s ease-in-out infinite;background:var(--ods-accent-soft);border-color:var(--ods-accent-border);color:var(--ods-accent)}@keyframes ods-trace-index-pulse{0%,100%{box-shadow:0 0 0 0 var(--ods-accent-soft)}50%{box-shadow:0 0 0 4px rgba(0,0,0,0)}}.ods-trace-step__title{flex:1 1 auto;min-width:0;font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-trace-step__tool{display:inline-flex;align-items:center;gap:4px;padding:1px var(--ods-space-1);background:var(--ods-accent-soft);color:var(--ods-accent);border:1px solid var(--ods-accent-border);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:500;flex-shrink:0}.ods-trace-step__tool-icon{display:inline-flex;width:10px;height:10px;align-items:center;justify-content:center;color:inherit}.ods-trace-step__tool-icon>svg{color:inherit !important;fill:currentColor}.ods-trace-step__meta{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);flex-shrink:0}.ods-trace-step__tokens>span{font-weight:600;color:var(--ods-text-body)}.ods-trace-step__duration{color:var(--ods-text-body);font-weight:500}.ods-trace-step__chev{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-trace-step__chev>svg{color:inherit !important;fill:currentColor}.ods-trace-step__chev--open{transform:rotate(180deg);color:var(--ods-accent)}.ods-trace-step__content{margin-top:var(--ods-space-2)}.ods-trace-step__content-inner{padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-surface-subtle);border:1px solid var(--ods-border-soft);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:1.5}.ods-heatmap{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-heatmap__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3)}.ods-heatmap__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-heatmap__total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-heatmap__frame{display:flex;gap:var(--ods-space-2)}.ods-heatmap__y-axis{display:flex;flex-direction:column;flex-shrink:0;align-items:flex-end;padding-right:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-heatmap__corner{flex-shrink:0}.ods-heatmap__y-tick{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0;white-space:nowrap;line-height:1}.ods-heatmap__plot{position:relative;flex:1 1 auto;display:flex;flex-direction:column;min-width:0}.ods-heatmap__x-axis{display:flex;margin-bottom:var(--ods-heatmap-gap, 2px);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-heatmap__x-tick{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;text-align:center;line-height:1}.ods-heatmap__grid{display:grid}.ods-heatmap__cell{appearance:none;border:0;padding:0;border-radius:var(--ods-heatmap-radius, var(--ods-radius-1));cursor:pointer;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),filter var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));overflow:hidden;display:flex;align-items:center;justify-content:center}.ods-heatmap__cell:hover:not(:disabled),.ods-heatmap__cell:focus-visible:not(:disabled){filter:brightness(0.92);box-shadow:0 0 0 2px var(--ods-surface-canvas),0 0 0 3px currentColor;transform:scale(1.05);z-index:1}.ods-heatmap__cell:focus-visible:not(:disabled){outline:none}.ods-heatmap__cell--empty{cursor:default;background:var(--ods-surface-subtle);border:1px dashed var(--ods-border-soft)}.ods-heatmap__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;font-weight:600;line-height:1;pointer-events:none}.ods-heatmap__tooltip{position:absolute;top:-8px;right:0;z-index:2;display:inline-flex;align-items:center;gap:var(--ods-space-2);padding:4px 8px;background:var(--ods-text-primary);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1;white-space:nowrap;pointer-events:none;box-shadow:var(--ods-shadow-1, 0 2px 8px rgba(0, 0, 0, 0.15));transform:translateY(-100%)}.ods-heatmap__tooltip-axes{opacity:.85}.ods-heatmap__tooltip-value{font-weight:600;font-variant-numeric:tabular-nums lining-nums}.ods-heatmap__legend{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-heatmap__legend-bar{display:inline-flex;height:10px;border-radius:var(--ods-radius-1);overflow:hidden}.ods-heatmap__legend-stop{width:28px;height:100%}.ods-heatmap__legend-min,.ods-heatmap__legend-max{line-height:1}.ods-heatmap__legend-caption{margin-left:var(--ods-space-3);color:var(--ods-text-body)}.ods-calheat{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-calheat__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);margin-bottom:var(--ods-space-2)}.ods-calheat__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-calheat__total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-calheat__frame{display:flex;gap:var(--ods-space-1)}.ods-calheat__weekdays{display:flex;flex-direction:column;flex-shrink:0;align-items:flex-end;padding-right:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;color:var(--ods-text-tertiary)}.ods-calheat__weekday-spacer{flex-shrink:0}.ods-calheat__weekday{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0;line-height:1}.ods-calheat__plot{position:relative;flex:1 1 auto;min-width:0;overflow-x:auto}.ods-calheat__months{display:grid;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;color:var(--ods-text-tertiary);line-height:1}.ods-calheat__month{display:inline-block;text-align:left;white-space:nowrap}.ods-calheat__grid{display:grid;grid-auto-flow:column}.ods-calheat__pad{visibility:hidden}.ods-calheat__cell{appearance:none;border:0;padding:0;cursor:pointer;background:var(--ods-surface-subtle);transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),filter var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-calheat__cell:hover:not(:disabled),.ods-calheat__cell:focus-visible:not(:disabled){filter:brightness(0.92);box-shadow:0 0 0 1px var(--ods-surface-canvas),0 0 0 2px currentColor;transform:scale(1.15);z-index:1}.ods-calheat__cell:focus-visible:not(:disabled){outline:none}.ods-calheat__cell--empty{cursor:default}.ods-calheat__tooltip{position:absolute;top:-8px;right:0;transform:translateY(-100%);z-index:2;padding:4px 8px;background:var(--ods-text-primary);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1;white-space:nowrap;pointer-events:none;box-shadow:var(--ods-shadow-1, 0 2px 8px rgba(0, 0, 0, 0.15))}.ods-calheat__legend{display:inline-flex;align-items:center;gap:var(--ods-space-2);margin-left:auto;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-calheat__legend-bar{display:inline-flex;gap:2px}.ods-calheat__legend-stop{display:inline-block}.ods-gauge{display:inline-flex;flex-direction:column;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-3);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-gauge__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-gauge__ring{position:relative;display:inline-block}.ods-gauge__center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.ods-gauge__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xl);font-weight:600;color:var(--ods-text-primary);line-height:1}.ods-gauge__unit{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:2px}.ods-gauge--arc .ods-gauge__center{align-items:center;justify-content:flex-end;padding-bottom:4px}.ods-gauge--linear{flex-direction:column;align-items:stretch;width:100%}.ods-gauge__linear{display:flex;flex-direction:column;gap:4px;width:100%}.ods-gauge__bar{position:relative;width:100%;height:10px;border-radius:var(--ods-radius-1);overflow:hidden}.ods-gauge__band{position:absolute;top:0;bottom:0}.ods-gauge__fill{position:absolute;top:0;bottom:0;left:0;border-radius:var(--ods-radius-1)}.ods-gauge__inline{display:inline-flex;align-items:baseline;gap:4px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-gauge__inline .ods-gauge__unit{margin-top:0;font-size:var(--ods-font-size-xs);font-weight:500}.ods-gauge__legend{list-style:none;margin:0;padding:0;display:inline-flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-gauge__legend-item{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-body)}.ods-gauge__legend-dot{width:8px;height:8px;border-radius:var(--ods-radius-1);flex-shrink:0}.ods-gauge__legend-label{line-height:1}.ods-status-tiles{display:inline-flex;flex-direction:column;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans)}.ods-status-tiles__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs)}.ods-status-tiles__title{font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-status-tiles__summary{color:var(--ods-text-body);font-variant-numeric:tabular-nums lining-nums}.ods-status-tiles__row{display:inline-flex;align-items:center}.ods-status-tiles__tile{appearance:none;border:0;padding:0;margin:0;cursor:default;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),filter var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-status-tiles__tile--interactive{cursor:pointer}.ods-status-tiles__tile--interactive:hover,.ods-status-tiles__tile--interactive:focus-visible,.ods-status-tiles__tile--interactive--active{filter:brightness(0.9);transform:translateY(-1px) scale(1.1);box-shadow:0 0 0 1px var(--ods-surface-canvas),0 0 0 2px currentColor}.ods-status-tiles__tile--interactive:focus-visible{outline:none}.ods-sankey{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-sankey__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3)}.ods-sankey__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-sankey__total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-sankey__plot{position:relative;margin:0 auto}.ods-sankey__svg{width:100%;height:100%;overflow:visible}.ods-sankey__link{transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sankey__node{transition:filter var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sankey__node:hover,.ods-sankey__node--active{filter:brightness(0.88)}.ods-sankey__node:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-sankey__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);fill:var(--ods-text-body);pointer-events:none}.ods-count-up{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum"}
1
+ *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-base);line-height:var(--ods-line-height-base);color:var(--ods-text-primary);background:var(--ods-surface-canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code,pre,.font-mono{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums}::selection{background:var(--ods-accent-soft);color:var(--ods-text-primary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:rgba(0,0,0,0)}::-webkit-scrollbar-thumb{background:var(--ods-border-strong);border-radius:var(--ods-radius-1)}::-webkit-scrollbar-thumb:hover{background:var(--ods-text-tertiary)}.ods-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--ods-space-2);border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-weight:500;line-height:1;letter-spacing:0;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));user-select:none;white-space:nowrap;outline:none;text-decoration:none}.ods-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-btn:active:not(:disabled):not([aria-disabled=true]){transform:scale(0.985)}.ods-btn:disabled,.ods-btn[aria-disabled=true]{--btn-color: var(--ods-text-tertiary);color:var(--btn-color);background:var(--ods-surface-muted);border-color:var(--ods-border-default);opacity:.85}.ods-btn__content{display:inline-flex;align-items:center;gap:var(--ods-space-2);transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-btn__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ods-btn__icon svg{display:block;width:1em;height:1em}.ods-btn__label{display:inline-block}.ods-btn__icon--spinner svg{animation:ods-btn-spin .8s linear infinite}@media(prefers-reduced-motion: reduce){.ods-btn__icon--spinner svg{animation:none}}.ods-btn--pressed:not(:disabled){background:var(--ods-surface-sunken);border-color:var(--ods-border-strong)}.ods-btn--pressed.ods-btn--primary:not(:disabled){background:var(--ods-accent-press);border-color:var(--ods-accent-press)}.ods-btn--pressed.ods-btn--danger:not(:disabled){background:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-fg)}.ods-btn--primary{--btn-color: #FFFFFF;background:var(--ods-accent);color:var(--btn-color);border-color:var(--ods-accent)}.ods-btn--primary:hover:not(:disabled){background:var(--ods-accent-hover);border-color:var(--ods-accent-hover)}.ods-btn--primary:active:not(:disabled){background:var(--ods-accent-press);border-color:var(--ods-accent-press)}.ods-btn--secondary{--btn-color: var(--ods-text-primary);background:var(--ods-surface-canvas);color:var(--btn-color);border-color:var(--ods-border-strong)}.ods-btn--secondary:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-btn--secondary:active:not(:disabled){background:var(--ods-surface-sunken)}.ods-btn--ghost{--btn-color: var(--ods-text-primary);background:rgba(0,0,0,0);color:var(--btn-color);border-color:rgba(0,0,0,0)}.ods-btn--ghost:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-btn--ghost:active:not(:disabled){background:var(--ods-surface-sunken)}.ods-btn--danger{--btn-color: #FFFFFF;background:var(--ods-status-failed);color:var(--btn-color);border-color:var(--ods-status-failed)}.ods-btn--danger:hover:not(:disabled){background:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-fg)}.ods-btn--icon{--btn-color: var(--ods-text-body);background:rgba(0,0,0,0);color:var(--btn-color);aspect-ratio:1/1;border-color:rgba(0,0,0,0)}.ods-btn--icon:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-btn--icon:active:not(:disabled){background:var(--ods-surface-sunken)}.ods-btn__content,.ods-btn__label,.ods-btn__icon,.ods-btn__spinner{color:var(--btn-color)}.ods-btn--sm{height:var(--ods-layout-control-height-sm);padding:0 var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-btn--sm .ods-btn__icon svg{width:12px;height:12px}.ods-btn--sm.ods-btn--icon{width:var(--ods-layout-control-height-sm);padding:0}.ods-btn--md{height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);font-size:var(--ods-font-size-md)}.ods-btn--md .ods-btn__icon svg{width:14px;height:14px}.ods-btn--md.ods-btn--icon{width:var(--ods-layout-control-height);padding:0}.ods-btn--lg{height:var(--ods-layout-control-height-lg);padding:0 var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-btn--lg .ods-btn__icon svg{width:16px;height:16px}.ods-btn--lg.ods-btn--icon{width:var(--ods-layout-control-height-lg);padding:0}.ods-btn--full{width:100%}@keyframes ods-btn-spin{to{transform:rotate(360deg)}}.ods-input{display:flex;flex-direction:column;width:100%;font-family:var(--ods-font-family-sans)}.ods-input__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body);display:block;margin-bottom:var(--ods-space-1);line-height:var(--ods-line-height-snug)}.ods-input__required{margin-left:4px;color:var(--ods-status-failed);font-weight:600}.ods-input__wrapper{position:relative;display:flex;align-items:center;width:100%}.ods-input__field{width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-base);line-height:1;color:var(--ods-text-primary);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);outline:none;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-input__field[type=search]::-webkit-search-decoration,.ods-input__field[type=search]::-webkit-search-cancel-button,.ods-input__field[type=search]::-webkit-search-results-button,.ods-input__field[type=search]::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}.ods-input__field[type=number]::-webkit-inner-spin-button,.ods-input__field[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ods-input__field:hover{border-color:var(--ods-text-tertiary)}.ods-input__field:focus,.ods-input__field:focus-visible{border-color:var(--ods-border-focus);box-shadow:var(--ods-focus-ring)}.ods-input__field::placeholder{color:var(--ods-text-disabled)}.ods-input__field:disabled{background:var(--ods-surface-muted);color:var(--ods-text-disabled);cursor:not-allowed;border-color:var(--ods-border-default)}.ods-input--error .ods-input__field{border-color:var(--ods-status-failed)}.ods-input--error .ods-input__field:focus,.ods-input--error .ods-input__field:focus-visible{box-shadow:var(--ods-focus-ring-error)}.ods-input__error-message{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg);margin-top:var(--ods-space-1);line-height:var(--ods-line-height-snug)}.ods-input__helper{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:var(--ods-space-1);line-height:var(--ods-line-height-snug)}.ods-input__icon--left,.ods-input__icon--right{position:absolute;top:50%;transform:translateY(-50%);color:var(--ods-text-tertiary);display:inline-flex;align-items:center;justify-content:center;pointer-events:none}.ods-input__icon--left svg,.ods-input__icon--right svg{width:14px;height:14px;display:block}.ods-input__icon--left{left:var(--ods-space-2)}.ods-input__icon--right{right:var(--ods-space-2)}.ods-input__right{position:absolute;top:50%;right:5px;transform:translateY(-50%);display:inline-flex;align-items:center;gap:4px}.ods-input__field--with-left-icon{padding-left:30px}.ods-input__field--with-right-icon{padding-right:30px}.ods-input__field--with-right-actions{padding-right:60px}.ods-input__clear{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-input__clear:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-input__clear:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}@media(prefers-reduced-motion: no-preference){.ods-input__clear{animation:ods-input-clear-in var(--ods-duration-fast, 120ms) var(--ods-ease-spring, cubic-bezier(0.34, 1.2, 0.64, 1))}}@keyframes ods-input-clear-in{from{opacity:0;transform:scale(0.6)}to{opacity:1;transform:scale(1)}}.ods-input__kbd{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:24px;padding:0 6px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:0 1px 0 var(--ods-border-default);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;color:var(--ods-text-body);letter-spacing:var(--ods-tracking-mono);pointer-events:none;user-select:none}.ods-input--search .ods-input__field{background:var(--ods-surface-subtle);border-color:var(--ods-border-default)}.ods-input--search .ods-input__field:hover:not(:disabled){background:var(--ods-surface-canvas);border-color:var(--ods-border-strong)}.ods-input--search .ods-input__field:focus,.ods-input--search .ods-input__field:focus-visible{background:var(--ods-surface-canvas);border-color:var(--ods-border-focus)}.ods-input--search .ods-input__icon--left{color:var(--ods-text-body)}.ods-input--search .ods-input__kbd{background:var(--ods-surface-subtle);box-shadow:none}.ods-input--sm .ods-input__field{height:var(--ods-layout-control-height-sm);padding:0 var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-input--sm .ods-input__field--with-left-icon{padding-left:24px}.ods-input--sm .ods-input__field--with-right-icon{padding-right:24px}.ods-input--sm .ods-input__field--with-right-actions{padding-right:52px}.ods-input--sm .ods-input__icon--left svg,.ods-input--sm .ods-input__icon--right svg{width:12px;height:12px}.ods-input--sm .ods-input__kbd{height:16px;min-width:22px;font-size:9px}.ods-input--lg .ods-input__field{height:var(--ods-layout-control-height-lg);padding:0 var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-input--lg .ods-input__field--with-left-icon{padding-left:38px}.ods-input--lg .ods-input__field--with-right-icon{padding-right:38px}.ods-input--lg .ods-input__field--with-right-actions{padding-right:72px}.ods-input--lg .ods-input__icon--left{left:14px}.ods-input--lg .ods-input__right{right:8px;gap:6px}.ods-input--lg .ods-input__icon--left svg,.ods-input--lg .ods-input__icon--right svg{width:16px;height:16px}.ods-input--lg .ods-input__clear{width:22px;height:22px}.ods-input--lg .ods-input__kbd{height:20px;min-width:28px;font-size:11px}.ods-input--disabled{opacity:1;pointer-events:none}.ods-textarea{display:flex;flex-direction:column;width:100%;font-family:var(--ods-font-family-sans)}.ods-textarea__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body);display:block;margin-bottom:var(--ods-space-1)}.ods-textarea__wrapper{position:relative;width:100%}.ods-textarea__field{width:100%;min-height:64px;padding:var(--ods-space-2) var(--ods-space-3);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-base);line-height:var(--ods-line-height-base);color:var(--ods-text-primary);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);outline:none;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));resize:vertical}.ods-textarea__field:hover{border-color:var(--ods-text-tertiary)}.ods-textarea__field:focus,.ods-textarea__field:focus-visible{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-textarea__field::placeholder{color:var(--ods-text-tertiary)}.ods-textarea__field:disabled{background:var(--ods-surface-muted);color:var(--ods-text-disabled);cursor:not-allowed}.ods-textarea--auto-resize .ods-textarea__field{resize:none}.ods-textarea__cmd-popover{list-style:none;margin:0;padding:var(--ods-space-1);min-width:220px;max-width:340px;max-height:280px;overflow-y:auto;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);z-index:1000;font-family:var(--ods-font-family-sans)}.ods-textarea__cmd-item{display:flex;align-items:flex-start;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);cursor:pointer;color:var(--ods-text-primary)}.ods-textarea__cmd-item--active{background:var(--ods-surface-muted)}.ods-textarea__cmd-icon{display:inline-flex;width:14px;height:14px;margin-top:2px;color:var(--ods-accent);flex-shrink:0}.ods-textarea__cmd-icon>svg{color:inherit !important;fill:currentColor}.ods-textarea__cmd-text{display:flex;flex-direction:column;gap:1px;min-width:0}.ods-textarea__cmd-label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);font-weight:500}.ods-textarea__cmd-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-textarea__sel-toolbar{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);z-index:1000;font-family:var(--ods-font-family-sans)}.ods-textarea__sel-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:24px;height:24px;padding:0 6px;background:rgba(0,0,0,0);border:0;border-radius:var(--ods-radius-1);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-textarea__sel-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-textarea__sel-btn>svg{color:inherit !important;fill:currentColor}.ods-textarea__sel-btn-label{font-size:var(--ods-font-size-xs);font-weight:500}.ods-textarea__toolbar{display:inline-flex;align-items:center;flex-wrap:wrap;gap:2px;padding:4px;background:var(--ods-surface-subtle);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);margin-bottom:var(--ods-space-1)}.ods-textarea__toolbar-btn{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 6px;background:rgba(0,0,0,0);border:0;border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-textarea__toolbar-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-textarea__toolbar-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-textarea__toolbar-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px}.ods-textarea__toolbar-icon>svg{color:inherit !important;fill:currentColor;width:14px;height:14px}.ods-textarea__toolbar-text{font-weight:500}.ods-textarea__toolbar-divider{display:inline-block;width:1px;height:16px;background:var(--ods-border-default);margin:0 4px}.ods-textarea__count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);text-align:right;margin-top:var(--ods-space-1);user-select:none}.ods-textarea--error .ods-textarea__field{border-color:var(--ods-status-failed)}.ods-textarea--error .ods-textarea__field:focus,.ods-textarea--error .ods-textarea__field:focus-visible{outline-color:var(--ods-status-failed)}.ods-textarea__error-message{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg);margin-top:var(--ods-space-1)}.ods-textarea--disabled{cursor:not-allowed}.ods-textarea__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:var(--ods-space-1)}.ods-textarea--sm .ods-textarea__field{padding:var(--ods-space-1) var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-textarea--lg .ods-textarea__field{padding:var(--ods-space-3) var(--ods-space-4);font-size:var(--ods-font-size-md)}@keyframes ods-spin{to{transform:rotate(360deg)}}.ods-spinner{display:inline-block;animation:ods-spin .9s linear infinite;color:var(--ods-accent)}.ods-spinner__circle{stroke:currentColor}.ods-spinner--sm{width:16px;height:16px}.ods-spinner--md{width:24px;height:24px}.ods-spinner--lg{width:32px;height:32px}.ods-spinner--xl{width:48px;height:48px}.ods-spinner--accent{color:var(--ods-accent)}.ods-spinner--primary{color:var(--ods-text-primary)}.ods-spinner--muted{color:var(--ods-text-tertiary)}.ods-spinner--success{color:var(--ods-status-success)}.ods-spinner--warning{color:var(--ods-status-pending)}.ods-spinner--error{color:var(--ods-status-failed)}.ods-spinner--inverse{color:var(--ods-surface-canvas)}@media(prefers-reduced-motion: reduce){.ods-spinner{animation-duration:4s}}.ods-checkbox{display:inline-flex;align-items:flex-start;gap:var(--ods-space-2);cursor:pointer;user-select:none;position:relative;font-family:var(--ods-font-family-sans)}.ods-checkbox--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ods-checkbox__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.ods-checkbox__box{position:relative;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-surface-canvas);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));flex-shrink:0;margin-top:1px}.ods-checkbox__input:focus-visible+.ods-checkbox__box{box-shadow:var(--ods-focus-ring);border-color:var(--ods-border-focus)}.ods-checkbox__box--checked,.ods-checkbox__box--indeterminate{background:var(--ods-accent);border-color:var(--ods-accent)}.ods-checkbox__text{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-checkbox__label{font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);line-height:var(--ods-line-height-snug)}.ods-checkbox__required{margin-left:4px;color:var(--ods-status-failed);font-weight:600}.ods-checkbox__description{font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-checkbox__error-message{font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-status-failed);line-height:var(--ods-line-height-snug)}.ods-checkbox__checkmark{width:10px;height:10px}.ods-checkbox__checkmark path{stroke-dasharray:16;stroke-dashoffset:16;transition:stroke-dashoffset var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-checkbox__checkmark--checked path{stroke-dashoffset:0}@media(prefers-reduced-motion: reduce){.ods-checkbox__checkmark path{transition:none}}.ods-checkbox__dash{width:10px;height:10px}.ods-checkbox--sm{gap:var(--ods-space-1-5)}.ods-checkbox--sm .ods-checkbox__box{width:12px;height:12px;margin-top:0}.ods-checkbox--sm .ods-checkbox__checkmark,.ods-checkbox--sm .ods-checkbox__dash{width:8px;height:8px}.ods-checkbox--sm .ods-checkbox__label{font-size:var(--ods-font-size-sm)}.ods-checkbox--sm .ods-checkbox__description,.ods-checkbox--sm .ods-checkbox__error-message{font-size:var(--ods-font-size-xs)}.ods-checkbox--lg{gap:var(--ods-space-2-5)}.ods-checkbox--lg .ods-checkbox__box{width:16px;height:16px;margin-top:2px}.ods-checkbox--lg .ods-checkbox__checkmark,.ods-checkbox--lg .ods-checkbox__dash{width:12px;height:12px}.ods-checkbox--lg .ods-checkbox__label{font-size:var(--ods-font-size-lg)}.ods-checkbox--error .ods-checkbox__box{border-color:var(--ods-status-failed)}.ods-checkbox--error .ods-checkbox__box--checked,.ods-checkbox--error .ods-checkbox__box--indeterminate{background:var(--ods-status-failed);border-color:var(--ods-status-failed)}.ods-checkbox--error .ods-checkbox__label{color:var(--ods-status-failed)}.ods-radio-group{display:flex;flex-direction:column;gap:var(--ods-space-2);font-family:var(--ods-font-family-sans)}.ods-radio-group__label{font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body);margin-bottom:var(--ods-space-1)}.ods-radio-group__items{display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-radio-group--horizontal .ods-radio-group__items{flex-direction:row;gap:var(--ods-space-4)}.ods-radio-group--disabled{opacity:.5;cursor:not-allowed}.ods-radio-group--disabled .ods-radio{cursor:not-allowed}.ods-radio-group__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:var(--ods-space-1)}.ods-radio-group__hint--error{color:var(--ods-status-failed-fg)}.ods-radio-group--error .ods-radio__circle{border-color:var(--ods-status-failed)}.ods-radio{display:inline-flex;align-items:flex-start;gap:var(--ods-space-2);cursor:pointer;user-select:none;position:relative;font-family:var(--ods-font-family-sans)}.ods-radio--disabled{opacity:.5;cursor:not-allowed}.ods-radio__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.ods-radio__circle{position:relative;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-top:1px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);flex-shrink:0;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-radio__input:focus-visible+.ods-radio__circle{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-radio--selected .ods-radio__circle{border-color:var(--ods-accent)}.ods-radio__dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:var(--ods-accent);transform:scale(0);transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.34, 1.56, 0.64, 1))}.ods-radio__dot--visible{transform:scale(1)}.ods-radio__text{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-radio__label{font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);line-height:var(--ods-line-height-snug)}.ods-radio__description{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:1.4}.ods-radio--sm .ods-radio__circle{width:12px;height:12px}.ods-radio--sm .ods-radio__dot{width:4px;height:4px}.ods-radio--sm .ods-radio__label{font-size:var(--ods-font-size-sm)}.ods-radio--lg .ods-radio__circle{width:18px;height:18px}.ods-radio--lg .ods-radio__dot{width:8px;height:8px}.ods-radio--lg .ods-radio__label{font-size:var(--ods-font-size-md)}@media(prefers-reduced-motion: reduce){.ods-radio .ods-radio__dot{transition:none}}.ods-switch{display:inline-flex;align-items:center;gap:var(--ods-space-2);cursor:pointer;user-select:none;position:relative;font-family:var(--ods-font-family-sans)}.ods-switch--disabled{opacity:.5;cursor:not-allowed}.ods-switch--with-description{align-items:flex-start}.ods-switch--with-description .ods-switch__track{margin-top:1px}.ods-switch__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.ods-switch__track{position:relative;display:flex;align-items:center;width:36px;height:22px;border-radius:var(--ods-radius-pill);background:var(--ods-border-strong);transition:background-color var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));flex-shrink:0;padding:2px;will-change:background-color}.ods-switch__input:focus-visible+.ods-switch__track{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-switch__track--on{background:var(--ods-accent)}.ods-switch__thumb{width:18px;height:18px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);box-shadow:0 1px 2px rgba(0,0,0,.12);transition:transform var(--ods-duration-base, 180ms) cubic-bezier(0.34, 1.2, 0.64, 1);transform:translateX(0);will-change:transform}.ods-switch__track--on .ods-switch__thumb{transform:translateX(14px)}.ods-switch__text{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-switch__label{font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);line-height:var(--ods-line-height-snug)}.ods-switch__description{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:1.4}.ods-switch--sm .ods-switch__track{width:28px;height:16px;padding:2px}.ods-switch--sm .ods-switch__thumb{width:12px;height:12px}.ods-switch--sm .ods-switch__track--on .ods-switch__thumb{transform:translateX(12px)}.ods-switch--sm .ods-switch__label{font-size:var(--ods-font-size-sm)}.ods-switch--lg .ods-switch__track{width:44px;height:26px;padding:3px}.ods-switch--lg .ods-switch__thumb{width:20px;height:20px}.ods-switch--lg .ods-switch__track--on .ods-switch__thumb{transform:translateX(18px)}.ods-switch--lg .ods-switch__label{font-size:var(--ods-font-size-md)}@media(prefers-reduced-motion: reduce){.ods-switch .ods-switch__thumb{transition:none}}.ods-badge{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);border:1px solid rgba(0,0,0,0);font-family:var(--ods-font-family-sans);font-weight:500;line-height:1;letter-spacing:0;white-space:nowrap;height:22px;font-size:var(--ods-font-size-xs)}.ods-badge--success{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-badge--warning{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-badge--error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd)}.ods-badge--info{background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd)}.ods-badge--neutral{background:var(--ods-status-idle-bg);color:var(--ods-status-idle-fg);border-color:var(--ods-status-idle-bd)}.ods-badge--accent{background:var(--ods-accent-soft);color:var(--ods-accent-strong);border-color:var(--ods-accent)}.ods-badge--outlined{background:var(--ods-surface-canvas)}.ods-badge--sm{height:18px;font-size:10px;padding:0 var(--ods-space-1-5);gap:3px}.ods-badge--lg{height:26px;font-size:var(--ods-font-size-sm);padding:0 var(--ods-space-2-5);gap:var(--ods-space-1-5)}.ods-badge--interactive{cursor:pointer;user-select:none;transition:background-color var(--ods-duration-instant) var(--ods-ease-out),border-color var(--ods-duration-instant) var(--ods-ease-out),transform var(--ods-duration-instant) var(--ods-ease-out)}.ods-badge--interactive:hover{filter:brightness(0.96)}.ods-badge--interactive:active{transform:translateY(0.5px)}.ods-badge:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-badge--truncate .ods-badge__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-badge__dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:currentColor;flex-shrink:0}.ods-badge__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1em;height:1em}.ods-badge__icon>svg{width:100%;height:100%}.ods-badge__text{display:inline-block;min-width:0}.ods-badge__close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:14px;height:14px;margin-left:2px;margin-right:-4px;padding:0;border:none;background:rgba(0,0,0,0);color:currentColor;opacity:.7;border-radius:var(--ods-radius-pill);cursor:pointer;transition:opacity var(--ods-duration-instant) var(--ods-ease-out),background-color var(--ods-duration-instant) var(--ods-ease-out)}.ods-badge__close:hover{opacity:1;background:rgba(0,0,0,.08)}.ods-badge__close:focus-visible{outline:none;opacity:1;box-shadow:var(--ods-focus-ring)}:root{--ods-avatar-palette-0: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--ods-avatar-palette-1: linear-gradient(135deg, #ec4899 0%, #f43f5e 100%);--ods-avatar-palette-2: linear-gradient(135deg, #06b6d4 0%, #3b82f6 100%);--ods-avatar-palette-3: linear-gradient(135deg, #10b981 0%, #059669 100%);--ods-avatar-palette-4: linear-gradient(135deg, #f59e0b 0%, #f97316 100%);--ods-avatar-palette-5: linear-gradient(135deg, #8b5cf6 0%, #d946ef 100%);--ods-avatar-palette-6: linear-gradient(135deg, #14b8a6 0%, #06b6d4 100%);--ods-avatar-palette-7: linear-gradient(135deg, #f43f5e 0%, #ec4899 100%);--ods-avatar-palette-8: linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);--ods-avatar-palette-9: linear-gradient(135deg, #0ea5e9 0%, #14b8a6 100%);--ods-avatar-palette-10: linear-gradient(135deg, #a855f7 0%, #7c3aed 100%);--ods-avatar-palette-11: linear-gradient(135deg, #ef4444 0%, #f59e0b 100%)}.ods-avatar{position:relative;display:inline-flex;flex-shrink:0;font-family:var(--ods-font-family-sans);border-radius:var(--ods-radius-pill)}.ods-avatar--xs{width:20px;height:20px;font-size:9px}.ods-avatar--sm{width:24px;height:24px;font-size:10px}.ods-avatar--md{width:28px;height:28px;font-size:11px}.ods-avatar--lg{width:36px;height:36px;font-size:13px}.ods-avatar--xl{width:48px;height:48px;font-size:16px}.ods-avatar--circle{border-radius:var(--ods-radius-pill)}.ods-avatar--circle .ods-avatar__inner{border-radius:var(--ods-radius-pill)}.ods-avatar--square{border-radius:var(--ods-radius-2)}.ods-avatar--square .ods-avatar__inner{border-radius:var(--ods-radius-2)}.ods-avatar--clickable{cursor:pointer;transition:transform var(--ods-duration-instant) var(--ods-ease-out)}.ods-avatar--clickable:hover{transform:scale(1.04)}.ods-avatar--clickable:active{transform:scale(0.98)}.ods-avatar:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-avatar__inner{display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden;background:var(--ods-accent-soft)}.ods-avatar__inner[data-palette="0"]{background:var(--ods-avatar-palette-0)}.ods-avatar__inner[data-palette="1"]{background:var(--ods-avatar-palette-1)}.ods-avatar__inner[data-palette="2"]{background:var(--ods-avatar-palette-2)}.ods-avatar__inner[data-palette="3"]{background:var(--ods-avatar-palette-3)}.ods-avatar__inner[data-palette="4"]{background:var(--ods-avatar-palette-4)}.ods-avatar__inner[data-palette="5"]{background:var(--ods-avatar-palette-5)}.ods-avatar__inner[data-palette="6"]{background:var(--ods-avatar-palette-6)}.ods-avatar__inner[data-palette="7"]{background:var(--ods-avatar-palette-7)}.ods-avatar__inner[data-palette="8"]{background:var(--ods-avatar-palette-8)}.ods-avatar__inner[data-palette="9"]{background:var(--ods-avatar-palette-9)}.ods-avatar__inner[data-palette="10"]{background:var(--ods-avatar-palette-10)}.ods-avatar__inner[data-palette="11"]{background:var(--ods-avatar-palette-11)}.ods-avatar__image{width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}.ods-avatar__initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:inherit;font-weight:600;color:#fff;text-transform:uppercase;line-height:1}.ods-avatar__icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#fff}.ods-avatar__icon>svg{width:60%;height:60%}.ods-avatar__status{position:absolute;bottom:0;right:0;width:28%;height:28%;min-width:8px;min-height:8px;border-radius:var(--ods-radius-pill);border:2px solid var(--ods-surface-canvas);box-sizing:content-box}.ods-avatar__status--online{background:var(--ods-status-success)}.ods-avatar__status--offline{background:var(--ods-status-idle)}.ods-avatar__status--busy{background:var(--ods-status-failed)}.ods-avatar__status--away{background:var(--ods-status-pending)}.ods-avatar--square .ods-avatar__status{bottom:-2px;right:-2px}.ods-avatar__status--online::after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--ods-status-success);opacity:.55;animation:ods-avatar-pulse 1.8s var(--ods-ease-out) infinite}@keyframes ods-avatar-pulse{0%{transform:scale(1);opacity:.55}70%{transform:scale(1.9);opacity:0}100%{transform:scale(1.9);opacity:0}}@media(prefers-reduced-motion: reduce){.ods-avatar__status--online::after{animation:none;opacity:0}}.ods-avatar-stack{display:inline-flex;align-items:center}.ods-avatar-stack>.ods-avatar{margin-left:-8px}.ods-avatar-stack>.ods-avatar>.ods-avatar__inner{box-shadow:0 0 0 2px var(--ods-surface-canvas)}.ods-avatar-stack>.ods-avatar:first-child{margin-left:0}.ods-avatar-stack--rtl{flex-direction:row-reverse}.ods-avatar-stack--rtl>.ods-avatar{margin-left:0;margin-right:-8px}.ods-avatar-stack--rtl>.ods-avatar:first-child{margin-right:0}.ods-avatar-stack>.ods-avatar:nth-child(1){z-index:6}.ods-avatar-stack>.ods-avatar:nth-child(2){z-index:5}.ods-avatar-stack>.ods-avatar:nth-child(3){z-index:4}.ods-avatar-stack>.ods-avatar:nth-child(4){z-index:3}.ods-avatar-stack>.ods-avatar:nth-child(5){z-index:2}.ods-avatar-stack>.ods-avatar:nth-child(6){z-index:1}.ods-avatar-stack__overflow>.ods-avatar__inner{background:var(--ods-surface-muted)}.ods-avatar-stack__overflow .ods-avatar__initials{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-tooltip{position:relative;background:var(--ods-text-primary);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500;line-height:var(--ods-line-height-snug);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);max-width:240px;word-wrap:break-word;pointer-events:none;user-select:none}.ods-tooltip__arrow{position:absolute;width:6px;height:6px;background:var(--ods-text-primary);transform:rotate(45deg);pointer-events:none;z-index:-1}.ods-tooltip[data-position=top] .ods-tooltip__arrow{bottom:-3px;left:50%;margin-left:-3px}.ods-tooltip[data-position=bottom] .ods-tooltip__arrow{top:-3px;left:50%;margin-left:-3px}.ods-tooltip[data-position=left] .ods-tooltip__arrow{right:-3px;top:50%;margin-top:-3px}.ods-tooltip[data-position=right] .ods-tooltip__arrow{left:-3px;top:50%;margin-top:-3px}.ods-select{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans)}.ods-select--disabled{opacity:.5;cursor:not-allowed}.ods-select--disabled .ods-select__trigger{cursor:not-allowed;pointer-events:auto}.ods-select__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body);margin-bottom:2px}.ods-select__trigger{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-base);cursor:pointer;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-select__trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-select__trigger:hover:not([disabled]):not([aria-disabled=true]){border-color:var(--ods-text-tertiary)}.ods-select__trigger--open{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-select__value{display:flex;align-items:center;gap:var(--ods-space-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;text-align:left}.ods-select__value-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.ods-select__placeholder{color:var(--ods-text-tertiary)}.ods-select__chevron{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-text-tertiary);transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-select__chevron>svg{fill:currentColor}.ods-select__chevron--open{transform:rotate(180deg);color:var(--ods-text-primary)}.ods-select__dropdown{z-index:var(--ods-z-popover);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);max-height:240px;overflow-y:auto;padding:var(--ods-space-1)}.ods-select__dropdown::-webkit-scrollbar{width:6px;height:6px}.ods-select__dropdown::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.ods-select__dropdown::-webkit-scrollbar-thumb{background:var(--ods-border-strong);border-radius:var(--ods-radius-1)}.ods-select__dropdown::-webkit-scrollbar-thumb:hover{background:var(--ods-text-tertiary)}.ods-select__search-wrap{padding:var(--ods-space-1) var(--ods-space-1) 0;margin-bottom:var(--ods-space-1)}.ods-select__search{width:100%;height:var(--ods-layout-control-height-sm);padding:0 var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-sm);font-family:inherit;color:var(--ods-text-primary);outline:none;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-select__search::placeholder{color:var(--ods-text-tertiary)}.ods-select__search:focus{border-color:var(--ods-border-focus)}.ods-select__options{list-style:none;margin:0;padding:0}.ods-select__option{display:flex;align-items:center;gap:var(--ods-space-2);min-height:var(--ods-layout-control-height);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));user-select:none}.ods-select__option:hover{background:var(--ods-surface-muted)}.ods-select__option--highlighted{background:var(--ods-surface-muted)}.ods-select__option--selected{background:var(--ods-accent-soft);font-weight:500;color:var(--ods-accent)}.ods-select__option:has(.ods-select__option-desc){align-items:flex-start;padding-top:var(--ods-space-2);padding-bottom:var(--ods-space-2)}.ods-select__option:has(.ods-select__option-desc) .ods-select__option-icon{margin-top:2px}.ods-select__option--disabled{opacity:.5;cursor:not-allowed}.ods-select__option--disabled:hover{background:rgba(0,0,0,0)}.ods-select__option-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.ods-select__option-text{display:flex;flex-direction:column;flex:1;min-width:0;gap:2px;line-height:1.3}.ods-select__option-label{font-size:var(--ods-font-size-base);color:var(--ods-text-primary);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ods-select__option-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ods-select__check{display:flex;align-items:center;flex-shrink:0;color:var(--ods-accent);margin-left:auto}.ods-select__empty{padding:var(--ods-space-3) var(--ods-space-4);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-select--error .ods-select__trigger{border-color:var(--ods-status-failed)}.ods-select--error .ods-select__trigger--open{outline-color:var(--ods-status-failed)}.ods-select__error{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg);margin-top:2px}.ods-select__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:2px}.ods-select--sm .ods-select__trigger{height:var(--ods-layout-control-height-sm);padding:0 var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-select--md .ods-select__trigger{height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);font-size:var(--ods-font-size-base)}.ods-select--lg .ods-select__trigger{height:var(--ods-layout-control-height-lg);padding:0 var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-multiselect{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans)}.ods-multiselect--disabled{opacity:.5}.ods-multiselect--disabled .ods-multiselect__input-wrap{cursor:not-allowed}.ods-multiselect__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body);margin-bottom:2px}.ods-multiselect__input-wrap{position:relative;display:flex;align-items:center;gap:var(--ods-space-1);min-height:var(--ods-layout-control-height);padding:2px var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);cursor:pointer;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-multiselect__input-wrap:hover{border-color:var(--ods-text-tertiary)}.ods-multiselect__input-wrap--open{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-multiselect__tags{position:relative;flex:1 1 auto;min-width:0;display:flex;align-items:center;flex-wrap:nowrap;gap:var(--ods-space-1);overflow:hidden}.ods-multiselect__measure{position:absolute;visibility:hidden;pointer-events:none;white-space:nowrap;display:flex;gap:var(--ods-space-1);height:0;overflow:hidden}.ods-multiselect__placeholder{font-size:var(--ods-font-size-base);color:var(--ods-text-tertiary);padding:0 2px}.ods-multiselect__tag{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:2px var(--ods-space-1) 2px var(--ods-space-2);background:var(--ods-accent-soft);color:var(--ods-accent);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1.2;white-space:nowrap;max-width:200px;min-width:0}.ods-multiselect__tag--overflow{background:var(--ods-surface-muted);color:var(--ods-text-body);padding:2px var(--ods-space-2);cursor:help}.ods-multiselect__tag-label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0}.ods-multiselect__tag-icon{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;flex-shrink:0}.ods-multiselect__tag-remove{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:0;background:rgba(0,0,0,0);color:currentColor;opacity:.7;cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-multiselect__tag-remove:hover{opacity:1;background:var(--ods-accent-border)}.ods-multiselect__tag-remove:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-multiselect__tag-remove>svg{width:10px;height:10px}.ods-multiselect__tag-remove-spacer{width:14px;height:14px;display:inline-block}.ods-multiselect__chevron{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-text-tertiary);transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-multiselect__chevron>svg{width:14px;height:14px}.ods-multiselect__chevron--open{transform:rotate(180deg);color:var(--ods-text-primary)}.ods-multiselect__clear{border:0;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);cursor:pointer;padding:2px var(--ods-space-1);border-radius:var(--ods-radius-1);flex-shrink:0}.ods-multiselect__clear:hover{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-multiselect__dropdown{z-index:var(--ods-z-popover);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);max-height:280px;display:flex;flex-direction:column;overflow:hidden}.ods-multiselect__search{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3);color:var(--ods-text-tertiary);border-bottom:1px solid var(--ods-border-default);flex-shrink:0}.ods-multiselect__search>svg{width:14px;height:14px;flex-shrink:0}.ods-multiselect__search-input{flex:1 1 auto;min-width:0;border:0;outline:none;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary)}.ods-multiselect__search-input::placeholder{color:var(--ods-text-tertiary)}.ods-multiselect__search-input:focus,.ods-multiselect__search-input:focus-visible{outline:none;box-shadow:none;border:0}.ods-multiselect__list{flex:1 1 auto;overflow-y:auto;padding:var(--ods-space-1)}.ods-multiselect__option{display:flex;align-items:center;gap:var(--ods-space-2);min-height:var(--ods-layout-control-height);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);cursor:pointer;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-multiselect__option:hover{background:var(--ods-surface-muted)}.ods-multiselect__option--highlighted{background:var(--ods-surface-muted)}.ods-multiselect__option:has(.ods-multiselect__option-desc){align-items:flex-start;padding-top:var(--ods-space-2);padding-bottom:var(--ods-space-2)}.ods-multiselect__option:has(.ods-multiselect__option-desc) .ods-multiselect__option-icon{margin-top:2px}.ods-multiselect__option--selected{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:500;box-shadow:inset 3px 0 0 var(--ods-accent)}.ods-multiselect__option--selected.ods-multiselect__option--highlighted,.ods-multiselect__option--selected:hover{background:var(--ods-accent-border)}.ods-multiselect__option--disabled{color:var(--ods-text-disabled);cursor:not-allowed}.ods-multiselect__option--disabled:hover{background:rgba(0,0,0,0)}.ods-multiselect__option-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-accent)}.ods-multiselect__option-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px;line-height:1.3}.ods-multiselect__option-label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ods-multiselect__option-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ods-multiselect__empty{padding:var(--ods-space-3);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-multiselect--error .ods-multiselect__input-wrap{border-color:var(--ods-status-failed)}.ods-multiselect__error{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg);margin-top:2px}.ods-multiselect--sm .ods-multiselect__input-wrap{min-height:var(--ods-layout-control-height-sm);padding:1px var(--ods-space-1)}.ods-multiselect--sm .ods-multiselect__tag{font-size:10px;padding:1px var(--ods-space-1)}.ods-multiselect--md .ods-multiselect__input-wrap{min-height:var(--ods-layout-control-height)}.ods-multiselect--lg .ods-multiselect__input-wrap{min-height:var(--ods-layout-control-height-lg, 36px);padding:4px var(--ods-space-2)}.ods-multiselect--lg .ods-multiselect__tag{font-size:var(--ods-font-size-sm);padding:3px var(--ods-space-2)}.ods-multiselect--lg .ods-multiselect__placeholder{font-size:var(--ods-font-size-md)}.ods-card{position:relative;background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:var(--ods-font-family-sans);border-radius:var(--ods-radius-2);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-card:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-card--default{background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default)}.ods-card--elevated{background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);box-shadow:var(--ods-shadow-pop)}.ods-card--outlined{background:rgba(0,0,0,0);border:1px solid var(--ods-border-default)}.ods-card--subtle{background:var(--ods-surface-subtle);border:1px solid var(--ods-border-soft)}.ods-card--selected{background:var(--ods-accent-soft);border:1px solid var(--ods-accent)}.ods-card--hoverable:hover:not(.ods-card--disabled){background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-card--clickable{cursor:pointer;user-select:none}.ods-card--disabled{cursor:not-allowed;opacity:.55}.ods-card--loading{overflow:hidden;padding:0;min-height:80px}.ods-card--loading .ods-card__skeleton{width:100%;height:80px;background:linear-gradient(90deg, var(--ods-border-default) 0%, var(--ods-surface-canvas) 50%, var(--ods-border-default) 100%);background-size:200% 100%}.ods-card--pad-none{padding:0}.ods-card--pad-sm{padding:var(--ods-space-3)}.ods-card--pad-md{padding:var(--ods-space-4)}.ods-card--pad-lg{padding:var(--ods-space-5)}.ods-card--pad-xl{padding:var(--ods-space-6)}.ods-card--radius-none{border-radius:0}.ods-card--radius-sm{border-radius:var(--ods-radius-1)}.ods-card--radius-md{border-radius:var(--ods-radius-2)}.ods-card--radius-lg{border-radius:var(--ods-radius-3)}.ods-card__header,.ods-card__body,.ods-card__footer{display:block}.ods-card__header{margin:0 0 var(--ods-space-3);padding-bottom:var(--ods-space-3);border-bottom:1px solid var(--ods-border-soft)}.ods-card__header:first-child{margin-top:0}.ods-card__body>*+*{margin-top:var(--ods-space-2)}.ods-card__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);margin:var(--ods-space-3) 0 0;padding-top:var(--ods-space-3);border-top:1px solid var(--ods-border-soft)}.ods-card__footer:last-child{margin-bottom:0}.ods-card__title{margin:0;font-size:var(--ods-font-size-lg);font-weight:600;color:var(--ods-text-primary);font-family:var(--ods-font-family-sans)}.ods-card__description{margin:var(--ods-space-1) 0 0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-snug)}.ods-dialog{position:fixed;inset:0;z-index:900;display:flex;align-items:center;justify-content:center;padding:var(--ods-space-4);background:rgba(10,10,10,.45)}.ods-dialog__card{position:relative;display:flex;flex-direction:column;max-height:90vh;overflow-y:auto;border-radius:var(--ods-radius-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary);transform:scale(1);opacity:1;transition:transform var(--ods-duration-slow, 240ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),opacity var(--ods-duration-slow, 240ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-dialog__card--entering{transform:scale(0.98);opacity:0}.ods-dialog__card--sm{width:100%;max-width:360px}.ods-dialog__card--md{width:100%;max-width:480px}.ods-dialog__card--lg{width:100%;max-width:720px}.ods-dialog__card--xl{width:100%;max-width:960px}.ods-dialog__card--full{width:100vw;max-width:100vw;height:100vh;max-height:100vh;border-radius:0;border:0}.ods-dialog:has(.ods-dialog__card--full){padding:0}.ods-dialog__header{display:flex;flex-direction:column;gap:var(--ods-space-1);padding:var(--ods-space-5) var(--ods-space-5) 0}.ods-dialog__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-dialog__description{margin:0;font-size:var(--ods-font-size-base);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-dialog__close{position:absolute;top:var(--ods-space-3);right:var(--ods-space-3);display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-dialog__close>svg{width:14px;height:14px}.ods-dialog__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-dialog__close:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-dialog__body{flex:1;padding:var(--ods-space-4) var(--ods-space-5);overflow-y:auto;font-size:var(--ods-font-size-base);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-dialog__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-5);border-top:1px solid var(--ods-border-default)}.ods-sidebar{display:flex;flex-direction:column;background:var(--ods-surface-subtle);border-right:1px solid var(--ods-border-default);border-radius:0;font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-base);color:var(--ods-text-body);overflow:visible;transition:width var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));position:relative}.ods-sidebar--rail{width:var(--ods-layout-sidebar-width-collapsed);align-items:center;padding:var(--ods-space-2) 0;gap:var(--ods-space-2)}.ods-sidebar--expanded{width:var(--ods-layout-sidebar-width)}.ods-sidebar--auto{overflow:visible}.ods-sidebar__overlay{position:absolute;top:0;left:0;width:var(--ods-layout-sidebar-width);height:100%;display:flex;flex-direction:column;background:var(--ods-surface-canvas);border-right:1px solid var(--ods-border-default);border-top:1px solid var(--ods-border-default);border-bottom:1px solid var(--ods-border-default);border-radius:0 var(--ods-radius-2) var(--ods-radius-2) 0;box-shadow:var(--ods-shadow-pop);z-index:1000;animation:ods-sidebar-overlay-in var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}@keyframes ods-sidebar-overlay-in{from{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:translateX(0)}}.ods-sidebar__nav-rail,.ods-sidebar__footer-rail{display:flex;flex-direction:column;align-items:center;gap:var(--ods-space-1);width:100%;overflow:visible}.ods-sidebar__footer-rail{position:relative;padding-top:var(--ods-space-2)}.ods-sidebar__footer-rail::before{content:"";position:absolute;top:0;left:var(--ods-space-2);right:var(--ods-space-2);height:1px;background:var(--ods-border-default)}.ods-sidebar__spacer{flex:1 1 auto}.ods-sidebar__rail-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;overflow:visible}.ods-sidebar__rail-item{position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;text-decoration:none;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__rail-item:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-sidebar__rail-item:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-sidebar__rail-item--active{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-sidebar__rail-item--active::before{content:"";position:absolute;left:-8px;top:4px;bottom:4px;width:2px;border-radius:0 var(--ods-radius-1) var(--ods-radius-1) 0;background:var(--ods-accent)}.ods-sidebar__rail-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px}.ods-sidebar__rail-tooltip{position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%);display:inline-flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);background:var(--ods-text-primary);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-xs);font-weight:500;white-space:nowrap;box-shadow:var(--ods-shadow-pop);z-index:1500;pointer-events:none;animation:ods-sidebar-tip-in 80ms var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}@keyframes ods-sidebar-tip-in{from{opacity:0;transform:translate(-2px, -50%)}to{opacity:1;transform:translate(0, -50%)}}.ods-sidebar__rail-tooltip-label{color:inherit}.ods-sidebar__rail-flyout{position:absolute;top:0;left:calc(100% + 8px);min-width:200px;max-width:260px;padding:var(--ods-space-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:var(--ods-shadow-pop);z-index:1500;font-family:var(--ods-font-family-sans);animation:ods-sidebar-flyout-in 120ms var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__rail-flyout::before{content:"";position:absolute;top:0;bottom:0;left:-10px;width:10px;background:rgba(0,0,0,0)}@keyframes ods-sidebar-flyout-in{from{opacity:0;transform:translateX(-4px)}to{opacity:1;transform:translateX(0)}}.ods-sidebar__rail-flyout-header{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2) var(--ods-space-2);border-bottom:1px solid var(--ods-border-default);margin-bottom:var(--ods-space-1)}.ods-sidebar__rail-flyout-title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-sidebar__rail-flyout-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.ods-sidebar__rail-flyout-item{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-row-height);padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-base);font-weight:500;text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__rail-flyout-item:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-sidebar__rail-flyout-item:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-sidebar__rail-flyout-item--active{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:600}.ods-sidebar__rail-flyout-item--active .ods-sidebar__rail-flyout-icon{color:var(--ods-accent)}.ods-sidebar__rail-flyout-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-text-tertiary)}.ods-sidebar__rail-flyout-label{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-sidebar__rail-flyout-tag{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-accent);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:9px;font-weight:700;letter-spacing:var(--ods-tracking-mono);flex-shrink:0}.ods-sidebar__rail-flyout-badge{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;font-weight:600;flex-shrink:0}.ods-sidebar__rail-item--parent.ods-sidebar__rail-item--active::after{content:"";position:absolute;right:3px;bottom:3px;width:4px;height:4px;border-radius:var(--ods-radius-pill);background:var(--ods-accent)}.ods-sidebar__rail-kbd{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:hsla(0,0%,100%,.12);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:500}.ods-sidebar__user-rail{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:var(--ods-radius-pill);cursor:pointer;margin-top:var(--ods-space-1);background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-sm);font-weight:600;overflow:hidden}.ods-sidebar__footer-control{display:flex;padding:var(--ods-space-2) 0;border-top:1px solid var(--ods-border-default);margin-top:var(--ods-space-1)}.ods-sidebar__footer-control--rail{width:100%;justify-content:center;padding:var(--ods-space-2) var(--ods-space-1);margin-top:var(--ods-space-1)}.ods-sidebar__collapse{display:inline-flex;align-items:center;justify-content:flex-start;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-row-height);padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__collapse:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-sidebar__collapse:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-sidebar__collapse svg{flex-shrink:0}.ods-sidebar__collapse--rail{width:32px;height:32px;padding:0;justify-content:center}.ods-sidebar__collapse--pinned{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-sidebar__pin-label{flex:1 1 auto;min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-sidebar__body{flex:1 1 auto;display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-2);overflow-y:auto;overflow-x:hidden}.ods-sidebar__section{display:flex;flex-direction:column;gap:1px}.ods-sidebar__section-label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);padding:var(--ods-space-1) var(--ods-space-2)}.ods-sidebar__item{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-row-height);padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-base);font-weight:500;text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__item:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-sidebar__item--active{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:600}.ods-sidebar__item--active .ods-sidebar__icon{color:var(--ods-accent)}.ods-sidebar__item--open{color:var(--ods-text-primary)}.ods-sidebar__item--l2{height:28px;font-size:var(--ods-font-size-sm)}.ods-sidebar__item--l3{height:28px;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-sidebar__chevron{flex-shrink:0;color:var(--ods-text-tertiary);transition:transform var(--ods-duration-base, 180ms) var(--ods-ease-out, ease-out)}.ods-sidebar__chevron--open{transform:rotate(90deg);color:var(--ods-accent)}.ods-sidebar__subtree{display:flex;flex-direction:column;gap:1px;margin-top:1px;padding:1px 0 var(--ods-space-1) var(--ods-space-2);margin-left:var(--ods-space-3);border-left:1px solid var(--ods-border-default)}.ods-sidebar__subtree--l2{border-left-color:var(--ods-border-strong)}.ods-sidebar__subtree--l3{border-left-color:var(--ods-accent-border);margin-left:var(--ods-space-2)}.ods-sidebar__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-text-tertiary)}.ods-sidebar__label{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-sidebar__badge{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;flex-shrink:0}.ods-sidebar__tag{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-accent);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:9px;font-weight:700;letter-spacing:var(--ods-tracking-mono);flex-shrink:0}.ods-sidebar__footer{border-top:1px solid var(--ods-border-default);display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-2)}.ods-sidebar__footer-list{display:flex;flex-direction:column;gap:1px}.ods-sidebar__user-card{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;padding:var(--ods-space-2);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);cursor:pointer;font-family:inherit;text-align:left;color:var(--ods-text-body);outline:none;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sidebar__user-card:hover{background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-sidebar__user-card:focus-visible{border-color:var(--ods-border-focus);box-shadow:var(--ods-focus-ring)}.ods-sidebar__user-card[aria-expanded=true]{background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-sidebar__user-avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--ods-radius-pill);flex-shrink:0;overflow:hidden;background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-sm);font-weight:600}.ods-sidebar__user-avatar img{width:100%;height:100%;object-fit:cover}.ods-sidebar__user-info{display:flex;flex-direction:column;gap:1px;flex:1 1 auto;min-width:0}.ods-sidebar__user-name{font-size:var(--ods-font-size-sm);font-weight:600;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-sidebar__user-email{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-topbar{position:sticky;top:0;z-index:800;display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-4);height:var(--ods-layout-topbar-height);padding:0 var(--ods-space-4);background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-topbar__left{display:flex;align-items:center;gap:var(--ods-space-3);min-width:0}.ods-topbar__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-topbar__brand{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);text-decoration:none;letter-spacing:var(--ods-tracking-tight, -0.01em);white-space:nowrap}.ods-topbar__brand--link{cursor:pointer;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-topbar__brand--link:hover{color:var(--ods-text-primary);opacity:.85}.ods-topbar__brand-mark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;color:var(--ods-text-primary)}.ods-topbar__brand-name{display:inline-block}.ods-topbar__divider{display:inline-block;width:1px;height:18px;background:var(--ods-border-default);transform:rotate(15deg);flex-shrink:0}.ods-topbar__workspace{display:inline-flex;align-items:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);min-width:0}.ods-topbar__breadcrumbs ol{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:0}.ods-topbar__crumb{display:flex;align-items:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-topbar__crumb a{color:var(--ods-text-body);text-decoration:none;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-topbar__crumb a:hover{color:var(--ods-text-primary)}.ods-topbar__crumb [aria-current=page]{color:var(--ods-text-primary);font-weight:500}.ods-topbar__separator{margin:0 var(--ods-space-2);color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs)}.ods-topbar__center{display:flex;align-items:center;flex:1;justify-content:center}.ods-topbar__right{display:flex;align-items:center;gap:var(--ods-space-2);margin-left:auto}.ods-topbar__search{position:relative;display:flex;align-items:center}.ods-topbar__search-icon{position:absolute;left:var(--ods-space-2);color:var(--ods-text-tertiary);pointer-events:none}.ods-topbar__search-input{width:280px;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3) 0 28px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-topbar__search-input::placeholder{color:var(--ods-text-disabled)}.ods-topbar__search-input:focus{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-topbar__actions{display:flex;align-items:center;gap:var(--ods-space-1)}.ods-tabs{display:flex;flex-direction:column;width:100%;font-family:var(--ods-font-family-sans);color:var(--ods-text-body)}.ods-tabs--vertical{flex-direction:row}.ods-tabs__list-wrap{position:relative;display:flex;align-items:stretch}.ods-tabs--horizontal .ods-tabs__list-wrap{flex-direction:row;border-bottom:1px solid var(--ods-border-default)}.ods-tabs--vertical .ods-tabs__list-wrap{flex-direction:column;border-right:1px solid var(--ods-border-default);min-width:160px}.ods-tabs__scroller{flex:1 1 auto;min-width:0}.ods-tabs--horizontal .ods-tabs__scroller{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.ods-tabs--horizontal .ods-tabs__scroller::-webkit-scrollbar{display:none}.ods-tabs--vertical .ods-tabs__scroller{overflow:visible}.ods-tabs__list{display:flex;position:relative;gap:0}.ods-tabs--horizontal .ods-tabs__list{flex-direction:row;width:max-content;min-width:100%}.ods-tabs--vertical .ods-tabs__list{flex-direction:column}.ods-tabs__scroll-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;min-height:var(--ods-layout-row-height);padding:0;background:var(--ods-surface-canvas);border:0;color:var(--ods-text-tertiary);cursor:pointer;position:relative;z-index:1;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tabs__scroll-btn:hover{color:var(--ods-text-primary)}.ods-tabs__scroll-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-tabs__scroll-btn--left{box-shadow:6px 0 6px -6px rgba(0,0,0,.08)}.ods-tabs__scroll-btn--right{box-shadow:-6px 0 6px -6px rgba(0,0,0,.08)}.ods-tabs__tab{position:relative;display:flex;align-items:center;gap:var(--ods-space-2);padding:0 var(--ods-space-3);height:var(--ods-layout-row-height);font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-tertiary);cursor:pointer;user-select:none;white-space:nowrap;border:none;background:none;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));outline:none}.ods-tabs__tab:hover:not(.ods-tabs__tab--disabled){color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-tabs__tab:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-tabs__tab--selected{color:var(--ods-accent);font-weight:600}.ods-tabs__tab--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ods-tabs__icon{display:flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0}.ods-tabs__indicator{position:absolute;transition:all var(--ods-duration-base, 180ms) var(--ods-ease-out, ease-out)}.ods-tabs--horizontal .ods-tabs__indicator{bottom:-1px;left:0;right:0;height:2px;background:var(--ods-accent)}.ods-tabs--vertical .ods-tabs__indicator{right:-1px;top:0;bottom:0;width:2px;background:var(--ods-accent)}.ods-tabs__panel{padding:var(--ods-space-4) 0;font-size:var(--ods-font-size-base);color:var(--ods-text-primary)}.ods-tabs--vertical .ods-tabs__panel{padding:0 var(--ods-space-4);flex:1}.ods-tabs__panel:focus{outline:none}.ods-breadcrumb{display:inline-flex;align-items:center;font-family:var(--ods-font-family-sans)}.ods-breadcrumb__list{display:inline-flex;align-items:center;list-style:none;margin:0;padding:0;gap:var(--ods-space-1);font-size:var(--ods-font-size-sm)}.ods-breadcrumb__item{display:flex;align-items:center;font-size:var(--ods-font-size-sm);line-height:1}.ods-breadcrumb__separator{display:flex;align-items:center;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs);flex-shrink:0;margin:0 var(--ods-space-1)}.ods-breadcrumb__link{display:inline-flex;align-items:center;gap:var(--ods-space-1);color:var(--ods-text-tertiary);text-decoration:none;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));white-space:nowrap}.ods-breadcrumb__link:hover:not(.ods-breadcrumb__link--current){color:var(--ods-accent)}.ods-breadcrumb__link:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-breadcrumb__link--current{color:var(--ods-text-primary);font-weight:500;cursor:default}.ods-breadcrumb__icon{display:flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0}.ods-dropdown__trigger{display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:rgba(0,0,0,0);cursor:pointer}.ods-dropdown__trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-dropdown{position:fixed;list-style:none;margin:0;padding:var(--ods-space-1);min-width:180px;border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);box-shadow:var(--ods-shadow-pop);z-index:var(--ods-z-popover);outline:none;font-family:var(--ods-font-family-sans);overflow-y:auto}.ods-dropdown:focus{outline:none}.ods-dropdown__item{display:flex;align-items:center;gap:var(--ods-space-2);height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));outline:none;user-select:none}.ods-dropdown__item:hover,.ods-dropdown__item:focus,.ods-dropdown__item[data-focused=true]{background:var(--ods-surface-muted)}.ods-dropdown__item--danger{color:var(--ods-status-failed-fg)}.ods-dropdown__item--danger:hover,.ods-dropdown__item--danger:focus{background:var(--ods-status-failed-bg)}.ods-dropdown__item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ods-dropdown__icon{display:flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0;color:var(--ods-text-tertiary)}.ods-dropdown__separator{height:1px;margin:var(--ods-space-1) 0;background:var(--ods-border-default);list-style:none}.ods-slideout__backdrop{position:fixed;inset:0;z-index:600;background:rgba(10,10,10,.35)}.ods-slideout__panel{position:fixed;top:0;right:0;bottom:0;z-index:601;display:flex;flex-direction:column;width:320px;max-width:100vw;padding:var(--ods-space-4);background:var(--ods-surface-canvas);border-left:1px solid var(--ods-border-default);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);outline:none;will-change:transform}.ods-slideout__panel--right{right:0}.ods-slideout__panel--left{left:0;right:auto;border-left:none;border-right:1px solid var(--ods-border-default)}.ods-slideout__header{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);flex-shrink:0;padding-bottom:var(--ods-space-3);border-bottom:1px solid var(--ods-border-default);margin-bottom:var(--ods-space-3)}.ods-slideout__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-slideout__close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;padding:0;border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-slideout__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-slideout__close:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-slideout__body{flex:1;overflow-y:auto;margin-top:var(--ods-space-3)}.ods-slideout__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding-top:var(--ods-space-3);border-top:1px solid var(--ods-border-default);flex-shrink:0}.ods-table-wrapper{width:100%;overflow-x:auto;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);background:var(--ods-surface-canvas)}.ods-table{width:100%;border-collapse:collapse;font-size:var(--ods-font-size-sm);line-height:1;color:var(--ods-text-primary)}.ods-table__header{background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default)}.ods-table__header th{height:var(--ods-layout-row-height);padding:0 var(--ods-space-3);text-align:left;font-family:var(--ods-font-family-mono);font-weight:600;font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);white-space:nowrap;user-select:none;position:sticky;top:0;z-index:1}.ods-table__header-content{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-table__cell--sortable{cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-table__cell--sortable:hover{background:var(--ods-surface-muted)}.ods-table__sort-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;opacity:.5;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-table__sort-icon>svg{color:inherit !important;fill:currentColor;width:12px;height:12px}.ods-table__sort-icon--active{opacity:1;color:var(--ods-accent)}.ods-table__row{border-bottom:1px solid var(--ods-border-soft);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-table__row:hover{background:var(--ods-surface-subtle)}.ods-table__row:last-child{border-bottom:none}.ods-table__row--selected{background:var(--ods-accent-soft) !important}.ods-table__row--expanded{background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-soft)}.ods-table__cell{height:var(--ods-layout-row-height);padding:0 var(--ods-space-3);color:var(--ods-text-primary);font-size:var(--ods-font-size-sm);vertical-align:middle;white-space:nowrap}.ods-table__cell--numeric,.ods-table__cell--id,.ods-table__cell--duration,.ods-table__cell--cost{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;text-align:right}.ods-table__cell--checkbox{width:36px;padding:0 var(--ods-space-2);text-align:center}.ods-table__cell--checkbox input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--ods-accent)}.ods-table__cell--expand{width:36px;padding:0;text-align:center}.ods-table__expand-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-table__expand-btn>svg{color:inherit !important;fill:currentColor;width:12px;height:12px}.ods-table__expand-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-table__expand-btn--open{transform:rotate(90deg)}.ods-table__expanded-cell{padding:var(--ods-space-4) var(--ods-space-5);background:var(--ods-surface-subtle)}.ods-table__empty{padding:var(--ods-space-7) var(--ods-space-4);text-align:center;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-sm)}.ods-table__loading{padding:0;position:relative;height:2px}.ods-table__loading-bar{position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg, transparent 0%, var(--ods-accent) 50%, transparent 100%);background-size:200% 100%;animation:ods-table-loading 1.5s ease-in-out infinite}@keyframes ods-table-loading{0%{background-position:200% 0}100%{background-position:-200% 0}}.ods-datatable{--dt-row-h: var(--ods-layout-row-height);--dt-cell-pad: var(--ods-space-3);--dt-font: var(--ods-font-size-sm);display:flex;flex-direction:column;width:100%;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary);overflow:hidden}.ods-datatable--compact{--dt-row-h: 24px;--dt-cell-pad: var(--ods-space-2);--dt-font: var(--ods-font-size-xs)}.ods-datatable--comfortable{--dt-row-h: var(--ods-layout-row-height-comfort);--dt-cell-pad: var(--ods-space-4);--dt-font: var(--ods-font-size-base)}.ods-datatable__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);min-height:44px}.ods-datatable__title-block{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.ods-datatable__title{display:inline-flex;align-items:center;gap:var(--ods-space-2);margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-datatable__count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary);padding:2px var(--ods-space-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-datatable__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-datatable__toolbar-actions{display:inline-flex;align-items:center;gap:var(--ods-space-2);flex-shrink:0}.ods-datatable__toolbar-section{display:inline-flex;align-items:center;gap:var(--ods-space-2);padding-right:var(--ods-space-2)}.ods-datatable__toolbar-section+.ods-datatable__toolbar-section{padding-left:var(--ods-space-2);border-left:1px solid var(--ods-border-soft)}.ods-datatable__toolbar-section--primary{padding-right:0;margin-left:var(--ods-space-1)}.ods-datatable__toolbar-btn{display:inline-flex;align-items:center;justify-content:center;height:var(--ods-layout-control-height);width:var(--ods-layout-control-height);padding:0;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__toolbar-btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary);border-color:var(--ods-border-strong)}.ods-datatable__toolbar-btn:focus-visible{outline:none;box-shadow:var(--ods-focus-ring);border-color:var(--ods-border-focus)}.ods-datatable__toolbar-btn:disabled{cursor:not-allowed;opacity:.55}.ods-datatable__toolbar-btn--active{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent)}.ods-datatable__toolbar-btn--busy>svg{animation:ods-datatable-spin .9s linear infinite}@keyframes ods-datatable-spin{to{transform:rotate(360deg)}}.ods-datatable__toolbar-custom{display:inline-flex;align-items:center;gap:var(--ods-space-2);margin-left:var(--ods-space-1)}.ods-datatable__sub-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-accent-soft);border-bottom:1px solid var(--ods-accent);color:var(--ods-accent-strong);font-size:var(--ods-font-size-sm)}.ods-datatable__sub-toolbar .ods-datatable__bulk-clear{display:inline-flex;align-items:center;gap:var(--ods-space-1);width:auto;height:auto;padding:2px var(--ods-space-1-5)}.ods-datatable__filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ods-space-1-5);padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-soft)}.ods-datatable__filter-chip{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:22px;padding:0 var(--ods-space-1-5);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-xs);color:var(--ods-text-body)}.ods-datatable__filter-chip-label{color:var(--ods-text-tertiary)}.ods-datatable__filter-chip-value{font-weight:600;color:var(--ods-text-primary)}.ods-datatable__filter-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:2px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-pill);cursor:pointer}.ods-datatable__filter-chip-remove:hover{color:var(--ods-status-failed);background:rgba(0,0,0,.06)}.ods-datatable__filter-chip-clear-all{margin-left:auto;padding:2px var(--ods-space-2);background:rgba(0,0,0,0);border:0;color:var(--ods-accent);font-size:var(--ods-font-size-xs);font-weight:500;cursor:pointer}.ods-datatable__filter-chip-clear-all:hover{text-decoration:underline}.ods-datatable__th--resizable{position:relative}.ods-datatable__th-resize{position:absolute;top:0;right:0;width:6px;height:100%;cursor:col-resize;user-select:none;touch-action:none;z-index:1;background:rgba(0,0,0,0);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out)}.ods-datatable__th-resize:hover,.ods-datatable__th-resize:active{background:var(--ods-accent)}.ods-datatable__search{position:relative;display:inline-flex;align-items:center}.ods-datatable__search-icon{position:absolute;left:var(--ods-space-2);display:inline-flex;color:var(--ods-text-tertiary);pointer-events:none}.ods-datatable__search-input{width:220px;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3) 0 26px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);outline:none;transition:border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__search-input::placeholder{color:var(--ods-text-disabled)}.ods-datatable__search-input:focus{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-datatable__search-clear{position:absolute;right:var(--ods-space-1);display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer}.ods-datatable__search-clear:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__filter{position:relative;display:inline-flex}.ods-datatable__filter-trigger{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:var(--ods-layout-control-height);padding:0 var(--ods-space-2) 0 var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__filter-trigger:hover{background:var(--ods-surface-muted)}.ods-datatable__filter-trigger--active{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent-border)}.ods-datatable__filter-trigger[aria-expanded=true]{background:var(--ods-surface-muted);border-color:var(--ods-text-tertiary)}.ods-datatable__filter-icon{display:inline-flex;color:var(--ods-text-tertiary)}.ods-datatable__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--ods-layout-control-height);height:var(--ods-layout-control-height);padding:0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__icon-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__icon-btn[aria-expanded=true]{background:var(--ods-surface-muted);border-color:var(--ods-text-tertiary)}.ods-datatable__menu{position:fixed;z-index:1000;list-style:none;margin:0;padding:var(--ods-space-1);min-width:180px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);animation:ods-datatable-menu-in 120ms var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}@keyframes ods-datatable-menu-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ods-datatable__menu-item{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);text-align:left;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__menu-item:hover{background:var(--ods-surface-muted)}.ods-datatable__menu-item--active{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:600}.ods-datatable__menu-item--danger{color:var(--ods-status-failed-fg)}.ods-datatable__menu-item--danger:hover{background:var(--ods-status-failed-bg)}.ods-datatable__menu-item--disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.ods-datatable__menu-item-icon{display:inline-flex;width:14px;height:14px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-datatable__menu-checkbox{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__menu-checkbox:hover{background:var(--ods-surface-muted)}.ods-datatable__menu-checkbox input{width:14px;height:14px;accent-color:var(--ods-accent)}.ods-datatable__bulk-summary{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-sm);color:var(--ods-text-primary)}.ods-datatable__bulk-count{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:18px;padding:0 var(--ods-space-1);background:var(--ods-accent);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;font-weight:600}.ods-datatable__bulk-clear{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer}.ods-datatable__bulk-clear:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__bulk-actions{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-datatable__bulk-action{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__bulk-action:hover{background:var(--ods-surface-muted)}.ods-datatable__bulk-action--danger{color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd)}.ods-datatable__bulk-action--danger:hover{background:var(--ods-status-failed-bg);border-color:var(--ods-status-failed)}.ods-datatable__bulk-action-icon{display:inline-flex;width:14px;height:14px}.ods-datatable__scroll{flex:1 1 auto;overflow-x:auto;overflow-y:auto;max-height:100%}.ods-datatable__table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--dt-font);color:var(--ods-text-primary);line-height:1}.ods-datatable__thead{background:var(--ods-surface-subtle)}.ods-datatable__th{position:sticky;top:0;z-index:1;height:var(--ods-layout-row-height);padding:0 var(--dt-cell-pad);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);text-align:left;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);white-space:nowrap;user-select:none}.ods-datatable__th--sortable{cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__th--sortable:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__th--numeric,.ods-datatable__th--align-right{text-align:right}.ods-datatable__th--align-center{text-align:center}.ods-datatable__th--checkbox{width:40px;padding:0 var(--ods-space-2);text-align:center}.ods-datatable__th--expand{width:32px;padding:0;text-align:center}.ods-datatable__th--actions{width:40px;padding:0;text-align:center}.ods-datatable__th-content{display:inline-flex;align-items:center;gap:var(--ods-space-1);line-height:1}.ods-datatable__th-label{line-height:1}.ods-datatable__sort-icon{display:inline-flex;align-items:center;color:var(--ods-text-tertiary);transition:color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__th--sortable[aria-sort] .ods-datatable__sort-icon{color:var(--ods-accent)}.ods-datatable__tbody .ods-datatable__row{transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__tbody .ods-datatable__row:hover{background:var(--ods-surface-subtle)}.ods-datatable__row--selected{background:var(--ods-accent-soft) !important}.ods-datatable__row--selected:hover{background:var(--ods-accent-soft) !important}.ods-datatable__row--clickable{cursor:pointer}.ods-datatable__td{height:var(--dt-row-h);padding:0 var(--dt-cell-pad);border-bottom:1px solid var(--ods-border-soft);vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.ods-datatable__td--numeric,.ods-datatable__td--align-right{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;text-align:right}.ods-datatable__td--align-center{text-align:center}.ods-datatable__td--checkbox{width:40px;padding:0 var(--ods-space-2);text-align:center}.ods-datatable__td--checkbox input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--ods-accent)}.ods-datatable__td--expand{width:32px;padding:0;text-align:center}.ods-datatable__td--actions{width:40px;padding:0;text-align:center}.ods-datatable__expand-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__expand-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__expand-btn--open{transform:rotate(90deg);color:var(--ods-accent)}.ods-datatable__row-expanded{background:var(--ods-surface-subtle)}.ods-datatable__td-expanded{padding:var(--ods-space-3) var(--ods-space-5);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-soft)}.ods-datatable__row-actions{position:relative;display:inline-flex}.ods-datatable__row-actions-trigger{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer}.ods-datatable__row-actions-trigger:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__row-actions-trigger[aria-expanded=true]{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__empty{padding:var(--ods-space-7) var(--ods-space-5);text-align:center}.ods-datatable__empty-title{font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary);margin-bottom:var(--ods-space-1)}.ods-datatable__empty-desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);margin-bottom:var(--ods-space-3)}.ods-datatable__empty-action{display:inline-flex;justify-content:center}.ods-datatable__loading{position:relative;padding:0;height:2px}.ods-datatable__loading-bar{position:absolute;inset:0 0 0 0;background:linear-gradient(90deg, transparent 0%, var(--ods-accent) 50%, transparent 100%);background-size:200% 100%;animation:ods-datatable-loading 1.4s ease-in-out infinite}@keyframes ods-datatable-loading{0%{background-position:200% 0}100%{background-position:-200% 0}}.ods-datatable__error{padding:var(--ods-space-5);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-status-failed-fg);background:var(--ods-status-failed-bg)}.ods-datatable__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);border-top:1px solid var(--ods-border-default);background:var(--ods-surface-subtle);font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-datatable__footer-summary{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-datatable__footer-controls{display:inline-flex;align-items:center;gap:var(--ods-space-4)}.ods-datatable__footer-range,.ods-datatable__footer-total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-weight:500;color:var(--ods-text-primary)}.ods-datatable__footer-pagesize{display:inline-flex;align-items:center;gap:var(--ods-space-2);color:var(--ods-text-tertiary)}.ods-datatable__footer-nav{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-datatable__page-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--ods-layout-control-height-sm);height:var(--ods-layout-control-height-sm);padding:0;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datatable__page-btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-datatable__page-btn:disabled{opacity:.4;cursor:not-allowed}.ods-datatable__page-pos{display:inline-flex;align-items:center;gap:2px;padding:0 var(--ods-space-2);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;color:var(--ods-text-body);font-weight:500}.ods-datatable__page-sep{color:var(--ods-text-tertiary)}.ods-empty-state{display:flex;font-family:var(--ods-font-family-sans);padding:var(--ods-space-9) var(--ods-space-4);gap:var(--ods-space-3)}.ods-empty-state__icon{display:flex;align-items:center;justify-content:center;color:var(--ods-text-disabled);flex-shrink:0}.ods-empty-state__body{display:flex;flex-direction:column;min-width:0}.ods-empty-state__title{margin:0;font-family:var(--ods-font-family-serif);font-weight:500;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-empty-state__description{margin:var(--ods-space-1) 0 0;color:var(--ods-text-tertiary);line-height:var(--ods-line-height-base);max-width:360px}.ods-empty-state__action{margin-top:var(--ods-space-4)}.ods-empty-state--vertical{flex-direction:column;align-items:center;justify-content:center;text-align:center}.ods-empty-state--vertical .ods-empty-state__icon{margin-bottom:var(--ods-space-3)}.ods-empty-state--horizontal{flex-direction:row;align-items:flex-start;text-align:left}.ods-empty-state--horizontal .ods-empty-state__icon{margin-top:4px}.ods-empty-state--sm{padding:var(--ods-space-5) var(--ods-space-3);gap:var(--ods-space-2)}.ods-empty-state--sm .ods-empty-state__icon{width:24px;height:24px}.ods-empty-state--sm .ods-empty-state__icon>svg{width:24px;height:24px}.ods-empty-state--sm .ods-empty-state__title{font-size:var(--ods-font-size-md)}.ods-empty-state--sm .ods-empty-state__description{font-size:var(--ods-font-size-xs);max-width:280px}.ods-empty-state--sm .ods-empty-state__action{margin-top:var(--ods-space-3)}.ods-empty-state--md .ods-empty-state__icon{width:32px;height:32px}.ods-empty-state--md .ods-empty-state__icon>svg{width:32px;height:32px}.ods-empty-state--md .ods-empty-state__title{font-size:var(--ods-font-size-lg)}.ods-empty-state--md .ods-empty-state__description{font-size:var(--ods-font-size-sm)}.ods-empty-state--lg{padding:var(--ods-space-10, 80px) var(--ods-space-5);gap:var(--ods-space-4)}.ods-empty-state--lg .ods-empty-state__icon{width:48px;height:48px}.ods-empty-state--lg .ods-empty-state__icon>svg{width:48px;height:48px}.ods-empty-state--lg .ods-empty-state__title{font-size:var(--ods-font-size-xl)}.ods-empty-state--lg .ods-empty-state__description{font-size:var(--ods-font-size-md);max-width:480px}.ods-empty-state--lg .ods-empty-state__action{margin-top:var(--ods-space-5)}@keyframes ods-skeleton-pulse{0%,100%{opacity:1}50%{opacity:.55}}@keyframes ods-skeleton-shimmer{0%{background-position:-100% 0}100%{background-position:200% 0}}.ods-skeleton{display:block;background:var(--ods-surface-muted);border-radius:var(--ods-radius-1);position:relative;overflow:hidden}.ods-skeleton--rect{width:100%;height:96px}.ods-skeleton--circle{width:32px;height:32px;border-radius:50%}.ods-skeleton--text{width:100%;height:.85em;border-radius:var(--ods-radius-1)}.ods-skeleton--pill{width:80px;height:22px;border-radius:var(--ods-radius-pill)}.ods-skeleton--anim-pulse{animation:ods-skeleton-pulse 1200ms ease-in-out infinite}.ods-skeleton--anim-shimmer{background:linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--ods-surface-canvas) 70%, transparent) 50%, transparent 100%),var(--ods-surface-muted);background-size:200% 100%,100% 100%;background-repeat:no-repeat;background-position:-100% 0,0 0;animation:ods-skeleton-shimmer 1600ms linear infinite}@media(prefers-reduced-motion: reduce){.ods-skeleton--anim-pulse,.ods-skeleton--anim-shimmer{animation:none}}.ods-skeleton-group{display:flex;width:100%}.ods-skeleton-group--vertical{flex-direction:column;gap:var(--ods-space-2)}.ods-skeleton-group--horizontal{flex-direction:row;align-items:center;gap:var(--ods-space-2)}.ods-toast-stack{position:fixed;z-index:9999;padding:var(--ods-space-4);box-sizing:border-box;max-width:100vw;pointer-events:none}.ods-toast-stack>*{pointer-events:auto}.ods-toast-stack--top-left{top:0;left:0}.ods-toast-stack--top-center{top:0;left:50%;transform:translateX(-50%)}.ods-toast-stack--top-right{top:0;right:0}.ods-toast-stack--bottom-left{bottom:0;left:0}.ods-toast-stack--bottom-center{bottom:0;left:50%;transform:translateX(-50%)}.ods-toast-stack--bottom-right{bottom:0;right:0}.ods-toast-stack--expanded{pointer-events:auto}.ods-toast-stack__scroll{position:relative;display:flex;flex-direction:column-reverse;gap:0;width:380px;max-width:calc(100vw - 32px)}.ods-toast-stack__scroll>.ods-toast{position:absolute;left:0;right:0;width:100%}.ods-toast-stack--bottom-left .ods-toast-stack__scroll>.ods-toast,.ods-toast-stack--bottom-center .ods-toast-stack__scroll>.ods-toast,.ods-toast-stack--bottom-right .ods-toast-stack__scroll>.ods-toast{bottom:0}.ods-toast-stack--top-left .ods-toast-stack__scroll>.ods-toast,.ods-toast-stack--top-center .ods-toast-stack__scroll>.ods-toast,.ods-toast-stack--top-right .ods-toast-stack__scroll>.ods-toast{top:0}.ods-toast-stack__scroll{min-height:60px}.ods-toast-stack__scroll--expanded{position:relative;display:flex;gap:8px;max-height:70vh;overflow-y:auto;padding:var(--ods-space-1);min-height:0}.ods-toast-stack__scroll--expanded>.ods-toast{position:relative;left:auto;right:auto;top:auto;bottom:auto}.ods-toast{position:relative;display:flex;align-items:center;gap:var(--ods-space-3);padding:14px var(--ods-space-4);min-width:min(380px,100%);max-width:480px;box-sizing:border-box;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary);will-change:transform,opacity;cursor:default;user-select:none}.ods-toast--stacked{cursor:pointer}.ods-toast--success{border-left:2px solid var(--ods-status-success)}.ods-toast--info,.ods-toast--running{border-left:2px solid var(--ods-accent)}.ods-toast--warning{border-left:2px solid var(--ods-status-pending)}.ods-toast--error,.ods-toast--failed{border-left:2px solid var(--ods-status-failed)}.ods-toast__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:16px;height:16px;margin-top:1px;align-self:flex-start}.ods-toast__body{flex:1 1 auto;min-width:0}.ods-toast__title{font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-primary);line-height:1.35;margin-bottom:3px}.ods-toast__desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:1.5}.ods-toast__action{flex-shrink:0;align-self:center;display:flex;align-items:center}.ods-toast__action-chip{display:inline-flex;align-items:center;padding:4px var(--ods-space-3);border:1px solid var(--ods-accent-border, var(--ods-accent));background:var(--ods-accent-soft);color:var(--ods-accent);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;line-height:1;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-toast__action-chip:hover{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-toast__action-chip:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px}.ods-toast__close{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-disabled);cursor:pointer;flex-shrink:0;align-self:flex-start;margin-top:-2px;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-toast__close:hover{background:var(--ods-surface-subtle);color:var(--ods-text-primary)}.ods-toast__close:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-toast-stack__collapse{align-self:flex-end;margin-top:var(--ods-space-1);padding:0 var(--ods-space-2);height:20px;border:1px solid var(--ods-border-strong);background:var(--ods-surface-canvas);color:var(--ods-text-body);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:500;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-toast-stack__collapse:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-condition-builder{display:flex;flex-direction:column;gap:0;font-family:var(--ods-font-family-sans);container-type:inline-size;container-name:ods-cb}.ods-condition-builder__join-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:64px;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-accent);background:var(--ods-accent-soft);border:1px solid var(--ods-accent);border-radius:var(--ods-radius-1);cursor:default}.ods-condition-builder__join-btn--lead{background:var(--ods-surface-muted);color:var(--ods-text-tertiary);border-color:var(--ods-border-default)}.ods-condition-builder__join-btn--clickable{cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-condition-builder__join-btn--clickable:hover{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-condition-builder__join-btn--clickable:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-condition-row{display:flex;align-items:center;gap:var(--ods-space-2);margin-bottom:var(--ods-space-2)}@container ods-cb (max-width: 520px){.ods-condition-row{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--ods-space-2);row-gap:var(--ods-space-1-5);align-items:stretch;padding:var(--ods-space-2);border:1px solid var(--ods-border-soft);border-radius:var(--ods-radius-1);background:var(--ods-surface-subtle)}.ods-condition-row>.ods-condition-builder__join-btn{grid-column:1/2;justify-self:start;width:auto;min-width:64px}.ods-condition-row>.ods-condition-row__remove{grid-column:2/3;justify-self:end}.ods-condition-row>.ods-cb-dd:nth-of-type(1){grid-column:1/2;min-width:0 !important}.ods-condition-row>.ods-cb-dd:nth-of-type(2){grid-column:2/3;min-width:0 !important}.ods-condition-row>.ods-condition-row__value{grid-column:1/-1;width:100%}}.ods-condition-row__value{flex:1 1 0;min-width:0;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);margin:0;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-sm);line-height:1;outline:none;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-condition-row__value:hover{border-color:var(--ods-text-tertiary)}.ods-condition-row__value:focus,.ods-condition-row__value:focus-visible{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-condition-row__value::placeholder{color:var(--ods-text-disabled)}.ods-condition-row__remove{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));flex-shrink:0}.ods-condition-row__remove>svg{width:14px;height:14px}.ods-condition-row__remove:hover{background:var(--ods-status-failed-bg);color:var(--ods-status-failed)}.ods-cb-dd__chev{width:12px;height:12px}.ods-cb-dd__search>svg{width:14px;height:14px}.ods-cb-dd__opt-check{width:14px;height:14px}.ods-condition-builder__actions{padding-top:var(--ods-space-2)}.ods-condition-builder__add{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:var(--ods-space-1) var(--ods-space-2);border:1px dashed var(--ods-border-strong);border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-sm);cursor:pointer}.ods-condition-builder__add>svg{width:12px;height:12px}.ods-condition-builder__add{transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-condition-builder__add:hover{border-color:var(--ods-accent);color:var(--ods-accent);background:var(--ods-accent-soft)}.ods-condition-group{margin-left:var(--ods-space-2);padding-left:var(--ods-space-3);border-left:2px solid var(--ods-accent-border)}.ods-cb-dd{position:relative;display:inline-flex;flex-shrink:0}.ods-cb-dd__trigger{display:inline-flex;align-items:center;gap:var(--ods-space-1);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-size:var(--ods-font-size-sm);font-weight:500;font-family:inherit;cursor:pointer;text-align:left;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-cb-dd__trigger:hover{border-color:var(--ods-text-tertiary)}.ods-cb-dd__trigger:focus-visible,.ods-cb-dd__trigger--open{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-cb-dd__icon,.ods-cb-dd__symbol{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ods-cb-dd__icon{width:12px;height:12px;color:var(--ods-accent)}.ods-cb-dd__symbol{font-weight:700;color:var(--ods-accent);min-width:12px;font-family:var(--ods-font-family-mono)}.ods-cb-dd__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-cb-dd__label--placeholder{color:var(--ods-text-disabled);font-weight:400}.ods-cb-dd__chev{color:var(--ods-text-tertiary);flex-shrink:0}.ods-cb-dd__panel{position:absolute;top:calc(100% + var(--ods-space-1));left:0;z-index:50;min-width:100%;max-width:280px;display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);overflow:hidden}.ods-cb-dd__search{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);border-bottom:1px solid var(--ods-border-default);color:var(--ods-text-tertiary)}.ods-cb-dd__search input{flex:1 1 auto;min-width:0;border:0;outline:none;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary)}.ods-cb-dd__search input::placeholder{color:var(--ods-text-disabled)}.ods-cb-dd__list{list-style:none;margin:0;padding:var(--ods-space-1);max-height:240px;overflow-y:auto}.ods-cb-dd__opt{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;padding:var(--ods-space-1) var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-sm);font-family:inherit;color:var(--ods-text-primary);cursor:pointer;text-align:left;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-cb-dd__opt--active{background:var(--ods-surface-muted)}.ods-cb-dd__opt--selected{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:600}.ods-cb-dd__opt-icon{display:inline-flex;width:12px;height:12px;color:var(--ods-accent);flex-shrink:0}.ods-cb-dd__opt-symbol{font-family:var(--ods-font-family-mono);font-weight:700;color:var(--ods-accent);min-width:12px}.ods-cb-dd__opt-text{display:flex;flex-direction:column;gap:1px;flex:1 1 auto;min-width:0}.ods-cb-dd__opt-label{line-height:1.3}.ods-cb-dd__opt-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:1.3}.ods-cb-dd__opt-check{color:var(--ods-accent);flex-shrink:0}.ods-cb-dd__empty{list-style:none;padding:var(--ods-space-3);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);text-align:center}.ods-data-mapper{--dm-row-h: var(--ods-layout-row-height);--dm-side-w: 280px;display:flex;flex-direction:column;font-family:var(--ods-font-family-sans);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);color:var(--ods-text-primary);min-height:480px;overflow:hidden}.ods-data-mapper__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-3) var(--ods-space-4);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);flex-shrink:0}.ods-data-mapper__toolbar-left,.ods-data-mapper__toolbar-right{display:inline-flex;align-items:center;gap:var(--ods-space-3)}.ods-data-mapper__icon-badge{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--ods-radius-1);background:var(--ods-accent);color:var(--ods-surface-canvas);flex-shrink:0}.ods-data-mapper__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-data-mapper__stats{display:inline-flex;align-items:center;gap:var(--ods-space-2);padding-left:var(--ods-space-3);border-left:1px solid var(--ods-border-default)}.ods-data-mapper__stat{display:inline-flex;align-items:baseline;gap:4px;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-data-mapper__stat--warn{color:var(--ods-status-pending-fg)}.ods-data-mapper__stat-value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-base);font-weight:600;color:var(--ods-text-primary)}.ods-data-mapper__stat--warn .ods-data-mapper__stat-value{color:var(--ods-status-pending-fg)}.ods-data-mapper__stat-label{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-data-mapper__stat-sep{color:var(--ods-text-disabled);user-select:none}.ods-data-mapper__action{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-body);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__action svg{color:var(--ods-text-tertiary)}.ods-data-mapper__action:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-data-mapper__action:hover:not(:disabled) svg{color:var(--ods-text-primary)}.ods-data-mapper__action:disabled{opacity:.4;cursor:not-allowed}.ods-data-mapper__action--ghost{background:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.ods-data-mapper__action--ghost:hover:not(:disabled){background:var(--ods-surface-muted);border-color:var(--ods-border-default)}.ods-data-mapper__action--primary{background:var(--ods-accent);color:var(--ods-surface-canvas);border-color:var(--ods-accent)}.ods-data-mapper__action--primary svg{color:currentColor}.ods-data-mapper__action--primary:hover:not(:disabled){background:var(--ods-accent-hover);border-color:var(--ods-accent-hover);color:var(--ods-surface-canvas)}.ods-data-mapper__subtoolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-4);border-bottom:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);flex-shrink:0}.ods-data-mapper__search{position:relative;display:inline-flex;align-items:center;width:280px}.ods-data-mapper__search>svg{position:absolute;left:var(--ods-space-2);color:var(--ods-text-tertiary);pointer-events:none}.ods-data-mapper__search input{flex:1 1 auto;width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3) 0 28px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);outline:none;transition:border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__search input::placeholder{color:var(--ods-text-disabled)}.ods-data-mapper__search input:focus{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-data-mapper__display{display:inline-flex;align-items:center;padding:1px;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-data-mapper__display-btn{height:22px;padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__display-btn:hover{color:var(--ods-text-primary)}.ods-data-mapper__display-btn--active{background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-weight:600;box-shadow:0 0 0 1px var(--ods-border-default)}.ods-data-mapper__body{display:flex;flex:1 1 auto;min-height:0}.ods-data-mapper__grid{flex:1 1 auto;display:flex;flex-direction:column;min-width:0;overflow:auto;background:var(--ods-surface-canvas)}.ods-data-mapper__grid-head{display:grid;grid-template-columns:minmax(280px, 1fr) minmax(320px, 1.4fr);position:sticky;top:0;z-index:3;background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default)}.ods-data-mapper__grid-head-cell{height:var(--dm-row-h);display:inline-flex;align-items:center;padding:0 var(--ods-space-3);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-data-mapper__grid-head-cell+.ods-data-mapper__grid-head-cell{border-left:1px solid var(--ods-border-default)}.ods-data-mapper__row{display:grid;grid-template-columns:minmax(280px, 1fr) minmax(320px, 1.4fr);border-bottom:1px solid var(--ods-border-soft);background:var(--ods-surface-canvas);transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__row:hover{background:var(--ods-surface-subtle)}.ods-data-mapper__row--selected{background:var(--ods-accent-soft)}.ods-data-mapper__row--selected:hover{background:var(--ods-accent-soft)}.ods-data-mapper__row--mapped:not(.ods-data-mapper__row--selected){background:var(--ods-surface-canvas)}.ods-data-mapper__row--mapped:not(.ods-data-mapper__row--selected) .ods-data-mapper__cell--target{border-left:2px solid var(--ods-accent)}.ods-data-mapper__row--drop-target{background:var(--ods-accent-soft) !important;box-shadow:inset 0 0 0 2px var(--ods-accent);transition-duration:0ms}.ods-data-mapper__row--drop-target .ods-data-mapper__expr-empty{color:var(--ods-accent);font-style:normal;font-weight:600}.ods-data-mapper__guides{display:inline-flex;align-items:stretch;align-self:stretch;flex-shrink:0}.ods-data-mapper__guide{display:inline-block;width:16px;align-self:stretch;border-left:1px solid var(--ods-border-soft);margin-right:-1px}.ods-data-mapper__guide--last{position:relative}.ods-data-mapper__guide--last::before{content:"";position:absolute;top:50%;left:0;width:8px;height:1px;background:var(--ods-border-soft)}.ods-data-mapper__sidebar .ods-data-mapper__guide{width:12px}.ods-data-mapper__cell{display:flex;align-items:center;gap:var(--ods-space-2);min-height:var(--dm-row-h);padding:0 var(--ods-space-3);font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);cursor:default}.ods-data-mapper__cell+.ods-data-mapper__cell{border-left:1px solid var(--ods-border-soft)}.ods-data-mapper__cell--target{cursor:pointer}.ods-data-mapper__cell--expr{cursor:pointer;padding:var(--ods-space-1) var(--ods-space-3)}.ods-data-mapper__cell--expr-editing{padding:var(--ods-space-2) var(--ods-space-3);align-items:stretch}.ods-data-mapper__caret{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;flex-shrink:0;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__caret:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-data-mapper__caret-spacer{display:inline-block;width:14px;flex-shrink:0}.ods-data-mapper__field-meta{display:inline-flex;align-items:baseline;gap:var(--ods-space-2);flex:1 1 auto;min-width:0;overflow:hidden}.ods-data-mapper__field-label{display:inline-flex;align-items:center;font-weight:500;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.ods-data-mapper__field-req{color:var(--ods-status-failed);margin-left:2px;font-weight:600}.ods-data-mapper__field-api{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);letter-spacing:0;white-space:nowrap}.ods-data-mapper__field-api::before{content:"·";margin-right:4px;color:var(--ods-text-disabled)}.ods-data-mapper__type{flex-shrink:0;display:inline-flex;align-items:center;height:18px;padding:0 var(--ods-space-1);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:500;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;border:1px solid var(--ods-border-default);background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-data-mapper__type--string{background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd)}.ods-data-mapper__type--integer{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-data-mapper__type--datetime{background:var(--ods-node-transform-bg);color:var(--ods-node-transform-fg);border-color:var(--ods-node-transform-bd)}.ods-data-mapper__type--boolean{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-data-mapper__type--object{background:var(--ods-node-io-bg);color:var(--ods-node-io-fg);border-color:var(--ods-node-io-bd)}.ods-data-mapper__foreach{display:inline-flex;align-items:center;gap:var(--ods-space-1);margin-left:auto;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);cursor:pointer;flex-shrink:0}.ods-data-mapper__foreach input{width:12px;height:12px;accent-color:var(--ods-accent);cursor:pointer}.ods-data-mapper__expr-render{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;max-width:100%;min-width:0;line-height:1.4;padding:4px 0}.ods-data-mapper__expr-text{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-body);white-space:pre-wrap;word-break:break-word}.ods-data-mapper__expr-chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 var(--ods-space-1) 0 6px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-accent-border);background:var(--ods-accent-soft);color:var(--ods-accent);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:600;line-height:1;max-width:200px;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__expr-chip--variable{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-data-mapper__expr-chip--function{background:var(--ods-node-transform-bg);color:var(--ods-node-transform-fg);border-color:var(--ods-node-transform-bd);font-family:var(--ods-font-family-mono);font-weight:500}.ods-data-mapper__expr-chip--integer{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-data-mapper__expr-chip--datetime{background:var(--ods-node-transform-bg);color:var(--ods-node-transform-fg);border-color:var(--ods-node-transform-bd)}.ods-data-mapper__expr-chip--boolean{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-data-mapper__expr-chip--object{background:var(--ods-node-io-bg);color:var(--ods-node-io-fg);border-color:var(--ods-node-io-bd)}.ods-data-mapper__expr-chip-glyph{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--ods-font-family-mono);font-size:9px;font-weight:700;opacity:.7;letter-spacing:0}.ods-data-mapper__expr-chip-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ods-data-mapper__expr-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:2px;margin-right:-3px;padding:0;border:0;background:rgba(0,0,0,0);color:currentColor;border-radius:var(--ods-radius-1);opacity:.55;cursor:pointer;transition:opacity var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__expr-chip-remove:hover{opacity:1;background:rgba(0,0,0,.08)}.ods-data-mapper__expr-empty{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-disabled);font-style:italic}.ods-data-mapper__expr-group{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-data-mapper__editor{display:flex;align-items:stretch;gap:var(--ods-space-1);width:100%;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-focus);border-radius:var(--ods-radius-1);box-shadow:0 0 0 2px var(--ods-accent-border)}.ods-data-mapper__editor-input{flex:1 1 auto;min-width:0;min-height:26px;padding:4px var(--ods-space-2);border:0;background:rgba(0,0,0,0);outline:none;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);line-height:1.6;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;cursor:text}.ods-data-mapper__editor-input--empty::before{content:attr(data-placeholder);color:var(--ods-text-disabled);font-style:italic;pointer-events:none;user-select:none;font-family:var(--ods-font-family-sans)}.ods-data-mapper__editor-input .ods-data-mapper__expr-chip{margin:0 2px;vertical-align:baseline;user-select:none;cursor:default;line-height:18px}.ods-data-mapper__editor-actions{display:inline-flex;align-items:center;gap:1px;padding:2px;border-left:1px solid var(--ods-border-soft)}.ods-data-mapper__editor-fx,.ods-data-mapper__editor-clear{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__editor-fx:hover,.ods-data-mapper__editor-clear:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-data-mapper__editor-clear:hover{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-data-mapper__empty{padding:var(--ods-space-7) var(--ods-space-4);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-data-mapper__sidebar{display:flex;flex-direction:column;width:var(--dm-side-w);flex-shrink:0;border-left:1px solid var(--ods-border-default);background:var(--ods-surface-subtle);position:relative}.ods-data-mapper__sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-1);padding:var(--ods-space-1) var(--ods-space-1) var(--ods-space-1) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default);flex-shrink:0;background:var(--ods-surface-subtle)}.ods-data-mapper__sidebar-tabs{display:inline-flex;align-items:center;gap:1px;padding:1px;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-data-mapper__sidebar-tab{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__sidebar-tab:hover{color:var(--ods-text-primary)}.ods-data-mapper__sidebar-tab--active{background:var(--ods-surface-canvas);color:var(--ods-accent);font-weight:600;box-shadow:0 0 0 1px var(--ods-border-default)}.ods-data-mapper__sidebar-close{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer}.ods-data-mapper__sidebar-close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-data-mapper__sidebar-search{position:relative;display:flex;align-items:center;padding:var(--ods-space-1) var(--ods-space-2);border-bottom:1px solid var(--ods-border-default);background:var(--ods-surface-subtle);color:var(--ods-text-tertiary);flex-shrink:0}.ods-data-mapper__sidebar-search>svg{position:absolute;left:calc(var(--ods-space-2) + var(--ods-space-1));pointer-events:none}.ods-data-mapper__sidebar-search input{flex:1 1 auto;width:100%;height:24px;padding:0 var(--ods-space-1) 0 24px;border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);outline:none}.ods-data-mapper__sidebar-search input::placeholder{color:var(--ods-text-disabled)}.ods-data-mapper__sidebar-search input:focus{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-data-mapper__sidebar-list{flex:1 1 auto;overflow-y:auto;padding:var(--ods-space-1) 0}.ods-data-mapper__sidebar-empty{padding:var(--ods-space-5) var(--ods-space-3);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-data-mapper__sidebar-item{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:28px;padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);text-align:left;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__sidebar-item:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-data-mapper__sidebar-item:disabled{color:var(--ods-text-disabled);cursor:not-allowed}.ods-data-mapper__sidebar-item--draggable{cursor:grab}.ods-data-mapper__sidebar-item--draggable:active{cursor:grabbing}.ods-data-mapper__sidebar-item--draggable:hover{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-data-mapper__sidebar-item--draggable:hover .ods-data-mapper__sidebar-grip{color:var(--ods-accent)}.ods-data-mapper__sidebar-grip{display:inline-flex;align-items:center;justify-content:center;width:12px;height:14px;color:var(--ods-text-disabled);flex-shrink:0;transition:color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__sidebar-caret{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-data-mapper__sidebar-caret-spacer{display:inline-block;width:12px;flex-shrink:0}.ods-data-mapper__sidebar-item-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-data-mapper__sidebar-group+.ods-data-mapper__sidebar-group{margin-top:var(--ods-space-2)}.ods-data-mapper__sidebar-group-label{padding:var(--ods-space-1) var(--ods-space-3);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-data-mapper__sidebar-fn{display:flex;align-items:flex-start;gap:var(--ods-space-2);width:100%;min-height:32px;padding:var(--ods-space-1) var(--ods-space-3);border:0;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);text-align:left;cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-data-mapper__sidebar-fn:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-data-mapper__sidebar-fn:disabled{color:var(--ods-text-disabled);cursor:not-allowed}.ods-data-mapper__sidebar-fn>svg{color:var(--ods-accent);flex-shrink:0;margin-top:4px}.ods-data-mapper__sidebar-fn-text{display:flex;flex-direction:column;gap:1px;flex:1 1 auto;min-width:0}.ods-data-mapper__sidebar-fn-name{font-family:var(--ods-font-family-mono);font-weight:500;color:var(--ods-text-primary)}.ods-data-mapper__sidebar-fn-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-data-mapper__sidebar-hint{padding:var(--ods-space-2) var(--ods-space-3);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary);background:var(--ods-surface-muted);border-top:1px solid var(--ods-border-default);flex-shrink:0}.ods-data-mapper__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-3) var(--ods-space-4);border-top:1px solid var(--ods-border-default);background:var(--ods-surface-subtle);flex-shrink:0}.ods-data-mapper__footer-status{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-sm);min-width:0}.ods-data-mapper__footer-ok{display:inline-flex;align-items:center;gap:var(--ods-space-1);color:var(--ods-status-success-fg);font-weight:500}.ods-data-mapper__footer-ok>svg{color:var(--ods-status-success);flex-shrink:0}.ods-data-mapper__footer-warn{display:inline-flex;align-items:center;gap:var(--ods-space-1);color:var(--ods-status-pending-fg);font-weight:500}.ods-data-mapper__footer-warn-dot{display:inline-block;width:6px;height:6px;border-radius:var(--ods-radius-pill);background:var(--ods-status-pending);flex-shrink:0}.ods-data-mapper__footer-muted{color:var(--ods-text-tertiary);font-style:italic}.ods-data-mapper__footer-actions{display:inline-flex;align-items:center;gap:var(--ods-space-2);flex-shrink:0}.ods-data-mapper__footer-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;margin-left:var(--ods-space-1);background:hsla(0,0%,100%,.18);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;font-weight:700;color:inherit}.ods-flow-canvas{position:relative;width:100%;height:100%;background:var(--ods-surface-dag-canvas);cursor:grab;touch-action:none;transition:outline var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}.ods-flow-canvas--panning{cursor:grabbing}.ods-flow-canvas--space-panning{cursor:grab}.ods-flow-canvas--space-panning .ods-flow-node{cursor:grab}.ods-flow-canvas [data-canvas-overlay]{cursor:default}[data-dragging=true][data-over-canvas=true] .ods-flow-canvas{outline:2px solid var(--ods-status-success);outline-offset:-2px}[data-dragging=true][data-over-canvas=false] .ods-flow-canvas{outline:2px solid var(--ods-status-failed);outline-offset:-2px}.ods-flow-canvas__grid{position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(to right, var(--ods-border-soft) 1px, transparent 1px),linear-gradient(to bottom, var(--ods-border-soft) 1px, transparent 1px);background-size:20px 20px;background-position:0 0;pointer-events:none}.ods-flow-canvas__viewport{position:absolute;inset:0;overflow:hidden}.ods-flow-canvas__content{position:absolute;top:0;left:0;width:100%;height:100%;cursor:inherit;transform-origin:0 0}.ods-flow-canvas__toolbar{position:absolute;top:var(--ods-space-3);left:var(--ods-space-3);display:flex;flex-direction:column;align-items:center;gap:0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);z-index:10;overflow:hidden}.ods-flow-canvas__toolbar-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:rgba(0,0,0,0);border:none;color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));position:relative}.ods-flow-canvas__toolbar-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-flow-canvas__toolbar-btn:active{background:var(--ods-surface-sunken)}.ods-flow-canvas__toolbar-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-flow-canvas__toolbar-btn svg{flex-shrink:0}.ods-flow-canvas__toolbar-divider{width:20px;height:1px;background:var(--ods-border-default);margin:var(--ods-space-1) 0}.ods-flow-canvas__toolbar-btn-wrapper{position:relative}.ods-flow-canvas__toolbar-btn-wrapper::after{content:attr(data-tooltip);position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);padding:var(--ods-space-1) var(--ods-space-2);background:var(--ods-text-primary);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500;white-space:nowrap;border-radius:var(--ods-radius-1);opacity:0;pointer-events:none;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));z-index:1000}.ods-flow-canvas__toolbar-btn-wrapper:hover::after{opacity:1}.ods-flow-canvas__toolbar-btn-wrapper--pulse .ods-flow-canvas__toolbar-btn{animation:lockPulse .6s ease-out}@keyframes lockPulse{0%{background:rgba(0,0,0,0);box-shadow:0 0 0 0 var(--ods-status-failed-bd)}50%{background:var(--ods-status-failed-bg);box-shadow:0 0 0 6px rgba(0,0,0,0)}100%{background:rgba(0,0,0,0);box-shadow:0 0 0 0 rgba(0,0,0,0)}}.ods-flow-canvas__toolbar-zoom{display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums;font-size:var(--ods-font-size-xs);font-weight:500}.ods-flow-canvas__empty{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);display:flex;flex-direction:column;align-items:center;gap:var(--ods-space-3);text-align:center;color:var(--ods-text-tertiary);pointer-events:none;font-family:var(--ods-font-family-sans)}.ods-flow-canvas__empty svg{color:var(--ods-text-disabled)}.ods-flow-canvas__empty h3{font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);margin:0}.ods-flow-canvas__empty p{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);margin:0}.ods-flow-canvas__drag-preview{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-3);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);cursor:grabbing;pointer-events:none;font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary)}.ods-flow-canvas__drag-preview-icon{display:flex;align-items:center;justify-content:center;color:var(--ods-text-primary)}.ods-flow-node{position:absolute;width:368px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);cursor:grab;user-select:none;box-shadow:0 2px 8px rgba(0,0,0,.2);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary);overflow:visible;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}.ods-flow-node:hover{border-color:var(--ods-border-strong)}.ods-flow-node--dragging{opacity:.85;cursor:grabbing;box-shadow:var(--ods-shadow-pop)}.ods-flow-node--config-open{border-color:var(--ods-border-focus);background:var(--ods-accent-soft)}.ods-flow-node__status{position:absolute;top:var(--ods-spacing-03);right:var(--ods-spacing-03);display:flex;align-items:center;justify-content:center;padding:2px 4px;border-radius:2px;color:var(--ods-color-support-warning)}.ods-flow-node__status svg{flex-shrink:0}.ods-flow-node__status--valid{color:var(--ods-color-support-success)}.ods-flow-node__status--warning{color:var(--ods-color-support-warning)}.ods-flow-node__status--error{color:var(--ods-color-support-error)}.ods-flow-node__status--unconfigured{color:var(--ods-color-text-secondary)}.ods-flow-node__header{position:absolute;top:-18px;left:0;display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:96px;max-width:220px;height:18px;padding:0 8px;background:var(--ods-status-success, #16a34a);cursor:grab;color:var(--ods-text-on-color, #ffffff);font:var(--ods-font-label_01);font-weight:600;font-size:11px;line-height:1;white-space:nowrap;overflow:hidden}.ods-flow-node__header:active{cursor:grabbing}.ods-flow-node__header-left{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.ods-flow-node__header-right{display:flex;align-items:center;gap:4px;flex-shrink:0}.ods-flow-node__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--ods-color-text-on-color)}.ods-flow-node__icon svg{width:12px;height:12px;shape-rendering:crispEdges;vector-effect:non-scaling-stroke;image-rendering:crisp-edges;-webkit-backface-visibility:hidden;backface-visibility:hidden}.ods-flow-node__title{flex:1;min-width:0;display:flex;align-items:center;gap:4px}.ods-flow-node__label{font:var(--ods-font-label_01);font-weight:600;color:var(--ods-color-text-on-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;line-height:1}.ods-flow-node__action-btn{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:rgba(0,0,0,0);border:none;color:var(--ods-color-text-on-color);cursor:pointer;transition:all .15s ease;opacity:.8}.ods-flow-node__action-btn:hover{opacity:1;transform:scale(1.1)}.ods-flow-node__action-btn:active{transform:scale(0.95)}.ods-flow-node__action-btn svg{width:14px;height:14px}.ods-flow-node__delete-btn{position:absolute;bottom:var(--ods-spacing-03);right:var(--ods-spacing-03);display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:rgba(0,0,0,0);border:none;color:var(--ods-color-icon-secondary);cursor:pointer;transition:all .15s ease;opacity:.6;z-index:2}.ods-flow-node__delete-btn:hover{opacity:1;color:var(--ods-color-support-error);transform:scale(1.1)}.ods-flow-node__delete-btn:active{transform:scale(0.95)}.ods-flow-node__delete-btn svg{width:16px;height:16px}.ods-flow-node__badge{display:none}.ods-flow-node__actions{display:none}.ods-flow-node__body{position:relative;padding:var(--ods-spacing-05);min-height:108px;display:flex;flex-direction:column;gap:var(--ods-spacing-04);overflow:hidden}.ods-flow-node__content{display:flex;align-items:flex-start;gap:var(--ods-spacing-04);margin-bottom:var(--ods-spacing-04)}.ods-flow-node__content-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--ods-color-background-secondary);border-radius:50%;color:var(--ods-color-text-primary)}.ods-flow-node__content-icon svg{shape-rendering:crispEdges;vector-effect:non-scaling-stroke;image-rendering:crisp-edges;-webkit-backface-visibility:hidden;backface-visibility:hidden}.ods-flow-node__content-text{flex:1;min-width:0}.ods-flow-node__content-title{font:var(--ods-font-heading_compact_01);font-weight:600;color:var(--ods-color-text-primary);margin-bottom:4px}.ods-flow-node__content-subtitle{font:var(--ods-font-label_01);color:var(--ods-color-text-secondary);margin-bottom:4px}.ods-flow-node__content-info{font:var(--ods-font-label_01);color:var(--ods-color-text-primary);display:flex;align-items:center;gap:4px}.ods-flow-node__content-info svg{width:14px;height:14px}.ods-flow-node__description{font:var(--ods-font-body_compact_01);color:var(--ods-color-text-secondary);font-size:12px;line-height:1.4}.ods-flow-node__validation{display:flex;align-items:center;gap:var(--ods-spacing-02);padding:var(--ods-spacing-03);background:var(--ods-color-support-warning) -inverse;color:var(--ods-color-text-primary);border-radius:2px;font:var(--ods-font-label_01)}.ods-flow-node__validation svg{flex-shrink:0;fill:var(--ods-color-support-warning)}.ods-flow-node__ports{position:absolute;display:flex;justify-content:center;align-items:center;gap:var(--ods-spacing-03)}.ods-flow-node__ports--input{left:50%;top:-8px;transform:translateX(-50%)}.ods-flow-node__ports--output{left:50%;bottom:-8px;transform:translateX(-50%)}.ods-flow-node__ports--branching{gap:var(--ods-spacing-06);bottom:-10px}.ods-flow-node__port-label{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);font-family:var(--ods-font-family-mono);font-size:9px;font-weight:600;letter-spacing:var(--ods-tracking-mono);white-space:nowrap;color:var(--ods-text-tertiary);pointer-events:none;margin-bottom:2px;text-transform:uppercase}.ods-flow-node__port{position:relative;width:16px;height:16px;cursor:crosshair}.ods-flow-node__port--labeled{display:flex;flex-direction:column;align-items:center;width:auto;min-width:16px}.ods-flow-node__port--connecting .ods-flow-node__port-dot{background:var(--ods-status-success);border-color:var(--ods-status-success);transform:scale(1.3);box-shadow:0 0 0 3px var(--ods-status-success-bd);animation:pulse 1s ease-in-out infinite}.ods-flow-node__port--connectable .ods-flow-node__port-dot{background:var(--ods-status-success);border-color:var(--ods-status-success);transform:scale(1.3);box-shadow:0 0 0 3px var(--ods-status-success-bd);animation:pulse 1s ease-in-out infinite}.ods-flow-node__port--invalid{cursor:not-allowed}.ods-flow-node__port--invalid .ods-flow-node__port-dot{background:var(--ods-status-failed);border-color:var(--ods-status-failed);transform:scale(1.2);box-shadow:0 0 0 3px var(--ods-status-failed-bd)}@keyframes pulse{0%,100%{transform:scale(1.3)}50%{transform:scale(1.5)}}.ods-flow-node__port-dot{width:12px;height:12px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);transition:all .2s ease;box-shadow:none;margin:2px}.ods-flow-node__port:hover .ods-flow-node__port-dot{background:#161a21;border-color:#6f7785;box-shadow:0 0 0 2px rgba(15,98,254,.35)}.ods-flow-node__port--connected .ods-flow-node__port-dot{background:#0f1118;border-color:#8ab6ff}.ods-flow-node__ports--input .ods-flow-node__port-dot{background:#0f1118;border-color:#3b4049;box-shadow:none}.ods-flow-node__ports--output .ods-flow-node__port-dot{background:#0f1118;border-color:#3b4049;box-shadow:none}.ods-flow-node__port--edge-selected .ods-flow-node__port-dot{border-color:var(--ods-accent);box-shadow:0 0 0 2px var(--ods-accent-border);animation:port-pulse 1.2s ease-in-out infinite}@keyframes port-pulse{0%{box-shadow:0 0 0 2px var(--ods-accent-border)}50%{box-shadow:0 0 0 6px var(--ods-accent-soft)}100%{box-shadow:0 0 0 2px var(--ods-accent-border)}}.ods-flow-node__running-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:var(--ods-surface-canvas);opacity:.9;border-radius:var(--ods-radius-2);color:var(--ods-accent)}.ods-flow-node__running-overlay svg{animation:rotate 1s linear infinite}@keyframes rotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.ods-flow-edge{cursor:pointer;shape-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ods-flow-edge__hitbox{cursor:pointer}.ods-flow-edge__path{transition:stroke-width var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));vector-effect:non-scaling-stroke;stroke:var(--ods-border-strong);stroke-width:1}.ods-flow-edge__path--selected{stroke:var(--ods-accent) !important;stroke-width:2 !important}.ods-flow-edge__path--active{stroke:var(--ods-accent);stroke-width:1.5}.ods-flow-edge__arrow{vector-effect:non-scaling-stroke;fill:var(--ods-border-strong);transition:fill var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-flow-edge__handle{fill:var(--ods-surface-canvas);stroke:var(--ods-border-strong);stroke-width:1;vector-effect:non-scaling-stroke;transition:fill var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),stroke var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-flow-edge__handle:hover{fill:var(--ods-accent-soft);stroke:var(--ods-accent)}.ods-flow-edge__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:500;letter-spacing:var(--ods-tracking-mono);fill:var(--ods-text-tertiary);pointer-events:none;user-select:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ods-flow-edge__delete{cursor:pointer;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-flow-edge__delete:hover{transform:scale(1.1)}.ods-flow-edge__delete:active{transform:scale(0.95)}.ods-flow-edge__delete-bg{fill:var(--ods-surface-canvas);stroke:var(--ods-border-default);stroke-width:1;transition:fill var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-flow-edge__delete:hover .ods-flow-edge__delete-bg{fill:var(--ods-status-failed);stroke:var(--ods-status-failed)}.ods-flow-edge__delete-icon{pointer-events:none;user-select:none;fill:var(--ods-text-tertiary)}.ods-flow-edge__delete:hover .ods-flow-edge__delete-icon{fill:var(--ods-surface-canvas)}.ods-flow-minimap{position:absolute;bottom:var(--ods-space-3);right:var(--ods-space-3);width:140px;height:100px;border-radius:var(--ods-radius-1);overflow:hidden;cursor:pointer;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);box-shadow:var(--ods-shadow-pop)}.ods-flow-minimap svg{display:block;width:100%;height:100%}.ods-flow-minimap__node{fill:var(--ods-border-strong);opacity:.85;transition:opacity var(--ods-duration-fast, 120ms) ease}.ods-flow-minimap__edge{stroke:var(--ods-border-default);stroke-width:1;opacity:.65}.ods-flow-minimap__viewport{fill:color-mix(in srgb, var(--ods-accent, #2563eb) 14%, transparent);stroke:var(--ods-accent);stroke-width:1.5;pointer-events:all;transition:fill var(--ods-duration-fast, 120ms) ease}.ods-flow-minimap--dragging{cursor:grabbing}.ods-flow-minimap--dragging .ods-flow-minimap__viewport{fill:color-mix(in srgb, var(--ods-accent, #2563eb) 28%, transparent);cursor:grabbing !important}.ods-flow-toolbar{position:absolute;display:inline-flex;align-items:center;gap:1px;padding:2px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);z-index:50;overflow:visible}.ods-flow-toolbar--left{top:var(--ods-space-3);left:var(--ods-space-3);flex-direction:column}.ods-flow-toolbar--right{top:var(--ods-space-3);right:var(--ods-space-3);flex-direction:column}.ods-flow-toolbar--top{top:var(--ods-space-3);left:50%;transform:translateX(-50%);flex-direction:row}.ods-flow-toolbar--bottom{bottom:var(--ods-space-3);left:50%;transform:translateX(-50%);flex-direction:row}.ods-flow-toolbar__btn-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center}.ods-flow-toolbar__btn-wrapper[data-tooltip]::after{content:attr(data-tooltip);position:absolute;background:var(--ods-text-primary);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-xs);font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));z-index:9999;will-change:opacity}.ods-flow-toolbar__btn-wrapper[data-tooltip]::before{content:"";position:absolute;border:4px solid rgba(0,0,0,0);opacity:0;pointer-events:none;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));z-index:9999}.ods-flow-toolbar__btn-wrapper[data-tooltip]:hover::after,.ods-flow-toolbar__btn-wrapper[data-tooltip]:hover::before{opacity:1}.ods-flow-toolbar--left .ods-flow-toolbar__btn-wrapper[data-tooltip]::after{left:calc(100% + 8px);top:50%;transform:translateY(-50%)}.ods-flow-toolbar--left .ods-flow-toolbar__btn-wrapper[data-tooltip]::before{left:calc(100% + 2px);top:50%;transform:translateY(-50%);border-right-color:var(--ods-text-primary)}.ods-flow-toolbar--right .ods-flow-toolbar__btn-wrapper[data-tooltip]::after{right:calc(100% + 8px);top:50%;transform:translateY(-50%)}.ods-flow-toolbar--right .ods-flow-toolbar__btn-wrapper[data-tooltip]::before{right:calc(100% + 2px);top:50%;transform:translateY(-50%);border-left-color:var(--ods-text-primary)}.ods-flow-toolbar--top .ods-flow-toolbar__btn-wrapper[data-tooltip]::after{top:calc(100% + 8px);left:50%;transform:translateX(-50%)}.ods-flow-toolbar--top .ods-flow-toolbar__btn-wrapper[data-tooltip]::before{top:calc(100% + 2px);left:50%;transform:translateX(-50%);border-bottom-color:var(--ods-text-primary)}.ods-flow-toolbar--bottom .ods-flow-toolbar__btn-wrapper[data-tooltip]::after{bottom:calc(100% + 8px);left:50%;transform:translateX(-50%)}.ods-flow-toolbar--bottom .ods-flow-toolbar__btn-wrapper[data-tooltip]::before{bottom:calc(100% + 2px);left:50%;transform:translateX(-50%);border-top-color:var(--ods-text-primary)}.ods-flow-toolbar__btn{display:inline-flex;align-items:center;justify-content:center;width:var(--ods-layout-control-height);height:var(--ods-layout-control-height);padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-flow-toolbar__btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-flow-toolbar__btn:active:not(:disabled){background:var(--ods-surface-sunken)}.ods-flow-toolbar__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-flow-toolbar__btn:disabled{opacity:.4;cursor:not-allowed}.ods-flow-toolbar__btn--active{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-flow-toolbar__btn--active:hover{background:var(--ods-accent-border)}.ods-flow-toolbar__btn--danger:hover{background:var(--ods-status-failed-bg);color:var(--ods-status-failed)}.ods-flow-toolbar__btn-icon{display:inline-flex;align-items:center;justify-content:center}.ods-flow-toolbar__btn-icon svg{display:block}.ods-flow-toolbar__btn-label{margin-left:var(--ods-space-1);padding-right:var(--ods-space-2);font-size:var(--ods-font-size-xs);font-weight:500;font-family:var(--ods-font-family-sans);color:inherit;white-space:nowrap}.ods-flow-toolbar__btn-wrapper:has(.ods-flow-toolbar__btn-label) .ods-flow-toolbar__btn{width:auto;padding:0 var(--ods-space-2)}.ods-flow-toolbar__btn--save-saving{color:var(--ods-status-running, var(--ods-accent, #2563eb));cursor:progress}.ods-flow-toolbar__btn--save-success{color:var(--ods-status-success, #16a34a)}.ods-flow-toolbar__btn--save-error{background:var(--ods-status-failed-bg, rgba(218, 30, 40, 0.08));color:var(--ods-status-failed, #da1e28)}.ods-flow-toolbar__btn--save-error:hover{background:var(--ods-status-failed-bg, rgba(218, 30, 40, 0.12))}.ods-flow-toolbar__divider{background:var(--ods-border-default);align-self:stretch}.ods-flow-toolbar--top .ods-flow-toolbar__divider,.ods-flow-toolbar--bottom .ods-flow-toolbar__divider{width:1px;height:auto;margin:var(--ods-space-1) 2px}.ods-flow-toolbar--left .ods-flow-toolbar__divider,.ods-flow-toolbar--right .ods-flow-toolbar__divider{width:auto;height:1px;margin:2px var(--ods-space-1)}.ods-flow-toolbar__zoom{display:inline-flex;align-items:center;gap:2px}.ods-flow-toolbar--left .ods-flow-toolbar__zoom,.ods-flow-toolbar--right .ods-flow-toolbar__zoom{flex-direction:column}.ods-flow-toolbar__zoom-label{display:inline-flex;align-items:center;justify-content:center;width:var(--ods-layout-control-height);height:var(--ods-layout-control-height);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;font-variant-numeric:tabular-nums lining-nums;letter-spacing:-0.02em;user-select:none}.ods-workflow-editor{position:relative;display:flex;font-family:var(--ods-font-family-sans);background:rgba(0,0,0,0)}.ods-workflow-editor__drawer{flex-shrink:0;height:100%;border-right:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);overflow:hidden;display:flex;flex-direction:column}.ods-workflow-editor__canvas-wrapper{position:relative;flex:1;min-width:0;height:100%}.ods-workflow-editor__minimap{position:absolute;right:var(--ods-space-3);bottom:var(--ods-space-3);z-index:40}.ods-workflow-editor__console{position:absolute;left:var(--ods-space-3);right:var(--ods-space-3);bottom:var(--ods-space-3);z-index:45;pointer-events:auto}.ods-workflow-header{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-4);background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-default);position:relative;flex-shrink:0;font-family:var(--ods-font-family-sans);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04)}.ods-workflow-header--md{height:var(--ods-layout-topbar-height);min-height:var(--ods-layout-topbar-height);padding:0 var(--ods-space-4)}.ods-workflow-header--sm{height:36px;min-height:36px;padding:0 var(--ods-space-3);gap:var(--ods-space-3)}.ods-workflow-header--sm .ods-workflow-header__left{gap:var(--ods-space-1)}.ods-workflow-header--sm .ods-workflow-header__right{gap:var(--ods-space-1)}.ods-workflow-header--sm .ods-workflow-header__title{font-size:var(--ods-font-size-sm)}.ods-workflow-header--sm .ods-workflow-header__status-dot{width:6px;height:6px}.ods-workflow-header--sm .ods-workflow-header__back{font-size:var(--ods-font-size-xs);padding:2px 4px}.ods-workflow-header__left{display:flex;align-items:center;gap:var(--ods-space-2);min-width:0}.ods-workflow-header__back{display:inline-flex;align-items:center;gap:2px;padding:4px 6px;margin:0;background:rgba(0,0,0,0);border:0;cursor:pointer;color:var(--ods-text-tertiary);font-family:inherit;font-size:var(--ods-font-size-sm);line-height:1;border-radius:var(--ods-radius-1);transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-workflow-header__back:hover{color:var(--ods-text-body);background:var(--ods-surface-muted)}.ods-workflow-header__back:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-workflow-header__back-label{display:inline-block}.ods-workflow-header__back-separator{display:inline-block;margin-left:4px;color:var(--ods-text-tertiary);opacity:.55}.ods-workflow-header__status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--ods-text-tertiary)}.ods-workflow-header__status-dot--draft{background:var(--ods-text-tertiary)}.ods-workflow-header__status-dot--active{background:var(--ods-status-success)}.ods-workflow-header__status-dot--paused{background:var(--ods-status-pending)}.ods-workflow-header__status-dot--error{background:var(--ods-status-failed)}.ods-workflow-header__status-dot--running{background:var(--ods-status-running);animation:ods-workflow-header-pulse 2s ease-in-out infinite}@keyframes ods-workflow-header-pulse{0%,100%{opacity:1}50%{opacity:.55}}@media(prefers-reduced-motion: reduce){.ods-workflow-header__status-dot--running{animation:none}}.ods-workflow-header__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;line-height:1.25;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-tight, -0.01em);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.ods-workflow-header__sep{display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--ods-border-default);opacity:.5;flex-shrink:0;margin:0 2px}.ods-workflow-header__save{display:inline-flex;align-items:center;font-size:var(--ods-font-size-sm);line-height:1.3;white-space:nowrap;user-select:none;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-workflow-header__save--muted{color:var(--ods-text-tertiary)}.ods-workflow-header__save--saving{color:var(--ods-text-tertiary);animation:ods-workflow-header-breathe 1.6s ease-in-out infinite}.ods-workflow-header__save--error{color:var(--ods-status-failed)}@keyframes ods-workflow-header-breathe{0%,100%{opacity:1}50%{opacity:.6}}@media(prefers-reduced-motion: reduce){.ods-workflow-header__save--saving{animation:none}}.ods-workflow-header--sm .ods-workflow-header__save{font-size:var(--ods-font-size-xs)}.ods-workflow-header__right{display:flex;align-items:center;gap:var(--ods-space-2)}.ods-workflow-header__micro-divider{display:inline-block;width:1px;height:14px;background:var(--ods-border-default);opacity:.6;margin:0 var(--ods-space-1);flex-shrink:0}.ods-workflow-header--sm .ods-workflow-header__micro-divider{height:12px}.ods-workflow-header__stop-glyph{color:var(--ods-status-failed)}.ods-workflow-header__stop-label{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-workflow-header__stop-dot{color:var(--ods-text-tertiary);opacity:.6}.ods-workflow-header__runtime{font-variant-numeric:tabular-nums;font-family:var(--ods-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--ods-font-size-xs);color:var(--ods-text-body);letter-spacing:0}.ods-workflow-header__env{border-left-width:3px;border-left-style:solid;border-left-color:var(--ods-border-default);border-top-left-radius:2px;border-bottom-left-radius:2px}.ods-workflow-header__progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;opacity:0;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));background:linear-gradient(90deg, transparent 0%, var(--ods-status-running) 50%, transparent 100%);background-size:200% 100%;background-position:100% 0}.ods-workflow-header[data-running=true] .ods-workflow-header__progress{opacity:.9;animation:ods-workflow-header-progress 1.4s linear infinite}@keyframes ods-workflow-header-progress{0%{background-position:100% 0}100%{background-position:-100% 0}}@media(prefers-reduced-motion: reduce){.ods-workflow-header[data-running=true] .ods-workflow-header__progress{animation:none;background:var(--ods-status-running);opacity:.4}}.ods-workflow-header__menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-workflow-header__menu-trigger:hover,.ods-workflow-header__menu-trigger:focus-visible{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-workflow-header__menu-trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-workflow-header__menu-trigger[aria-expanded=true]{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-workflow-header__menu-icon{display:inline-flex;align-items:center;justify-content:center}.ods-workflow-header-expanded{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-default);position:relative;flex-shrink:0;font-family:var(--ods-font-family-sans);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04)}.ods-workflow-header-expanded__row{display:flex;align-items:center;justify-content:space-between;padding:0 var(--ods-space-4)}.ods-workflow-header-expanded__row--top{height:40px;gap:var(--ods-space-4)}.ods-workflow-header-expanded__row--bottom{height:24px;border-top:1px solid var(--ods-border-default);background:var(--ods-surface-muted)}.ods-workflow-header-expanded__left{display:flex;align-items:center;gap:var(--ods-space-2);min-width:0}.ods-workflow-header-expanded__right{display:flex;align-items:center;gap:var(--ods-space-2)}.ods-workflow-header-expanded__back{display:inline-flex;align-items:center;gap:2px;padding:4px 6px;margin:0;background:rgba(0,0,0,0);border:0;cursor:pointer;color:var(--ods-text-tertiary);font-family:inherit;font-size:var(--ods-font-size-sm);line-height:1;border-radius:var(--ods-radius-1);transition:color 120ms cubic-bezier(0.16, 1, 0.3, 1),background 120ms cubic-bezier(0.16, 1, 0.3, 1)}.ods-workflow-header-expanded__back:hover{color:var(--ods-text-body);background:var(--ods-surface-muted)}.ods-workflow-header-expanded__back-sep{margin-left:4px;color:var(--ods-text-tertiary);opacity:.55}.ods-workflow-header-expanded__dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--ods-text-tertiary)}.ods-workflow-header-expanded__dot--active{background:var(--ods-status-success)}.ods-workflow-header-expanded__dot--paused{background:var(--ods-status-pending)}.ods-workflow-header-expanded__dot--error{background:var(--ods-status-failed)}.ods-workflow-header-expanded__dot--running{background:var(--ods-status-running);animation:ods-workflow-header-expanded-pulse 2s ease-in-out infinite}@keyframes ods-workflow-header-expanded-pulse{0%,100%{opacity:1}50%{opacity:.55}}.ods-workflow-header-expanded__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;line-height:1.25;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-tight, -0.01em);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px}.ods-workflow-header-expanded__meta{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);font-variant-numeric:tabular-nums}.ods-workflow-header-expanded__save--error{color:var(--ods-status-failed)}.ods-workflow-header-expanded__micro-divider{display:inline-block;width:1px;height:14px;background:var(--ods-border-default);opacity:.6;margin:0 var(--ods-space-1)}.ods-workflow-header-expanded__stop-glyph{color:var(--ods-status-failed)}.ods-workflow-header-expanded__runtime{font-variant-numeric:tabular-nums;font-family:var(--ods-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--ods-font-size-xs)}.ods-workflow-header-expanded__env{border-left-width:3px;border-left-style:solid;border-left-color:var(--ods-border-default);border-top-left-radius:2px;border-bottom-left-radius:2px}.ods-workflow-header-expanded__progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;opacity:0;background:linear-gradient(90deg, transparent 0%, var(--ods-status-running) 50%, transparent 100%);background-size:200% 100%;background-position:100% 0;transition:opacity 120ms cubic-bezier(0.16, 1, 0.3, 1)}.ods-workflow-header-expanded[data-running=true] .ods-workflow-header-expanded__progress{opacity:.9;animation:ods-workflow-header-expanded-progress 1.4s linear infinite}@keyframes ods-workflow-header-expanded-progress{0%{background-position:100% 0}100%{background-position:-100% 0}}.ods-actions-drawer{display:flex;flex-direction:column;height:100%;background:var(--ods-surface-canvas);border-right:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans);color:var(--ods-text-body);-webkit-font-smoothing:antialiased}.ods-actions-drawer--closed{width:36px;min-width:36px;align-items:center;justify-content:flex-start;padding-top:var(--ods-space-3)}.ods-actions-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-3) var(--ods-space-2);border-bottom:1px solid var(--ods-border-default)}.ods-actions-drawer__heading{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-actions-drawer__title{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-tight, -0.01em)}.ods-actions-drawer__description{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-actions-drawer__close-btn,.ods-actions-drawer__open-btn{appearance:none;background:rgba(0,0,0,0);border:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-actions-drawer__close-btn:hover,.ods-actions-drawer__open-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-actions-drawer__close-btn:focus-visible,.ods-actions-drawer__open-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-actions-drawer__search{position:relative;padding:var(--ods-space-2) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default)}.ods-actions-drawer__search-icon{position:absolute;left:calc(var(--ods-space-3) + 8px);top:50%;transform:translateY(-50%);color:var(--ods-text-tertiary);pointer-events:none;display:inline-flex}.ods-actions-drawer__search-input{width:100%;height:28px;padding:0 var(--ods-space-3) 0 28px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:inherit;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-actions-drawer__search-input::placeholder{color:var(--ods-text-disabled)}.ods-actions-drawer__search-input:focus{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-actions-drawer__body{flex:1;overflow-y:auto;padding:var(--ods-space-2) 0}.ods-actions-drawer__empty{padding:var(--ods-space-5) var(--ods-space-4);text-align:center;color:var(--ods-text-tertiary)}.ods-actions-drawer__empty-title{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);margin-bottom:4px}.ods-actions-drawer__empty-hint{font-size:var(--ods-font-size-xs)}.ods-actions-drawer__group+.ods-actions-drawer__group{margin-top:var(--ods-space-2)}.ods-actions-drawer__group-header{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;padding:6px var(--ods-space-3);background:rgba(0,0,0,0);border:0;appearance:none;font-family:inherit;font-size:var(--ods-font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ods-text-tertiary);cursor:pointer;text-align:left}.ods-actions-drawer__group-header:hover{color:var(--ods-text-primary)}.ods-actions-drawer__group-header:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-actions-drawer__group-icon{flex:0 0 14px;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:inherit}.ods-actions-drawer__group-icon svg{width:100%;height:100%}.ods-actions-drawer__group-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-actions-drawer__group-count{font-weight:500;font-size:10px;color:var(--ods-text-tertiary);background:var(--ods-surface-muted);border-radius:999px;padding:1px 6px}.ods-actions-drawer__items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.ods-actions-drawer__item{position:relative;display:flex;align-items:flex-start;gap:var(--ods-space-2);padding:8px var(--ods-space-3);cursor:grab;border-left:2px solid rgba(0,0,0,0);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));user-select:none}.ods-actions-drawer__item:hover{background:var(--ods-surface-muted);border-left-color:var(--ods-accent)}.ods-actions-drawer__item:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px;background:var(--ods-surface-muted)}.ods-actions-drawer__item:active{cursor:grabbing}.ods-actions-drawer__item--disabled{opacity:.5;cursor:not-allowed}.ods-actions-drawer__item--disabled:hover{background:rgba(0,0,0,0);border-left-color:rgba(0,0,0,0)}.ods-actions-drawer__item--trigger{border-left-color:var(--ods-status-info, #2563eb)}.ods-actions-drawer__item--trigger .ods-actions-drawer__item-icon{color:var(--ods-status-info, #2563eb)}.ods-actions-drawer__item--action{border-left-color:var(--ods-text-primary, #161616)}.ods-actions-drawer__item--action .ods-actions-drawer__item-icon{color:var(--ods-text-primary)}.ods-actions-drawer__item--condition{border-left-color:var(--ods-status-warning, #d97706)}.ods-actions-drawer__item--condition .ods-actions-drawer__item-icon{color:var(--ods-status-warning, #d97706)}.ods-actions-drawer__item--transform{border-left-color:var(--ods-status-success, #16a34a)}.ods-actions-drawer__item--transform .ods-actions-drawer__item-icon{color:var(--ods-status-success, #16a34a)}.ods-actions-drawer__item-icon{flex:0 0 18px;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;margin-top:1px;color:var(--ods-text-tertiary)}.ods-actions-drawer__item-icon:empty::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ods-text-disabled, #c6c6c6)}.ods-actions-drawer__item-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ods-actions-drawer__item-label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-actions-drawer__item-description{font-size:11px;color:var(--ods-text-tertiary);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-actions-drawer__item-badge{flex:0 0 auto;font-size:10px;font-weight:600;color:var(--ods-accent);background:var(--ods-accent-soft, rgba(79, 70, 229, 0.08));padding:2px 6px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.ods-actions-drawer__footer{border-top:1px solid var(--ods-border-default);padding:var(--ods-space-2) var(--ods-space-3);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-config-panel{position:absolute;top:0;width:320px;height:100%;display:flex;flex-direction:column;z-index:20;background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary)}.ods-config-panel,.ods-config-panel--right{right:0;border-left:1px solid var(--ods-border-default)}.ods-config-panel--left{left:0;border-right:1px solid var(--ods-border-default)}.ods-config-panel__header{display:flex;align-items:center;justify-content:space-between;padding:0 var(--ods-space-4);height:var(--ods-layout-topbar-height);border-bottom:1px solid var(--ods-border-default)}.ods-config-panel__header-left{display:flex;align-items:center;gap:var(--ods-space-2);min-width:0}.ods-config-panel__icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;min-width:24px;border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-config-panel__icon svg{width:14px;height:14px}.ods-config-panel__title{font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-md);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-config-panel__close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-config-panel__close>svg{width:14px;height:14px}.ods-config-panel__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-config-panel__close:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-config-panel__body{flex:1;overflow-y:auto;padding:var(--ods-space-4)}.ods-config-panel__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-4);border-top:1px solid var(--ods-border-default)}.ods-config-panel__btn{height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-md);font-weight:500;cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-config-panel__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-config-panel__btn--cancel{background:var(--ods-surface-canvas);color:var(--ods-text-primary);border-color:var(--ods-border-strong)}.ods-config-panel__btn--cancel:hover{background:var(--ods-surface-muted)}.ods-config-panel__btn--save{background:var(--ods-accent);color:var(--ods-surface-canvas);border-color:var(--ods-accent)}.ods-config-panel__btn--save:hover{background:var(--ods-accent-hover);border-color:var(--ods-accent-hover)}@keyframes ods-console-pulse{0%,100%{opacity:1}50%{opacity:.4}}.ods-console{display:flex;flex-direction:column;overflow:hidden;border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-console__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);height:var(--ods-layout-row-height);padding:0 var(--ods-space-3);cursor:pointer;border-bottom:1px solid var(--ods-border-default);background:var(--ods-surface-subtle)}.ods-console__toggle{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-console__toggle:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-console__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-primary);display:flex;align-items:center;gap:var(--ods-space-2)}.ods-console__status{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:0 var(--ods-space-2);height:18px;border-radius:var(--ods-radius-1);background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1;border:1px solid var(--ods-status-running-bd)}.ods-console__status-dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background-color:var(--ods-status-running);animation:ods-console-pulse 1.2s ease-in-out infinite;flex-shrink:0}.ods-console__status-text{white-space:nowrap}.ods-console__count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-left:auto}.ods-console__actions{display:flex;align-items:center;gap:1px}.ods-console__action{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-console__action:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-console__action:active{background:var(--ods-surface-sunken)}.ods-console__action:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-console__action svg{display:block}.ods-console__action--stop{background:var(--ods-status-failed);color:var(--ods-surface-canvas)}.ods-console__action--stop:hover{background:var(--ods-status-failed-fg);color:var(--ods-surface-canvas)}.ods-console__action-separator{display:inline-block;width:1px;height:14px;margin:0 var(--ods-space-1);background:var(--ods-border-default)}.ods-console__logs{flex:1;overflow-y:auto;padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);line-height:1.6;color:var(--ods-text-body)}.ods-console__empty{padding:var(--ods-space-4);text-align:center;color:var(--ods-text-tertiary);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm)}.ods-console__line{display:flex;gap:var(--ods-space-2);padding:1px var(--ods-space-3);color:var(--ods-text-body);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-console__line:hover{background:var(--ods-surface-muted)}.ods-console__line--error{background:var(--ods-status-failed-bg)}.ods-console__line--warn{background:var(--ods-status-pending-bg)}.ods-console__timestamp{color:var(--ods-text-tertiary);white-space:nowrap;min-width:64px}.ods-console__level{font-weight:600;white-space:nowrap;min-width:48px;text-transform:uppercase}.ods-console__level--info{color:var(--ods-status-running-fg)}.ods-console__level--warn{color:var(--ods-status-pending-fg)}.ods-console__level--error{color:var(--ods-status-failed-fg)}.ods-console__level--debug{color:var(--ods-text-tertiary)}.ods-console__level--success{color:var(--ods-status-success-fg)}.ods-console__message{flex:1;word-break:break-all;color:var(--ods-text-primary)}.ods-console__filters{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);flex-wrap:wrap}.ods-console__search{position:relative;flex:1;min-width:180px;max-width:320px}.ods-console__search-icon{position:absolute;left:8px;top:50%;transform:translateY(-50%);color:var(--ods-text-tertiary);display:inline-flex;pointer-events:none}.ods-console__search-input{width:100%;height:24px;padding:0 var(--ods-space-2) 0 26px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);color:var(--ods-text-primary)}.ods-console__search-input::placeholder{color:var(--ods-text-disabled)}.ods-console__search-input:focus{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-console__level-chips{display:inline-flex;align-items:center;gap:4px}.ods-console__chip{appearance:none;display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 var(--ods-space-2);border:1px solid var(--ods-border-default);border-radius:999px;background:var(--ods-surface-canvas);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-sans);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:all var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-console__chip:hover{color:var(--ods-text-primary)}.ods-console__chip:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-console__chip--active{color:var(--ods-text-primary);border-color:var(--ods-border-strong);background:var(--ods-surface-muted)}.ods-console__chip--info.ods-console__chip--active{border-color:var(--ods-status-running-bd, currentColor)}.ods-console__chip--warn.ods-console__chip--active{border-color:var(--ods-status-pending-bd, currentColor);color:var(--ods-status-pending-fg)}.ods-console__chip--error.ods-console__chip--active{border-color:var(--ods-status-failed-bd, currentColor);color:var(--ods-status-failed-fg)}.ods-console__chip--success.ods-console__chip--active{border-color:var(--ods-status-success-bd, currentColor);color:var(--ods-status-success-fg)}.ods-console__chip--debug.ods-console__chip--active{border-color:var(--ods-border-strong)}.ods-console__chip-count{font-variant-numeric:tabular-nums;color:var(--ods-text-tertiary)}.ods-console__node-select{height:22px;padding:0 var(--ods-space-2);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);color:var(--ods-text-primary);cursor:pointer}.ods-console__node-select:focus-visible{outline:2px solid var(--ods-border-focus)}.ods-console__autoscroll{display:inline-flex;align-items:center;gap:4px;font-family:var(--ods-font-family-sans);font-size:11px;color:var(--ods-text-tertiary);cursor:pointer;margin-left:auto}.ods-console__autoscroll input{margin:0}.ods-console__export-wrap{position:relative;display:inline-flex}.ods-console__export-menu{position:absolute;right:0;top:100%;z-index:10;margin-top:4px;min-width:160px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:0 4px 12px rgba(0,0,0,.08);padding:4px;display:flex;flex-direction:column}.ods-console__export-item{appearance:none;text-align:left;background:rgba(0,0,0,0);border:0;padding:6px 10px;border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);cursor:pointer}.ods-console__export-item:hover{background:var(--ods-surface-muted)}.ods-console__export-item:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-console__line{flex-direction:column;gap:0;padding:0}.ods-console__line-row{display:flex;gap:var(--ods-space-2);padding:1px var(--ods-space-3);align-items:baseline}.ods-console__line-toggle{flex:0 0 16px;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;appearance:none;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1)}.ods-console__line-toggle:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-console__line-toggle--placeholder{cursor:default;pointer-events:none}.ods-console__node-tag{display:inline-block;padding:0 6px;font-size:10px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;color:var(--ods-accent);background:var(--ods-accent-soft, rgba(79, 70, 229, 0.08));border-radius:999px;white-space:nowrap}.ods-console__detail{margin:0;padding:6px var(--ods-space-3) 6px 44px;background:var(--ods-surface-subtle);border-top:1px solid var(--ods-border-default);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1.45;color:var(--ods-text-body);white-space:pre-wrap;word-break:break-all}.ods-console__match{background:var(--ods-accent-soft, rgba(255, 235, 59, 0.4));color:inherit;border-radius:2px;padding:0 1px}.ods-flow-canvas-v2{background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);color:var(--ods-text-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:none}.ods-flow-canvas-v2__grid{position:absolute;inset:0;pointer-events:none;opacity:.55;background-size:var(--ods-flow-grid-size, 20px) var(--ods-flow-grid-size, 20px)}.ods-flow-canvas-v2__grid--dots{background-image:radial-gradient(circle, var(--ods-border-default) 1px, transparent 1px)}.ods-flow-canvas-v2__grid--lines{background-image:linear-gradient(to right, var(--ods-border-default) 1px, transparent 1px),linear-gradient(to bottom, var(--ods-border-default) 1px, transparent 1px);opacity:.45}.ods-flow-canvas-v2__grid--cross{background-image:linear-gradient(to right, var(--ods-border-default) 1px, transparent 1px),linear-gradient(to bottom, var(--ods-border-default) 1px, transparent 1px);background-size:var(--ods-flow-grid-size, 20px) var(--ods-flow-grid-size, 20px);opacity:.35}.ods-flow-canvas-v2__edges{position:absolute;inset:0;overflow:visible}.ods-flow-canvas-v2__empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-sm)}@keyframes ods-flow-edge-flow{from{stroke-dashoffset:20}to{stroke-dashoffset:0}}.ods-flow-node-v2{position:absolute;cursor:pointer;user-select:none;-webkit-user-select:none;overflow:visible}.ods-flow-node-v2--dragging{cursor:grabbing}.ods-flow-node-v2--dragging .ods-flow-base-node{box-shadow:0 8px 24px rgba(0,0,0,.4);opacity:.92}.ods-flow-node-v2--selected .ods-flow-base-node{border-color:var(--ods-accent, #4f46e5);box-shadow:0 0 0 1px var(--ods-accent, #4f46e5),0 4px 16px rgba(0,0,0,.3)}.ods-flow-handle{width:12px;height:12px;display:inline-flex;align-items:center;justify-content:center;cursor:crosshair;z-index:10;pointer-events:all}.ods-flow-handle::before{content:"";position:absolute;inset:-6px}@media(pointer: coarse){.ods-flow-handle::before{inset:-16px}}.ods-flow-handle--disabled{cursor:not-allowed;opacity:.4}.ods-flow-handle--side-left .ods-flow-handle__label,.ods-flow-handle--side-right .ods-flow-handle__label{display:none}.ods-flow-handle__dot{width:12px;height:12px;border-radius:50%;background:var(--ods-surface-default, #ffffff);border:1.5px solid var(--ods-border-strong, #8d8d8d);box-shadow:0 0 0 1px var(--ods-surface-default, #ffffff);transition:background-color 120ms ease-out,border-color 120ms ease-out,transform 120ms ease-out}.ods-flow-handle:hover .ods-flow-handle__dot,.ods-flow-node-v2--connecting .ods-flow-handle--target .ods-flow-handle__dot{background:var(--ods-accent, #4f46e5);border-color:var(--ods-accent, #4f46e5);transform:scale(1.2)}.ods-flow-handle__label{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);font-family:var(--ods-font-family-mono);font-size:9px;font-weight:600;letter-spacing:.04em;color:var(--ods-text-tertiary);text-transform:uppercase;white-space:nowrap;pointer-events:none}.ods-flow-base-node{position:relative;width:368px;background:var(--ods-surface-default, #ffffff);border:1px solid var(--ods-border-default, #e0e0e0);box-shadow:0 1px 2px rgba(0,0,0,.06),0 1px 1px rgba(0,0,0,.04);transition:box-shadow 200ms ease-out,border-color 200ms ease-out;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}.ods-flow-node-v2:hover .ods-flow-base-node{box-shadow:0 4px 16px rgba(0,0,0,.3)}.ods-flow-base-node--accent-blue{--node-accent: var(--ods-status-info, #2563eb)}.ods-flow-base-node--accent-violet{--node-accent: var(--ods-accent, #4f46e5)}.ods-flow-base-node--accent-amber{--node-accent: var(--ods-status-warning, #d97706)}.ods-flow-base-node--accent-green{--node-accent: var(--ods-status-success, #16a34a)}.ods-flow-base-node--accent-red{--node-accent: var(--ods-status-failed, #dc2626)}.ods-flow-base-node--accent-slate{--node-accent: var(--ods-border-strong, #6b7280)}.ods-flow-base-node__pill{position:absolute;top:-18px;left:0;display:inline-flex;align-items:center;width:max-content;max-width:50%;gap:4px;height:18px;padding:0 8px;background:var(--node-accent);color:var(--ods-text-on-color, #ffffff);font-size:11px;font-weight:600;line-height:1;white-space:nowrap;overflow:hidden}.ods-flow-base-node__pill-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;color:inherit}.ods-flow-base-node__pill-icon svg{width:12px;height:12px;shape-rendering:crispEdges}.ods-flow-base-node__pill-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:600}.ods-flow-base-node__pill-badge{flex:0 0 auto;margin-left:4px;padding:1px 4px;font-size:9px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;background:hsla(0,0%,100%,.22);border-radius:2px}.ods-flow-base-node__status{position:absolute;top:8px;right:8px;width:10px;height:10px;border-radius:50%;background:var(--ods-text-tertiary, #6f7785);pointer-events:none;z-index:2}.ods-flow-base-node__status--running{background:var(--ods-status-running, #2563eb);animation:ods-flow-status-pulse 1.2s ease-in-out infinite}.ods-flow-base-node__status--success{background:var(--ods-status-success, #16a34a)}.ods-flow-base-node__status--error{background:var(--ods-status-failed, #da1e28)}.ods-flow-base-node__status--warning{background:var(--ods-status-warning, #d97706)}@keyframes ods-flow-status-pulse{0%,100%{opacity:1}50%{opacity:.4}}.ods-flow-base-node__body{position:relative;padding:16px;min-height:108px;display:flex;flex-direction:column;gap:12px;overflow:hidden}.ods-flow-base-node__content{display:flex;align-items:flex-start;gap:12px}.ods-flow-base-node__bubble{flex:0 0 36px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--ods-surface-subtle, #f4f4f4);border-radius:50%;color:var(--ods-text-primary, #161616)}.ods-flow-base-node__bubble svg{width:18px;height:18px;shape-rendering:crispEdges}.ods-flow-base-node__content-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.ods-flow-base-node__content-title{font-size:16px;font-weight:700;color:var(--ods-text-primary, #161616);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-flow-base-node__content-info{display:flex;align-items:center;gap:6px;min-width:0}.ods-flow-base-node__chip{flex:0 0 auto;display:inline-flex;align-items:center;height:16px;padding:0 6px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ods-text-on-color, #ffffff);background:var(--node-accent, var(--ods-accent, #2563eb));border-radius:2px;line-height:1}.ods-flow-base-node__description{flex:1;min-width:0;font-size:12px;color:var(--ods-text-secondary, #525252);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-flow-base-node__value-chip{flex:0 0 auto;margin-left:auto;display:inline-flex;align-items:center;height:16px;max-width:60%;padding:0 6px;font-size:10px;font-weight:600;font-family:var(--ods-font-family-mono, ui-monospace, monospace);letter-spacing:.02em;color:var(--node-accent, var(--ods-accent, #2563eb));background:color-mix(in srgb, var(--node-accent, var(--ods-accent, #2563eb)) 12%, transparent);border:1px solid color-mix(in srgb, var(--node-accent, var(--ods-accent, #2563eb)) 30%, transparent);border-radius:2px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-flow-base-node__footer{margin-top:auto;padding-top:6px;border-top:1px solid var(--ods-border-default, #2a2e36);font-size:11px;color:var(--ods-text-tertiary, #8d8d8d)}.ods-flow-base-node__delete{position:absolute;right:8px;bottom:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;padding:0;background:rgba(0,0,0,0);border:0;border-radius:4px;color:var(--ods-text-tertiary, #8d8d8d);cursor:pointer;opacity:.6;transition:color 120ms ease,opacity 120ms ease,transform 120ms ease;z-index:2}.ods-flow-base-node__delete:hover,.ods-flow-base-node__delete:focus-visible{color:var(--ods-color-support-error, var(--ods-status-failed, #da1e28));opacity:1;transform:scale(1.1)}.ods-flow-base-node__delete:focus-visible{outline:2px solid var(--ods-border-focus, var(--ods-color-support-error, #da1e28));outline-offset:1px}.ods-flow-base-node__delete:active{transform:scale(0.95)}.ods-flow-group{position:relative;border:1.5px dashed var(--ods-border-strong);border-radius:4px;background:rgba(99,102,241,.03);overflow:visible}.ods-flow-group[data-disabled=true],.ods-flow-foreach[data-disabled=true]{opacity:.55;background-image:repeating-linear-gradient(45deg, transparent 0, transparent 6px, color-mix(in srgb, var(--ods-text-tertiary) 8%, transparent) 6px, color-mix(in srgb, var(--ods-text-tertiary) 8%, transparent) 8px)}.ods-flow-group__disabled-badge,.ods-flow-foreach__disabled-badge{margin-left:6px;padding:1px 6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ods-text-tertiary);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas)}.ods-flow-group__header{position:absolute;top:-10px;left:12px;display:inline-flex;align-items:center;gap:6px;padding:2px 10px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:999px;font-size:11px;font-weight:600;color:var(--ods-text-primary)}.ods-flow-group__chevron{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;background:rgba(0,0,0,0);border:0;color:var(--ods-text-tertiary);cursor:pointer;line-height:1;border-radius:2px;transition:background-color 120ms ease-out,color 120ms ease-out}.ods-flow-group__chevron:hover{background:var(--ods-surface-subtle, rgba(0, 0, 0, 0.06));color:var(--ods-text-primary)}.ods-flow-group__chevron:focus-visible{outline:2px solid var(--ods-accent, #4f46e5);outline-offset:1px}.ods-flow-group__count{display:inline-flex;align-items:center;height:16px;padding:0 6px;margin-left:6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ods-accent);background:var(--ods-accent-soft, rgba(79, 70, 229, 0.1));border-radius:8px}.ods-flow-foreach{position:relative;border:1.5px dashed var(--ods-status-warning, #d97706);border-radius:4px;background:rgba(217,119,6,.04);overflow:visible}.ods-flow-foreach__header{position:absolute;top:-10px;left:12px;display:inline-flex;align-items:center;gap:6px;padding:2px 10px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:999px;font-size:11px;font-weight:600;color:var(--ods-text-primary)}.ods-flow-foreach__chevron{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;background:rgba(0,0,0,0);border:0;color:var(--ods-text-tertiary);cursor:pointer;line-height:1;border-radius:2px;transition:background-color 120ms ease-out,color 120ms ease-out}.ods-flow-foreach__chevron:hover{background:var(--ods-surface-subtle, rgba(0, 0, 0, 0.06));color:var(--ods-text-primary)}.ods-flow-foreach__chevron:focus-visible{outline:2px solid var(--ods-accent, #4f46e5);outline-offset:1px}.ods-flow-foreach__icon{font-size:12px;color:var(--ods-status-warning, #d97706);line-height:1}.ods-flow-foreach__count{display:inline-flex;align-items:center;height:16px;padding:0 6px;margin-left:6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ods-status-warning, #d97706);background:rgba(217,119,6,.12);border-radius:8px}.ods-flow-foreach__iterator{margin-left:4px;padding:1px 6px;background:var(--ods-surface-muted);border-radius:4px;font-family:var(--ods-font-family-mono);font-weight:500;font-size:10px;color:var(--ods-text-body)}.ods-flow-sticky{position:relative;background:#fff8c4;border:1px solid rgba(0,0,0,.08);border-radius:4px;box-shadow:1px 1px 2px rgba(0,0,0,.06),inset 0 0 0 1px hsla(0,0%,100%,.6);padding:12px 14px;font-family:var(--ods-font-family-sans);color:#44391f}.ods-flow-sticky__title{font-size:13px;font-weight:600;margin-bottom:4px;letter-spacing:.01em}.ods-flow-sticky__body{font-size:12px;line-height:1.45;white-space:pre-wrap}.ods-flow-group__subtitle{color:var(--ods-text-tertiary);font-weight:400}.ods-flow-edge-v2{cursor:pointer}.ods-flow-edge-v2__chrome{width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:6px;pointer-events:none}.ods-flow-edge-v2__delete-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:50%;color:var(--ods-text-tertiary);cursor:pointer;pointer-events:auto;transition:background-color 120ms ease-out,border-color 120ms ease-out,color 120ms ease-out}.ods-flow-edge-v2__delete-btn:hover{background:var(--ods-status-failed, #dc2626);border-color:var(--ods-status-failed, #dc2626);color:var(--ods-surface-canvas)}.ods-flow-edge-v2__delete-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-flow-edge-v2__label-chip{appearance:none;display:inline-flex;align-items:center;height:22px;max-width:200px;padding:0 10px;margin:0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:11px;font-family:var(--ods-font-family-mono);font-size:11px;font-weight:500;letter-spacing:.02em;color:var(--ods-text-body);white-space:nowrap;overflow:hidden;user-select:none;cursor:pointer;pointer-events:auto;transition:background-color 120ms ease-out,border-color 120ms ease-out,color 120ms ease-out}.ods-flow-edge-v2__label-chip:hover{background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-flow-edge-v2__label-chip:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-flow-edge-v2__label-chip>span{overflow:hidden;text-overflow:ellipsis}.ods-flow-edge-v2__label-input{appearance:none;width:160px;height:24px;padding:0 10px;margin:0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-focus, var(--ods-accent));border-radius:12px;font-family:var(--ods-font-family-mono);font-size:11px;font-weight:500;letter-spacing:.02em;color:var(--ods-text-primary);outline:none;box-shadow:0 0 0 2px var(--ods-accent-soft, rgba(79, 70, 229, 0.18));text-align:center;pointer-events:auto}.ods-flow-edge-v2__delete{cursor:pointer;pointer-events:all;color:var(--ods-text-tertiary)}.ods-flow-edge-v2__delete-bg{fill:var(--ods-surface-canvas);stroke:var(--ods-border-default);stroke-width:1}.ods-flow-edge-v2__delete:hover .ods-flow-edge-v2__delete-bg{fill:var(--ods-status-failed);stroke:var(--ods-status-failed)}.ods-flow-edge-v2__delete:hover{color:var(--ods-surface-canvas)}.ods-flow-config-panel{position:relative;display:flex;flex-direction:column;height:100%;background:var(--ods-surface-canvas);border-left:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans);color:var(--ods-text-body);-webkit-font-smoothing:antialiased}.ods-flow-config-panel--floating{border:1px solid var(--ods-border-default);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.08);margin:12px;height:calc(100% - 24px)}.ods-flow-config-panel__resize{position:absolute;left:-4px;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:2}.ods-flow-config-panel__resize:hover{background:var(--ods-accent-soft, rgba(79, 70, 229, 0.12))}.ods-flow-config-panel__header{display:flex;flex-direction:column;padding:16px 20px;background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-subtle, var(--ods-border-default));flex-shrink:0}.ods-flow-config-panel__header-actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.ods-flow-config-panel__title-row{display:flex;align-items:center;gap:8px;min-width:0}.ods-flow-config-panel__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 18px;color:var(--ods-text-tertiary)}.ods-flow-config-panel__title{appearance:none;border:0;background:rgba(0,0,0,0);padding:0;margin:0;flex:1;min-width:0;font-family:inherit;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);text-align:left;cursor:text;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-flow-config-panel__title:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-radius:4px}.ods-flow-config-panel__title-input{flex:1;min-width:0;height:24px;padding:0 6px;border:1px solid var(--ods-border-focus, var(--ods-accent));border-radius:4px;background:var(--ods-surface-canvas);font-family:inherit;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);outline:none;box-shadow:0 0 0 2px var(--ods-accent-soft, rgba(79, 70, 229, 0.18))}.ods-flow-config-panel__close{appearance:none;background:rgba(0,0,0,0);border:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer}.ods-flow-config-panel__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-flow-config-panel__close:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-flow-config-panel__tabs{display:flex;gap:2px;padding:0 20px;background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-subtle, var(--ods-border-default));overflow-x:auto;flex-shrink:0}.ods-flow-config-panel__tab{appearance:none;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;background:rgba(0,0,0,0);border:0;border-bottom:2px solid rgba(0,0,0,0);color:var(--ods-text-tertiary);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:color 120ms ease-out,border-color 120ms ease-out;white-space:nowrap}.ods-flow-config-panel__tab:hover{color:var(--ods-text-primary)}.ods-flow-config-panel__tab:disabled{opacity:.5;cursor:not-allowed}.ods-flow-config-panel__tab:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-flow-config-panel__tab--active{color:var(--ods-text-primary);border-bottom-color:var(--ods-accent)}.ods-flow-config-panel__tab-badge{font-size:10px;font-weight:600;padding:1px 5px;border-radius:8px;background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-flow-config-panel__tab--active .ods-flow-config-panel__tab-badge{background:var(--ods-accent-soft, rgba(79, 70, 229, 0.1));color:var(--ods-accent)}.ods-flow-config-panel__banner{padding:10px 20px;border-bottom:1px solid var(--ods-border-default);background:var(--ods-surface-subtle);font-size:var(--ods-font-size-xs);color:var(--ods-text-body)}.ods-flow-config-panel__body{flex:1;overflow-y:auto;padding:20px;font-size:var(--ods-font-size-sm);line-height:1.5;background:var(--ods-surface-muted)}.ods-flow-config-panel__footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--ods-border-subtle, var(--ods-border-default));background:var(--ods-surface-muted);flex-shrink:0}.ods-flow-config-panel__save-state{display:inline-flex;align-items:center;gap:6px;margin-right:auto;font-size:11px;font-weight:500;color:var(--ods-text-tertiary)}.ods-flow-config-panel__save-state--dirty{color:var(--ods-status-warning, #d97706)}.ods-flow-config-panel__save-state--saving{color:var(--ods-status-running, #2563eb)}.ods-flow-config-panel__save-state--saved{color:var(--ods-status-success, #16a34a)}.ods-flow-config-panel__save-state--error{color:var(--ods-status-failed, #dc2626)}.ods-flow-config-panel__save-dot{width:8px;height:8px;border-radius:50%}.ods-flow-config-panel__footer-actions{display:inline-flex;align-items:center;gap:8px}.ods-flow-config-panel__btn{appearance:none;height:28px;padding:0 12px;border-radius:var(--ods-radius-1);font-family:inherit;font-size:12px;font-weight:500;cursor:pointer;transition:background-color 120ms ease-out,color 120ms ease-out,border-color 120ms ease-out,opacity 120ms ease-out}.ods-flow-config-panel__btn:disabled{opacity:.5;cursor:not-allowed}.ods-flow-config-panel__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-flow-config-panel__btn--ghost{background:rgba(0,0,0,0);border:1px solid var(--ods-border-strong);color:var(--ods-text-body)}.ods-flow-config-panel__btn--ghost:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-flow-config-panel__btn--primary{background:var(--ods-accent);border:1px solid var(--ods-accent);color:var(--ods-surface-canvas)}.ods-flow-config-panel__btn--primary:hover:not(:disabled){filter:brightness(1.05)}.ods-node-toolbar{position:absolute;z-index:50;display:inline-flex;pointer-events:auto}.ods-node-toolbar__inner{display:inline-flex;align-items:center;gap:4px;padding:4px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.08)}.ods-node-toolbar__inner button{appearance:none;display:inline-flex;align-items:center;justify-content:center;height:24px;padding:0 8px;background:rgba(0,0,0,0);border:0;border-radius:4px;font-family:var(--ods-font-family-sans);font-size:12px;color:var(--ods-text-body);cursor:pointer}.ods-node-toolbar__inner button:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-node-toolbar__inner button:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-banner{display:flex;align-items:center;gap:var(--ods-space-3);border-radius:var(--ods-radius-1);border:1px solid rgba(0,0,0,0);width:100%;font-family:var(--ods-font-family-sans);padding:var(--ods-space-3) var(--ods-space-4)}.ods-banner--sm{gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3)}.ods-banner--sm .ods-banner__icon{width:14px;height:14px}.ods-banner--sm .ods-banner__title{font-size:var(--ods-font-size-sm)}.ods-banner--sm .ods-banner__description{font-size:var(--ods-font-size-xs)}.ods-banner--lg{gap:var(--ods-space-4);padding:var(--ods-space-4) var(--ods-space-5)}.ods-banner--lg .ods-banner__icon{width:22px;height:22px}.ods-banner--lg .ods-banner__title{font-size:var(--ods-font-size-lg)}.ods-banner--lg .ods-banner__description{font-size:var(--ods-font-size-md)}.ods-banner__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px}.ods-banner__icon>svg{width:100%;height:100%}.ods-banner__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-banner__title{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-banner__description{font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-snug)}.ods-banner__action{flex-shrink:0}.ods-banner__dismiss{flex-shrink:0;width:24px;height:24px;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--ods-duration-instant) var(--ods-ease-out),color var(--ods-duration-instant) var(--ods-ease-out)}.ods-banner__dismiss:hover{background:rgba(0,0,0,.06);color:var(--ods-text-primary)}.ods-banner__dismiss:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-banner--info{background:var(--ods-status-running-bg);border-color:var(--ods-status-running-bd)}.ods-banner--info .ods-banner__icon{color:var(--ods-status-running-fg)}.ods-banner--success{background:var(--ods-status-success-bg);border-color:var(--ods-status-success-bd)}.ods-banner--success .ods-banner__icon{color:var(--ods-status-success-fg)}.ods-banner--warning{background:var(--ods-status-pending-bg);border-color:var(--ods-status-pending-bd)}.ods-banner--warning .ods-banner__icon{color:var(--ods-status-pending-fg)}.ods-banner--error{background:var(--ods-status-failed-bg);border-color:var(--ods-status-failed-bd)}.ods-banner--error .ods-banner__icon{color:var(--ods-status-failed-fg)}.ods-banner--promo{background:var(--ods-accent-soft);border-color:var(--ods-accent)}.ods-banner--promo .ods-banner__icon{color:var(--ods-accent-strong)}.ods-banner--neutral{background:var(--ods-status-idle-bg);border-color:var(--ods-status-idle-bd)}.ods-banner--neutral .ods-banner__icon{color:var(--ods-status-idle-fg)}.ods-banner--outlined{background:var(--ods-surface-canvas)}.ods-banner--subtle{background:var(--ods-surface-canvas);border-color:var(--ods-border-soft)}.ods-banner:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-stat{display:flex;flex-direction:column;gap:var(--ods-space-1);padding:var(--ods-space-4);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-stat:hover{border-color:var(--ods-border-strong)}.ods-stat__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2)}.ods-stat__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary);text-transform:uppercase}.ods-stat__icon{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-stat__icon>svg{fill:currentColor;width:14px;height:14px}.ods-stat__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-2xl);font-weight:500;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-stat__delta{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:500}.ods-stat__delta--up{color:var(--ods-status-success-fg)}.ods-stat__delta--down{color:var(--ods-status-failed-fg)}.ods-stat__delta--neutral{color:var(--ods-text-tertiary)}.ods-stat__delta-arrow{display:inline-flex;align-items:center;justify-content:center}.ods-stat__delta-arrow>svg{color:inherit !important;fill:currentColor;width:10px;height:10px}.ods-stat__delta-suffix{font-weight:400;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs)}.ods-stat__description{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-stat--sm{padding:var(--ods-space-3)}.ods-stat--sm .ods-stat__value{font-size:var(--ods-font-size-xl)}.ods-stat--lg{padding:var(--ods-space-5)}.ods-stat--lg .ods-stat__value{font-size:var(--ods-font-size-3xl)}.ods-chip{display:inline-flex;align-items:center;gap:var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans);font-weight:500;line-height:1;color:var(--ods-text-body);white-space:nowrap;user-select:none;height:22px;font-size:var(--ods-font-size-xs);padding:0 var(--ods-space-2);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-chip--avatar{padding-left:var(--ods-space-1)}.ods-chip__avatar{display:inline-flex;width:16px;height:16px;border-radius:var(--ods-radius-pill);overflow:hidden;align-items:center;justify-content:center;background:var(--ods-accent-soft);color:var(--ods-accent);font-size:9px;font-weight:700;flex-shrink:0}.ods-chip__icon{display:inline-flex;width:12px;height:12px;align-items:center;justify-content:center;color:currentColor;flex-shrink:0}.ods-chip__label{line-height:1}.ods-chip__remove{display:inline-flex;width:14px;height:14px;border:0;background:rgba(0,0,0,0);color:currentColor;opacity:.6;cursor:pointer;align-items:center;justify-content:center;padding:0;border-radius:var(--ods-radius-pill);transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-chip__remove:hover{opacity:1;background:rgba(0,0,0,.08)}.ods-chip__remove:focus-visible{outline:none;opacity:1;box-shadow:var(--ods-focus-ring)}.ods-chip--interactive{cursor:pointer}.ods-chip--interactive:hover:not(.ods-chip--disabled){background:var(--ods-surface-muted);border-color:var(--ods-border-strong)}.ods-chip:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-chip--selected{background:var(--ods-accent-soft);color:var(--ods-accent-strong);border-color:var(--ods-accent)}.ods-chip--selected.ods-chip--interactive:hover:not(.ods-chip--disabled){background:var(--ods-accent-soft);border-color:var(--ods-accent);filter:brightness(0.97)}.ods-chip--disabled{opacity:.5;cursor:not-allowed}.ods-chip--primary{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent)}.ods-chip--success{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-chip--warning{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-chip--error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd)}.ods-chip--sm{height:18px;font-size:10px;padding:0 var(--ods-space-1-5);gap:4px}.ods-chip--sm .ods-chip__avatar{width:14px;height:14px;font-size:8px}.ods-chip--sm .ods-chip__icon,.ods-chip--sm .ods-chip__remove{width:10px;height:10px}.ods-chip--lg{height:28px;font-size:var(--ods-font-size-sm);padding:0 var(--ods-space-2-5);gap:var(--ods-space-1-5)}.ods-chip--lg .ods-chip__avatar{width:20px;height:20px;font-size:11px}.ods-chip--lg .ods-chip__icon{width:14px;height:14px}.ods-chip--lg .ods-chip__remove{width:16px;height:16px}.ods-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-bottom-width:2px;color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1;letter-spacing:var(--ods-tracking-mono);white-space:nowrap}.ods-kbd--sm{min-width:14px;padding:0 4px;font-size:10px}.ods-kbd--lg{min-width:22px;padding:2px var(--ods-space-2);font-size:var(--ods-font-size-sm);border-bottom-width:2px}.ods-kbd-group{display:inline-flex;align-items:center;gap:4px}.ods-kbd-group__item{display:inline-flex;align-items:center;gap:4px}.ods-kbd-group__sep{color:var(--ods-text-tertiary);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500}.ods-callout{display:flex;align-items:flex-start;border-radius:var(--ods-radius-1);border-left:3px solid;background:var(--ods-surface-subtle);font-family:var(--ods-font-family-sans);gap:var(--ods-space-3);padding:var(--ods-space-3) var(--ods-space-4)}.ods-callout--sm{gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3)}.ods-callout--sm .ods-callout__title{font-size:var(--ods-font-size-sm)}.ods-callout--sm .ods-callout__content{font-size:var(--ods-font-size-xs)}.ods-callout--sm .ods-callout__icon{width:14px;height:14px}.ods-callout--lg{gap:var(--ods-space-4);padding:var(--ods-space-4) var(--ods-space-5)}.ods-callout--lg .ods-callout__title{font-size:var(--ods-font-size-lg)}.ods-callout--lg .ods-callout__content{font-size:var(--ods-font-size-md)}.ods-callout--lg .ods-callout__icon{width:20px;height:20px}.ods-callout__icon{display:inline-flex;width:16px;height:16px;align-items:center;justify-content:center;color:currentColor;flex-shrink:0;margin-top:2px}.ods-callout__icon>svg{width:100%;height:100%}.ods-callout__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-callout__title{font-size:var(--ods-font-size-base);font-weight:600;color:var(--ods-text-primary)}.ods-callout__content{font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-callout__dismiss{flex-shrink:0;width:22px;height:22px;margin-top:-2px;margin-right:-4px;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-callout__dismiss:hover{background:rgba(0,0,0,.06);color:var(--ods-text-primary)}.ods-callout__dismiss:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-callout--tip{background:var(--ods-accent-soft);border-left-color:var(--ods-accent)}.ods-callout--tip .ods-callout__icon{color:var(--ods-accent-strong)}.ods-callout--info{background:var(--ods-status-running-bg);border-left-color:var(--ods-status-running)}.ods-callout--info .ods-callout__icon{color:var(--ods-status-running-fg)}.ods-callout--warning{background:var(--ods-status-pending-bg);border-left-color:var(--ods-status-pending)}.ods-callout--warning .ods-callout__icon{color:var(--ods-status-pending-fg)}.ods-callout--danger{background:var(--ods-status-failed-bg);border-left-color:var(--ods-status-failed)}.ods-callout--danger .ods-callout__icon{color:var(--ods-status-failed-fg)}.ods-callout--success{background:var(--ods-status-success-bg);border-left-color:var(--ods-status-success)}.ods-callout--success .ods-callout__icon{color:var(--ods-status-success-fg)}.ods-callout--neutral{background:var(--ods-status-idle-bg);border-left-color:var(--ods-status-idle)}.ods-callout--neutral .ods-callout__icon{color:var(--ods-status-idle-fg)}.ods-quote{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4) var(--ods-space-4) var(--ods-space-4) var(--ods-space-5);border-left:3px solid var(--ods-accent);border-radius:var(--ods-radius-1);background:var(--ods-surface-subtle);font-family:var(--ods-font-family-sans);margin:0}.ods-quote__mark{position:absolute;top:var(--ods-space-1);left:var(--ods-space-3);font-size:var(--ods-font-size-2xl);font-family:var(--ods-font-family-serif);color:var(--ods-accent-border);line-height:1;pointer-events:none}.ods-quote__text{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-md);line-height:var(--ods-line-height-base);color:var(--ods-text-primary);font-style:italic}.ods-quote__footer{display:flex;align-items:center;gap:var(--ods-space-1);font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-quote__author{font-family:var(--ods-font-family-sans);font-weight:600;font-style:normal;color:var(--ods-text-primary)}.ods-quote__attribution{color:var(--ods-text-tertiary)}.ods-quote--muted{background:var(--ods-surface-muted);border-left-color:var(--ods-text-tertiary)}.ods-quote--muted .ods-quote__mark{color:var(--ods-border-strong)}.ods-quote--primary{background:var(--ods-accent-soft);border-left-color:var(--ods-accent)}.ods-quote--sm{padding:var(--ods-space-3) var(--ods-space-3) var(--ods-space-3) var(--ods-space-4)}.ods-quote--sm .ods-quote__text{font-size:var(--ods-font-size-sm)}.ods-quote--sm .ods-quote__mark{font-size:var(--ods-font-size-xl);top:2px}.ods-quote--lg{padding:var(--ods-space-6) var(--ods-space-6) var(--ods-space-6) var(--ods-space-7)}.ods-quote--lg .ods-quote__text{font-size:var(--ods-font-size-lg);line-height:var(--ods-line-height-base)}.ods-quote--lg .ods-quote__mark{font-size:var(--ods-font-size-3xl);top:var(--ods-space-1);left:var(--ods-space-4)}.ods-icon-card{display:flex;font-family:var(--ods-font-family-sans);gap:var(--ods-space-3);padding:var(--ods-space-4)}.ods-icon-card--vertical{flex-direction:column;align-items:flex-start}.ods-icon-card--vertical .ods-icon-card__action{margin-top:var(--ods-space-1)}.ods-icon-card--horizontal{flex-direction:row;align-items:center}.ods-icon-card--horizontal .ods-icon-card__body{flex:1 1 auto}.ods-icon-card__icon{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);flex-shrink:0}.ods-icon-card__icon>svg{width:16px;height:16px;color:inherit !important;fill:currentColor}.ods-icon-card__body{display:flex;flex-direction:column;gap:var(--ods-space-1);min-width:0}.ods-icon-card__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-icon-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-icon-card__action{flex-shrink:0}.ods-icon-card--disabled{cursor:not-allowed}.ods-icon-card--default .ods-icon-card__icon{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-icon-card--primary .ods-icon-card__icon{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-icon-card--success .ods-icon-card__icon{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-icon-card--warning .ods-icon-card__icon{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-icon-card--error .ods-icon-card__icon{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-icon-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-icon-card--sm .ods-icon-card__icon{width:22px;height:22px}.ods-icon-card--sm .ods-icon-card__icon>svg{width:12px;height:12px}.ods-icon-card--sm .ods-icon-card__title{font-size:var(--ods-font-size-sm)}.ods-icon-card--sm .ods-icon-card__description{font-size:var(--ods-font-size-xs)}.ods-icon-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-icon-card--lg .ods-icon-card__icon{width:36px;height:36px}.ods-icon-card--lg .ods-icon-card__icon>svg{width:20px;height:20px}.ods-icon-card--lg .ods-icon-card__title{font-size:var(--ods-font-size-lg)}.ods-icon-card--lg .ods-icon-card__description{font-size:var(--ods-font-size-md)}.ods-dl{margin:0;padding:0;border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans);overflow:hidden}.ods-dl__row{display:flex;align-items:flex-start;padding:var(--ods-space-2) var(--ods-space-3);gap:var(--ods-space-3)}.ods-dl__label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);flex-shrink:0;min-width:100px}.ods-dl__value{margin:0;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);line-height:var(--ods-line-height-snug);flex:1 1 auto;min-width:0}.ods-dl--stacked .ods-dl__row{flex-direction:column;align-items:stretch;gap:var(--ods-space-1)}.ods-dl--divided .ods-dl__row+.ods-dl__row{border-top:1px solid var(--ods-border-soft)}.ods-dl--sm .ods-dl__row{padding:var(--ods-space-1) var(--ods-space-2)}.ods-dl--sm .ods-dl__label,.ods-dl--sm .ods-dl__value{font-size:var(--ods-font-size-xs)}.ods-dl--lg .ods-dl__row{padding:var(--ods-space-3) var(--ods-space-4)}.ods-dl--lg .ods-dl__label{font-size:var(--ods-font-size-sm)}.ods-dl--lg .ods-dl__value{font-size:var(--ods-font-size-md)}.ods-ribbon{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:22px;padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);white-space:nowrap;border:1px solid rgba(0,0,0,0)}.ods-ribbon__icon{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;flex-shrink:0}.ods-ribbon__icon>svg{color:inherit !important;fill:currentColor;width:100%;height:100%}.ods-ribbon__label{text-transform:uppercase}.ods-ribbon--case-normal .ods-ribbon__label{text-transform:none;letter-spacing:0}.ods-ribbon--primary{background:var(--ods-accent);border-color:var(--ods-accent)}.ods-ribbon--success{background:var(--ods-status-success);border-color:var(--ods-status-success)}.ods-ribbon--warning{background:var(--ods-status-pending);border-color:var(--ods-status-pending)}.ods-ribbon--error{background:var(--ods-status-failed);border-color:var(--ods-status-failed)}.ods-ribbon--neutral{background:var(--ods-text-tertiary);border-color:var(--ods-text-tertiary)}.ods-ribbon--sm{height:18px;padding:0 var(--ods-space-1);font-size:10px;gap:4px}.ods-ribbon--sm .ods-ribbon__icon{width:10px;height:10px}.ods-ribbon--lg{height:28px;padding:0 var(--ods-space-3);font-size:var(--ods-font-size-sm);gap:var(--ods-space-2)}.ods-ribbon--lg .ods-ribbon__icon{width:14px;height:14px}.ods-link-btn{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans);font-weight:500;text-decoration:none;cursor:pointer;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));outline:none}.ods-link-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-link-btn__icon{display:inline-flex;align-items:center;justify-content:center;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-link-btn__label{line-height:1.2}.ods-link-btn:hover .ods-link-btn__icon--right{transform:translateX(2px)}.ods-link-btn:hover .ods-link-btn__icon--left{transform:translateX(-2px)}.ods-link-btn--underline:hover .ods-link-btn__label{text-decoration:underline}.ods-link-btn--primary{color:var(--ods-accent)}.ods-link-btn--primary:hover{color:var(--ods-accent-hover)}.ods-link-btn--neutral{color:var(--ods-text-body)}.ods-link-btn--neutral:hover{color:var(--ods-text-primary)}.ods-link-btn--danger{color:var(--ods-status-failed-fg)}.ods-link-btn--danger:hover{color:var(--ods-status-failed)}.ods-link-btn--sm{font-size:var(--ods-font-size-sm)}.ods-link-btn--sm .ods-link-btn__icon{width:12px;height:12px}.ods-link-btn--md{font-size:var(--ods-font-size-md)}.ods-link-btn--md .ods-link-btn__icon{width:14px;height:14px}.ods-link-btn--lg{font-size:var(--ods-font-size-lg)}.ods-link-btn--lg .ods-link-btn__icon{width:16px;height:16px}.ods-link-btn__icon>svg{width:100%;height:100%}.ods-link-btn--disabled{color:var(--ods-text-disabled);cursor:not-allowed}.ods-link-btn--disabled:hover{color:var(--ods-text-disabled)}.ods-link-btn--disabled:hover .ods-link-btn__icon--right,.ods-link-btn--disabled:hover .ods-link-btn__icon--left{transform:none}.ods-toggle-field{display:flex;flex-direction:column;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans)}.ods-toggle-field__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-toggle-field__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-toggle-field__hint--error{color:var(--ods-status-failed-fg)}.ods-toggle-field--error .ods-toggle{border-color:var(--ods-status-failed)}.ods-toggle-field--disabled .ods-toggle__label{color:var(--ods-text-tertiary)}.ods-toggle{display:inline-flex;padding:1px;gap:1px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-toggle--full{display:flex;width:100%}.ods-toggle__opt{display:inline-flex;align-items:center;justify-content:center;gap:var(--ods-space-1);height:26px;padding:0 var(--ods-space-3);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-tertiary);cursor:pointer;flex:1 1 auto;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-toggle__opt:hover:not(.ods-toggle__opt--active):not(:disabled){color:var(--ods-text-primary)}.ods-toggle__opt:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-2px}.ods-toggle__opt:disabled{color:var(--ods-text-tertiary);cursor:not-allowed;pointer-events:auto;opacity:.6}.ods-toggle__opt--active{background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-weight:600;box-shadow:var(--ods-shadow-1, 0 1px 2px rgba(0, 0, 0, 0.08))}.ods-toggle__icon{display:inline-flex;width:14px;height:14px;align-items:center;justify-content:center}.ods-toggle__icon>svg{color:inherit !important;fill:currentColor}.ods-toggle--sm .ods-toggle__opt{height:22px;padding:0 var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-toggle--lg .ods-toggle__opt{height:34px;padding:0 var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-num{display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-num__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-num__field{display:flex;height:var(--ods-layout-control-height);align-items:stretch;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);overflow:hidden;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-num__field:focus-within{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-num__step{width:28px;display:inline-flex;align-items:center;justify-content:center;border:0;background:var(--ods-surface-muted);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-num__step:hover:not(:disabled){background:var(--ods-surface-sunken);color:var(--ods-text-primary)}.ods-num__step:disabled{opacity:.4;cursor:not-allowed}.ods-num__step--dec{border-right:1px solid var(--ods-border-default)}.ods-num__step--inc{border-left:1px solid var(--ods-border-default)}.ods-num__step>svg{width:14px;height:14px}.ods-num__prefix,.ods-num__suffix{display:inline-flex;align-items:center;padding:0 var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);background:rgba(0,0,0,0)}.ods-num__input{flex:1 1 auto;min-width:0;padding:0 var(--ods-space-3);border:0;background:rgba(0,0,0,0);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-primary);text-align:center;outline:none}.ods-num__input::-webkit-outer-spin-button,.ods-num__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ods-num__input[type=number]{-moz-appearance:textfield}.ods-num__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-num__hint--error{color:var(--ods-status-failed-fg)}.ods-num--error .ods-num__field{border-color:var(--ods-status-failed)}.ods-num--disabled .ods-num__field{background:var(--ods-surface-muted);opacity:1}.ods-num--disabled .ods-num__field .ods-num__input{color:var(--ods-text-disabled)}.ods-num--sm .ods-num__field{height:var(--ods-layout-control-height-sm)}.ods-num--sm .ods-num__step{width:24px}.ods-num--sm .ods-num__input{font-size:var(--ods-font-size-sm)}.ods-num--lg .ods-num__field{height:var(--ods-layout-control-height-lg)}.ods-num--lg .ods-num__step{width:36px}.ods-num--lg .ods-num__input{font-size:var(--ods-font-size-md)}.ods-otp{display:flex;flex-direction:column;gap:var(--ods-space-2);font-family:var(--ods-font-family-sans)}.ods-otp__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-otp__row{display:inline-flex;gap:var(--ods-space-2)}.ods-otp__cell{width:36px;height:40px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);text-align:center;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xl);font-weight:500;color:var(--ods-text-primary);background:var(--ods-surface-canvas);outline:none;caret-color:var(--ods-accent);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-otp__cell:focus{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-otp__cell--filled{border-color:var(--ods-accent-border)}.ods-otp__hint{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg)}.ods-otp--disabled .ods-otp__cell{background:var(--ods-surface-muted);color:var(--ods-text-disabled);cursor:not-allowed}.ods-otp--error .ods-otp__cell{border-color:var(--ods-status-failed)}.ods-pwd{display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-pwd__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-pwd__field{display:flex;height:var(--ods-layout-control-height);align-items:center;gap:var(--ods-space-2);padding:0 var(--ods-space-3);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-pwd__field:focus-within{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-pwd__icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-pwd__icon>svg{width:100%;height:100%}.ods-pwd__input{flex:1 1 auto;min-width:0;border:0;outline:none;background:rgba(0,0,0,0);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);font-family:inherit;letter-spacing:1px}.ods-pwd__input:placeholder-shown{letter-spacing:normal}.ods-pwd__toggle{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;flex-shrink:0;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-pwd__toggle:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-pwd__toggle:disabled{opacity:.4;cursor:not-allowed}.ods-pwd__toggle:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-pwd__toggle>svg{width:14px;height:14px}.ods-pwd__strength{display:flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-pwd__meter{flex:1 1 auto;height:4px;border-radius:var(--ods-radius-pill);background:var(--ods-border-default);overflow:hidden}.ods-pwd__bar{display:block;height:100%;border-radius:var(--ods-radius-pill);transition:width var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-pwd__bar--0{width:10%;background:var(--ods-status-failed)}.ods-pwd__bar--1{width:30%;background:var(--ods-status-pending)}.ods-pwd__bar--2{width:55%;background:var(--ods-status-pending)}.ods-pwd__bar--3{width:80%;background:var(--ods-status-success)}.ods-pwd__bar--4{width:100%;background:var(--ods-status-success)}.ods-pwd__strength-label{font-weight:600;white-space:nowrap}.ods-pwd__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-pwd__hint--error{color:var(--ods-status-failed-fg)}.ods-pwd__requirements{list-style:none;margin:var(--ods-space-1) 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.ods-pwd__requirement{display:grid;grid-template-columns:14px 1fr;gap:var(--ods-space-2);align-items:center;min-height:18px;font-size:var(--ods-font-size-xs);line-height:1.3;color:var(--ods-text-body);transition:color var(--ods-duration-base, 200ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-pwd__requirement-dot{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--ods-border-strong);background:var(--ods-surface-canvas);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ods-surface-canvas);transition:background-color var(--ods-duration-base, 200ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-base, 200ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-pwd__requirement-check{opacity:0;transform:scale(0.5);fill:currentColor;transition:opacity var(--ods-duration-fast, 150ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-base, 200ms) cubic-bezier(0.34, 1.56, 0.64, 1)}.ods-pwd__requirement-label{min-width:0}.ods-pwd__requirement--met{color:var(--ods-text-primary)}.ods-pwd__requirement--met .ods-pwd__requirement-dot{background:var(--ods-status-success);border-color:var(--ods-status-success)}.ods-pwd__requirement--met .ods-pwd__requirement-check{opacity:1;transform:scale(1)}@media(prefers-reduced-motion: reduce){.ods-pwd .ods-pwd__requirement,.ods-pwd .ods-pwd__requirement-dot,.ods-pwd .ods-pwd__requirement-check{transition:none}}.ods-pwd--error .ods-pwd__field{border-color:var(--ods-status-failed)}.ods-pwd--disabled .ods-pwd__field{background:var(--ods-surface-muted)}.ods-pwd--sm .ods-pwd__field{height:var(--ods-layout-control-height-sm);padding:0 var(--ods-space-2)}.ods-pwd--lg .ods-pwd__field{height:var(--ods-layout-control-height-lg);padding:0 var(--ods-space-4)}.ods-pwd--lg .ods-pwd__field .ods-pwd__input{font-size:var(--ods-font-size-md)}.ods-rating{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-family:var(--ods-font-family-sans);outline:none}.ods-rating__row{display:inline-flex;align-items:center;gap:2px;color:var(--ods-border-strong);border-radius:var(--ods-radius-1);padding:2px;transition:box-shadow var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-rating:focus-visible .ods-rating__row{box-shadow:0 0 0 2px var(--ods-border-focus)}.ods-rating__item{position:relative;display:inline-flex;align-items:center;justify-content:center;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.34, 1.4, 0.64, 1))}.ods-rating__item>svg{fill:currentColor}.ods-rating--star .ods-rating__item:has([data-slug=star-filled]),.ods-rating--star .ods-rating__item:has([data-slug=star-half]){color:var(--ods-status-pending)}.ods-rating--heart .ods-rating__item:has([data-slug=favorite-filled]),.ods-rating--heart .ods-rating__item:has([data-slug=favorite-half]){color:var(--ods-status-failed)}.ods-rating__hit{position:absolute;top:0;height:100%;width:50%;z-index:1;cursor:pointer}.ods-rating__hit--left{left:0}.ods-rating__hit--right{right:0}.ods-rating__hit--full{left:0;width:100%}.ods-rating--interactive .ods-rating__item:hover{transform:scale(1.1)}.ods-rating--sm .ods-rating__item>svg{width:14px;height:14px}.ods-rating--md .ods-rating__item>svg{width:18px;height:18px}.ods-rating--lg .ods-rating__item>svg{width:24px;height:24px}.ods-rating__label{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary)}.ods-rating--readonly .ods-rating__hit{pointer-events:none}.ods-rating--disabled{opacity:.5;cursor:not-allowed}.ods-rating--disabled .ods-rating__hit{pointer-events:none}@media(prefers-reduced-motion: reduce){.ods-rating .ods-rating__item{transition:none}.ods-rating--interactive .ods-rating__item:hover{transform:none}}.ods-binary-rating{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans)}.ods-binary-rating--icon-text-stack{gap:var(--ods-space-2)}.ods-binary-rating__btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--ods-space-1);min-width:32px;min-height:32px;padding:0 var(--ods-space-2);background:rgba(0,0,0,0);border:0;border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.34, 1.4, 0.64, 1))}.ods-binary-rating__btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-binary-rating__btn:active:not(:disabled){transform:scale(0.92)}.ods-binary-rating__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-binary-rating__btn:disabled{cursor:not-allowed;pointer-events:auto;opacity:.5}.ods-binary-rating__btn--pressed.ods-binary-rating__btn--positive{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-binary-rating__btn--pressed.ods-binary-rating__btn--positive:hover:not(:disabled){background:var(--ods-accent-border)}.ods-binary-rating__btn--pressed.ods-binary-rating__btn--negative{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-binary-rating__btn--pressed.ods-binary-rating__btn--negative:hover:not(:disabled){background:var(--ods-status-failed-bd)}.ods-binary-rating__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ods-binary-rating__icon>svg{color:inherit !important;fill:currentColor}.ods-binary-rating__label{font-size:var(--ods-font-size-sm);font-weight:500;line-height:1}.ods-binary-rating--sm .ods-binary-rating__btn{min-width:28px;min-height:28px;padding:0 var(--ods-space-1)}.ods-binary-rating--sm .ods-binary-rating__icon>svg{width:14px;height:14px}.ods-binary-rating--sm .ods-binary-rating__label{font-size:var(--ods-font-size-xs)}.ods-binary-rating--md .ods-binary-rating__icon>svg{width:16px;height:16px}.ods-binary-rating--lg .ods-binary-rating__btn{min-width:40px;min-height:40px;padding:0 var(--ods-space-3)}.ods-binary-rating--lg .ods-binary-rating__icon>svg{width:20px;height:20px}.ods-binary-rating--lg .ods-binary-rating__label{font-size:var(--ods-font-size-md)}.ods-binary-rating--icon-text-stack .ods-binary-rating__btn{flex-direction:column;gap:4px;min-height:auto;padding:var(--ods-space-2) var(--ods-space-3)}.ods-binary-rating--disabled,.ods-binary-rating--readonly{cursor:not-allowed}.ods-binary-rating--disabled .ods-binary-rating__btn,.ods-binary-rating--readonly .ods-binary-rating__btn{cursor:not-allowed;pointer-events:auto}.ods-binary-rating--disabled{opacity:.5}@media(prefers-reduced-motion: reduce){.ods-binary-rating .ods-binary-rating__btn{transition:none}.ods-binary-rating .ods-binary-rating__btn:active:not(:disabled){transform:none}}.ods-slider{display:flex;flex-direction:column;gap:var(--ods-space-2);width:100%;font-family:var(--ods-font-family-sans)}.ods-slider__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3)}.ods-slider__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-slider__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-accent)}.ods-slider__track{position:relative;height:4px;border-radius:var(--ods-radius-pill);background:var(--ods-border-default)}.ods-slider__fill{position:absolute;top:0;left:0;height:100%;border-radius:var(--ods-radius-pill);background:var(--ods-accent);pointer-events:none;will-change:width}.ods-slider__input{position:absolute;inset:-8px 0;width:100%;height:20px;margin:0;padding:0;background:rgba(0,0,0,0);-webkit-appearance:none;appearance:none;cursor:pointer;opacity:1}.ods-slider__input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);border:2px solid var(--ods-accent);cursor:grab;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));will-change:transform}.ods-slider__input::-moz-range-thumb{width:14px;height:14px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);border:2px solid var(--ods-accent);cursor:grab;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-slider__input:hover::-webkit-slider-thumb{transform:scale(1.12)}.ods-slider__input:hover::-moz-range-thumb{transform:scale(1.12)}.ods-slider__input:active::-webkit-slider-thumb{transform:scale(1.18);cursor:grabbing}.ods-slider__input:active::-moz-range-thumb{transform:scale(1.18);cursor:grabbing}.ods-slider__input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-slider__input:focus-visible::-moz-range-thumb{box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-slider__input:focus,.ods-slider__input:focus-visible{outline:none}.ods-slider__input::-moz-focus-outer{border:0}.ods-slider__input:disabled{cursor:not-allowed}.ods-slider--sm .ods-slider__track{height:3px}.ods-slider--lg .ods-slider__track{height:6px}.ods-slider--success .ods-slider__fill{background:var(--ods-status-success)}.ods-slider--success .ods-slider__input::-webkit-slider-thumb{border-color:var(--ods-status-success)}.ods-slider--success .ods-slider__input::-moz-range-thumb{border-color:var(--ods-status-success)}.ods-slider--success .ods-slider__value{color:var(--ods-status-success-fg)}.ods-slider--warning .ods-slider__fill{background:var(--ods-status-pending)}.ods-slider--warning .ods-slider__input::-webkit-slider-thumb{border-color:var(--ods-status-pending)}.ods-slider--warning .ods-slider__input::-moz-range-thumb{border-color:var(--ods-status-pending)}.ods-slider--warning .ods-slider__value{color:var(--ods-status-pending-fg)}.ods-slider--error .ods-slider__fill{background:var(--ods-status-failed)}.ods-slider--error .ods-slider__input::-webkit-slider-thumb{border-color:var(--ods-status-failed)}.ods-slider--error .ods-slider__input::-moz-range-thumb{border-color:var(--ods-status-failed)}.ods-slider--error .ods-slider__value{color:var(--ods-status-failed-fg)}.ods-slider--disabled{opacity:.5;cursor:not-allowed}.ods-slider--disabled .ods-slider__input{cursor:not-allowed}.ods-slider--error-state .ods-slider__track{background:var(--ods-status-failed-bg)}.ods-slider--error-state .ods-slider__fill{background:var(--ods-status-failed)}.ods-slider--error-state .ods-slider__input::-webkit-slider-thumb{border-color:var(--ods-status-failed)}.ods-slider--error-state .ods-slider__input::-moz-range-thumb{border-color:var(--ods-status-failed)}.ods-slider--error-state .ods-slider__value{color:var(--ods-status-failed-fg)}.ods-slider__marks{position:relative;height:18px;margin-top:4px}.ods-slider__mark{position:absolute;top:0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center}.ods-slider__mark-tick{display:block;width:1px;height:4px;background:var(--ods-border-strong)}.ods-slider__mark-label{margin-top:2px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);white-space:nowrap}.ods-slider__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:2px}.ods-slider__hint--error{color:var(--ods-status-failed-fg)}.ods-range-slider{display:flex;flex-direction:column;gap:var(--ods-space-2);width:100%;font-family:var(--ods-font-family-sans)}.ods-range-slider__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3)}.ods-range-slider__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-range-slider__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-accent)}.ods-range-slider__track{position:relative;height:4px;border-radius:var(--ods-radius-pill);background:var(--ods-border-default)}.ods-range-slider__fill{position:absolute;top:0;height:100%;border-radius:var(--ods-radius-pill);background:var(--ods-accent);pointer-events:none;transition:left var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),right var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-range-slider__input{position:absolute;inset:-8px 0;width:100%;height:20px;margin:0;padding:0;background:rgba(0,0,0,0);-webkit-appearance:none;appearance:none;pointer-events:none}.ods-range-slider__input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);border:2px solid var(--ods-accent);cursor:grab;pointer-events:auto;transition:transform var(--ods-duration-instant, 80ms) var(--ods-ease-spring, cubic-bezier(0.34, 1.4, 0.64, 1)),box-shadow var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));will-change:transform}.ods-range-slider__input::-moz-range-thumb{width:14px;height:14px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);border:2px solid var(--ods-accent);cursor:grab;pointer-events:auto;transition:transform var(--ods-duration-instant, 80ms) var(--ods-ease-spring, cubic-bezier(0.34, 1.4, 0.64, 1)),box-shadow var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-range-slider__input:hover::-webkit-slider-thumb,.ods-range-slider__input:hover::-moz-range-thumb{transform:scale(1.12)}.ods-range-slider__input:active::-webkit-slider-thumb,.ods-range-slider__input:active::-moz-range-thumb{cursor:grabbing;transform:scale(1.18)}.ods-range-slider__input:focus,.ods-range-slider__input:focus-visible{outline:none}.ods-range-slider__input:focus::-webkit-slider-thumb,.ods-range-slider__input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-range-slider__input:focus::-moz-range-thumb,.ods-range-slider__input:focus-visible::-moz-range-thumb{box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-range-slider__input:disabled::-webkit-slider-thumb,.ods-range-slider__input:disabled::-moz-range-thumb{cursor:not-allowed}.ods-range-slider--sm .ods-range-slider__track{height:3px}.ods-range-slider--lg .ods-range-slider__track{height:6px}.ods-range-slider--disabled{opacity:.55;cursor:not-allowed}.ods-range-slider--error .ods-range-slider__track{background:var(--ods-status-failed-bg)}.ods-range-slider--error .ods-range-slider__fill{background:var(--ods-status-failed)}.ods-range-slider--error .ods-range-slider__input::-webkit-slider-thumb{border-color:var(--ods-status-failed)}.ods-range-slider--error .ods-range-slider__input::-moz-range-thumb{border-color:var(--ods-status-failed)}.ods-range-slider__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:2px}.ods-range-slider__hint--error{color:var(--ods-status-failed-fg)}.ods-tags{display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-tags__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-tags__field{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ods-space-1);min-height:var(--ods-layout-control-height);padding:2px var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));cursor:text}.ods-tags__field:focus-within{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-tags__chip{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:2px var(--ods-space-2);background:var(--ods-accent-soft);color:var(--ods-accent);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1.2}.ods-tags__chip-text{line-height:1.2}.ods-tags__chip-x{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:0;background:rgba(0,0,0,0);color:currentColor;opacity:.7;cursor:pointer;border-radius:var(--ods-radius-1)}.ods-tags__chip-x:hover:not(:disabled){opacity:1;background:var(--ods-accent-border)}.ods-tags__chip-x:disabled{opacity:.4;cursor:not-allowed;pointer-events:auto}.ods-tags__chip-x>svg{color:inherit !important;fill:currentColor;width:10px;height:10px}.ods-tags__input{flex:1 1 100px;min-width:80px;border:0;outline:none;background:rgba(0,0,0,0);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);font-family:inherit}.ods-tags__input::placeholder{color:var(--ods-text-tertiary)}.ods-tags__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-tags__hint--error{color:var(--ods-status-failed-fg)}.ods-tags--error .ods-tags__field{border-color:var(--ods-status-failed)}.ods-tags--disabled .ods-tags__field{background:var(--ods-surface-muted)}.ods-tags--sm .ods-tags__field{min-height:var(--ods-layout-control-height-sm);padding:1px var(--ods-space-1)}.ods-tags--sm .ods-tags__chip{font-size:10px;padding:1px var(--ods-space-1)}.ods-tags--sm .ods-tags__input{font-size:var(--ods-font-size-sm)}.ods-tags--lg .ods-tags__field{min-height:var(--ods-layout-control-height-lg);padding:var(--ods-space-1) var(--ods-space-3)}.ods-tags--lg .ods-tags__chip{font-size:var(--ods-font-size-sm);padding:2px var(--ods-space-2)}.ods-tags--lg .ods-tags__input{font-size:var(--ods-font-size-md)}.ods-color{display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-color__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-color__required{margin-left:4px;color:var(--ods-status-failed);font-weight:600}.ods-color__description{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-color__error-message{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed);line-height:var(--ods-line-height-snug)}.ods-color__field{display:flex;align-items:center;gap:var(--ods-space-2);height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-color__field:focus-within{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-color__swatch{width:20px;height:20px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);flex-shrink:0}.ods-color__hex{flex:1 1 auto;min-width:0;border:0;outline:none;background:rgba(0,0,0,0);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase}.ods-color__pick{position:relative;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));overflow:hidden}.ods-color__pick:hover{background:var(--ods-surface-sunken)}.ods-color__pick>svg{width:14px;height:14px}.ods-color__pick input[type=color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;border:0;padding:0;cursor:pointer}.ods-color__swatches{display:flex;gap:var(--ods-space-1);align-items:center}.ods-color__sw{width:20px;height:20px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);cursor:pointer;padding:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-color__sw:hover:not(:disabled){transform:scale(1.1)}.ods-color__sw--active{box-shadow:0 0 0 2px var(--ods-surface-canvas),0 0 0 3px var(--ods-accent);border-color:rgba(0,0,0,0)}.ods-color__sw:disabled{cursor:not-allowed}.ods-color--disabled .ods-color__field{background:var(--ods-surface-muted);color:var(--ods-text-disabled)}.ods-color--error .ods-color__field{border-color:var(--ods-status-failed)}.ods-color--error .ods-color__field:focus-within{border-color:var(--ods-status-failed);outline-color:var(--ods-status-failed)}.ods-color--error .ods-color__label{color:var(--ods-status-failed)}.ods-color--sm .ods-color__field{height:var(--ods-layout-control-height-sm)}.ods-color--sm .ods-color__swatch,.ods-color--sm .ods-color__pick,.ods-color--sm .ods-color__sw{width:16px;height:16px}.ods-color--sm .ods-color__pick>svg{width:11px;height:11px}.ods-color--lg .ods-color__field{height:var(--ods-layout-control-height-lg)}.ods-color--lg .ods-color__swatch,.ods-color--lg .ods-color__pick,.ods-color--lg .ods-color__sw{width:24px;height:24px}.ods-color--lg .ods-color__pick>svg{width:16px;height:16px}.ods-phone{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-phone__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-phone__field{position:relative;display:flex;align-items:stretch;height:var(--ods-layout-control-height);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);overflow:visible;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-phone__field:focus-within{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:-1px}.ods-phone__country{display:inline-flex;align-items:center;gap:var(--ods-space-1);padding:0 var(--ods-space-2);border:0;border-right:1px solid var(--ods-border-default);background:rgba(0,0,0,0);cursor:pointer;font-family:inherit;color:var(--ods-text-primary);font-size:var(--ods-font-size-base);font-weight:500;border-radius:var(--ods-radius-1) 0 0 var(--ods-radius-1);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-phone__country:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-phone__country:disabled{cursor:not-allowed}.ods-phone__flag{font-size:var(--ods-font-size-md);line-height:1}.ods-phone__dial{font-family:var(--ods-font-family-mono);font-weight:500}.ods-phone__chevron{display:inline-flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary);transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-phone__chevron--open{transform:rotate(180deg);color:var(--ods-text-primary)}.ods-phone__input{flex:1 1 auto;min-width:0;padding:0 var(--ods-space-3);border:0;outline:none;background:rgba(0,0,0,0);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-base);color:var(--ods-text-primary)}.ods-phone__input::placeholder{color:var(--ods-text-tertiary)}.ods-phone__menu{position:absolute;top:calc(100% + 4px);left:0;z-index:50;display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);min-width:260px;max-height:280px;overflow:hidden}.ods-phone__search{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3);color:var(--ods-text-tertiary);border-bottom:1px solid var(--ods-border-default);flex-shrink:0}.ods-phone__search-input{flex:1 1 auto;min-width:0;border:0;outline:none;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary)}.ods-phone__search-input::placeholder{color:var(--ods-text-tertiary)}.ods-phone__search-input:focus,.ods-phone__search-input:focus-visible{outline:none;box-shadow:none;border:0}.ods-phone__menu-list{list-style:none;margin:0;padding:var(--ods-space-1);overflow-y:auto;outline:none;flex:1 1 auto}.ods-phone__menu-empty{padding:var(--ods-space-3);text-align:center;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-phone__menu-item{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-phone__menu-item:hover,.ods-phone__menu-item--active{background:var(--ods-surface-muted)}.ods-phone__menu-item--selected{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:500;box-shadow:inset 3px 0 0 var(--ods-accent)}.ods-phone__menu-item--selected.ods-phone__menu-item--active{background:var(--ods-accent-border)}.ods-phone__menu-name{flex:1 1 auto;min-width:0}.ods-phone__menu-dial{color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-weight:500;font-variant-numeric:tabular-nums}.ods-phone__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-phone__hint--error{color:var(--ods-status-failed-fg)}.ods-phone--error .ods-phone__field{border-color:var(--ods-status-failed)}.ods-phone--disabled .ods-phone__field{background:var(--ods-surface-muted);cursor:not-allowed}.ods-phone--disabled .ods-phone__field .ods-phone__country{cursor:not-allowed}.ods-phone--sm .ods-phone__field{height:var(--ods-layout-control-height-sm)}.ods-phone--sm .ods-phone__country{font-size:var(--ods-font-size-sm)}.ods-phone--sm .ods-phone__input{font-size:var(--ods-font-size-sm)}.ods-phone--lg .ods-phone__field{height:var(--ods-layout-control-height-lg)}.ods-phone--lg .ods-phone__input{font-size:var(--ods-font-size-md)}.ods-calendar{display:inline-flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-3);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary)}.ods-calendar--double{flex-direction:row;gap:var(--ods-space-4)}.ods-calendar--double .ods-calendar__panel{width:280px}.ods-calendar__panel{display:flex;flex-direction:column;width:280px}.ods-calendar__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ods-space-2)}.ods-calendar__title{flex:1;text-align:center;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-md);font-weight:500;color:var(--ods-text-primary)}.ods-calendar__title--dropdowns{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-family:var(--ods-font-family-sans)}.ods-calendar__title--dropdowns>*{margin:0}.ods-calendar__nav{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-calendar__nav>svg{width:14px;height:14px}.ods-calendar__nav:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-calendar__nav:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-calendar__nav--placeholder{pointer-events:none;visibility:hidden}.ods-calendar__dow{display:grid;grid-template-columns:repeat(7, 1fr);margin-bottom:var(--ods-space-1)}.ods-calendar__dow-cell{text-align:center;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary);padding:4px 0;text-transform:uppercase}.ods-calendar__grid{display:flex;flex-direction:column}.ods-calendar__row{display:grid;grid-template-columns:repeat(7, 1fr)}.ods-calendar__cell{height:32px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-primary);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);cursor:pointer;width:100%;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-calendar__cell:hover:not(:disabled):not(.ods-calendar__cell--selected){background:var(--ods-surface-muted)}.ods-calendar__cell:focus-visible{outline:none;box-shadow:var(--ods-focus-ring);z-index:1;position:relative}.ods-calendar__cell--outside{color:var(--ods-text-tertiary)}.ods-calendar__cell--today{font-weight:700;color:var(--ods-accent)}.ods-calendar__cell--selected,.ods-calendar__cell--start,.ods-calendar__cell--end{background:var(--ods-accent);color:var(--ods-surface-canvas);font-weight:700}.ods-calendar__cell--inrange{background:var(--ods-accent-soft);color:var(--ods-accent);border-radius:0}.ods-calendar__cell--start{border-radius:var(--ods-radius-1) 0 0 var(--ods-radius-1)}.ods-calendar__cell--end{border-radius:0 var(--ods-radius-1) var(--ods-radius-1) 0}.ods-calendar__cell--start.ods-calendar__cell--end{border-radius:var(--ods-radius-1)}.ods-calendar__cell--disabled{opacity:.4;cursor:not-allowed}.ods-calendar__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);margin-top:var(--ods-space-2);padding-top:var(--ods-space-2);border-top:1px solid var(--ods-border-soft)}.ods-calendar__footer-btn{padding:4px 10px;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-calendar__footer-btn:hover{background:var(--ods-surface-muted)}.ods-calendar__footer-btn:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-calendar__footer-btn--ghost{border-color:rgba(0,0,0,0);background:rgba(0,0,0,0);color:var(--ods-text-secondary)}.ods-datepicker{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-datepicker__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-datepicker__trigger{display:inline-flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-base);text-align:left;cursor:pointer;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-datepicker__trigger:hover{border-color:var(--ods-text-tertiary)}.ods-datepicker__trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-datepicker__trigger>svg:first-child{color:var(--ods-text-tertiary);flex-shrink:0}.ods-datepicker__cal-icon{width:14px;height:14px}.ods-datepicker__chev{width:12px;height:12px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-datepicker__value{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums lining-nums}.ods-datepicker__value--placeholder{color:var(--ods-text-disabled)}.ods-datepicker__required{margin-left:4px;color:var(--ods-status-failed);font-weight:600}.ods-datepicker__popover{position:absolute;top:calc(100% + var(--ods-space-1));left:0;z-index:50;box-shadow:var(--ods-shadow-pop);border-radius:var(--ods-radius-1)}.ods-datepicker__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-datepicker__hint--error{color:var(--ods-status-failed-fg)}.ods-datepicker--error .ods-datepicker__trigger{border-color:var(--ods-status-failed)}.ods-datepicker--disabled .ods-datepicker__trigger{background:var(--ods-surface-muted);color:var(--ods-text-disabled);cursor:not-allowed}.ods-datepicker--sm .ods-datepicker__trigger{height:var(--ods-layout-control-height-sm);font-size:var(--ods-font-size-sm)}.ods-datepicker--lg .ods-datepicker__trigger{height:var(--ods-layout-control-height-lg);font-size:var(--ods-font-size-md)}.ods-timepicker{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-timepicker__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-timepicker__trigger{display:inline-flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-base);text-align:left;cursor:pointer;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-timepicker__trigger>svg:first-child{color:var(--ods-text-tertiary);flex-shrink:0}.ods-timepicker__trigger:hover{border-color:var(--ods-text-tertiary)}.ods-timepicker__trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-timepicker__value{flex:1 1 auto;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-weight:500;letter-spacing:var(--ods-tracking-mono)}.ods-timepicker__trigger-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-timepicker__trigger-icon>svg{color:inherit !important;fill:currentColor}.ods-timepicker__chev{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-timepicker__chev>svg{color:inherit !important;fill:currentColor}.ods-timepicker__chev--open{transform:rotate(180deg);color:var(--ods-text-primary)}.ods-timepicker__popover{position:absolute;top:calc(100% + var(--ods-space-1));left:0;z-index:50;width:280px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);overflow:hidden}.ods-timepicker__head{display:flex;align-items:center;justify-content:space-between;padding:var(--ods-space-2) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default)}.ods-timepicker__display{display:inline-flex;align-items:center;gap:0;font-family:var(--ods-font-family-mono)}.ods-timepicker__seg{border:0;background:rgba(0,0,0,0);padding:2px var(--ods-space-1);border-radius:var(--ods-radius-1);font-family:inherit;font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xl);font-weight:600;color:var(--ods-text-primary);cursor:text;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-timepicker__seg:hover{background:var(--ods-surface-muted)}.ods-timepicker__seg--active,.ods-timepicker__seg:focus-visible{outline:none;background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-timepicker__seg--drafting{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px}.ods-timepicker__display-sep{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xl);font-weight:600;color:var(--ods-text-disabled);padding:0 1px}.ods-timepicker__period{display:inline-flex;padding:1px;gap:0;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-timepicker__period-btn{padding:2px var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:inherit;font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-timepicker__period-btn--active{background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-weight:600}.ods-timepicker__body{display:flex;align-items:center;justify-content:center;gap:var(--ods-space-4);padding:var(--ods-space-3)}.ods-timepicker__col{display:flex;flex-direction:column;align-items:center;gap:var(--ods-space-1)}.ods-timepicker__col-lbl{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-timepicker__col-val{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-2xl);font-weight:500;color:var(--ods-accent);line-height:1;min-width:40px;text-align:center}.ods-timepicker__step{display:inline-flex;align-items:center;justify-content:center;width:24px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-timepicker__step:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-timepicker__step>svg{color:inherit !important;fill:currentColor;width:14px;height:14px}.ods-timepicker__sep{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-2xl);font-weight:500;color:var(--ods-text-disabled);line-height:1}.ods-timepicker__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-timepicker__hint--error{color:var(--ods-status-failed-fg)}.ods-timepicker--error .ods-timepicker__trigger{border-color:var(--ods-status-failed)}.ods-timepicker--disabled .ods-timepicker__trigger{background:var(--ods-surface-muted);color:var(--ods-text-disabled);cursor:not-allowed}.ods-timepicker--sm .ods-timepicker__trigger{height:var(--ods-layout-control-height-sm);font-size:var(--ods-font-size-sm)}.ods-timepicker--lg .ods-timepicker__trigger{height:var(--ods-layout-control-height-lg);font-size:var(--ods-font-size-md)}.ods-tzpicker{position:relative;display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-tzpicker__label{font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-tzpicker__trigger{display:inline-flex;align-items:center;gap:var(--ods-space-2);width:100%;height:var(--ods-layout-control-height);padding:0 var(--ods-space-3);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tzpicker__trigger:hover{border-color:var(--ods-text-tertiary)}.ods-tzpicker__trigger:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:-1px;border-color:var(--ods-border-focus)}.ods-tzpicker__trigger-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-tzpicker__trigger-icon>svg{color:inherit !important;fill:currentColor}.ods-tzpicker__info{flex:1 1 auto;min-width:0;display:flex;align-items:baseline;gap:var(--ods-space-2);overflow:hidden}.ods-tzpicker__name{flex:0 1 auto;min-width:0;font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-tzpicker__name--placeholder{color:var(--ods-text-tertiary);font-weight:400}.ods-tzpicker__meta{flex:0 0 auto;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);white-space:nowrap}.ods-tzpicker__chev{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tzpicker__chev>svg{color:inherit !important;fill:currentColor}.ods-tzpicker__chev--open{transform:rotate(180deg);color:var(--ods-text-primary)}.ods-tzpicker__popover{position:absolute;top:calc(100% + var(--ods-space-1));left:0;z-index:50;width:100%;min-width:320px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);overflow:hidden}.ods-tzpicker__search{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default)}.ods-tzpicker__search input{flex:1 1 auto;min-width:0;border:none;outline:none;background:rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-base);color:var(--ods-text-primary);box-shadow:none;padding:0}.ods-tzpicker__search input::placeholder{color:var(--ods-text-tertiary)}.ods-tzpicker__search input:focus,.ods-tzpicker__search input:focus-visible{outline:none;box-shadow:none;border:none}.ods-tzpicker__search-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-tzpicker__search-icon>svg{color:inherit !important;fill:currentColor}.ods-tzpicker__list{list-style:none;margin:0;padding:var(--ods-space-1);max-height:280px;overflow-y:auto}.ods-tzpicker__opt{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;padding:var(--ods-space-1) var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);font-family:inherit;color:var(--ods-text-primary);cursor:pointer;text-align:left;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tzpicker__opt:hover,.ods-tzpicker__opt--active{background:var(--ods-surface-muted)}.ods-tzpicker__opt--selected{background:var(--ods-accent-soft)}.ods-tzpicker__opt--selected .ods-tzpicker__opt-name,.ods-tzpicker__opt--selected .ods-tzpicker__opt-off{color:var(--ods-accent);font-weight:600}.ods-tzpicker__opt--selected.ods-tzpicker__opt--active{background:var(--ods-accent-soft)}.ods-tzpicker__opt-text{display:flex;flex-direction:column;gap:1px;flex:1 1 auto;min-width:0}.ods-tzpicker__opt-name{font-size:var(--ods-font-size-base);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-tzpicker__opt-iana{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-tzpicker__opt-off{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-body);flex-shrink:0}.ods-tzpicker__opt-check{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--ods-accent);flex-shrink:0}.ods-tzpicker__opt-check>svg{color:inherit !important;fill:currentColor}.ods-tzpicker__empty{list-style:none;padding:var(--ods-space-3);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);text-align:center}.ods-tzpicker__hint{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-tzpicker__hint--error{color:var(--ods-status-failed-fg)}.ods-tzpicker--error .ods-tzpicker__trigger{border-color:var(--ods-status-failed)}.ods-tzpicker--disabled .ods-tzpicker__trigger{background:var(--ods-surface-muted);color:var(--ods-text-tertiary);cursor:not-allowed;pointer-events:auto}.ods-tzpicker--sm .ods-tzpicker__trigger{height:var(--ods-layout-control-height-sm);font-size:var(--ods-font-size-sm)}.ods-tzpicker--lg .ods-tzpicker__trigger{height:var(--ods-layout-control-height-lg);font-size:var(--ods-font-size-md)}.ods-page-header{display:flex;align-items:center;gap:var(--ods-space-5);padding:var(--ods-space-5) var(--ods-space-6);background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-page-header__main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-page-header__crumbs{display:flex;align-items:center;gap:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);margin-bottom:2px}.ods-page-header__crumb{display:inline-flex;align-items:center;gap:var(--ods-space-1);color:inherit}.ods-page-header__crumb a,.ods-page-header__crumb button{color:inherit;text-decoration:none;background:none;border:0;padding:0;cursor:pointer;font:inherit}.ods-page-header__crumb a:hover,.ods-page-header__crumb button:hover{color:var(--ods-text-primary)}.ods-page-header__crumb:last-child a,.ods-page-header__crumb:last-child button,.ods-page-header__crumb:last-child>span{color:var(--ods-text-primary);font-weight:600}.ods-page-header__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-2xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-page-header__description{margin:0;font-size:var(--ods-font-size-base);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-page-header__meta{display:flex;align-items:center;gap:var(--ods-space-3);margin-top:var(--ods-space-1);flex-wrap:wrap}.ods-page-header__actions{display:flex;align-items:center;gap:var(--ods-space-2);flex-shrink:0}.ods-settings-row{display:flex;gap:var(--ods-space-3);width:100%;padding:var(--ods-space-3) var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-settings-row--center{align-items:center}.ods-settings-row--start{align-items:flex-start}.ods-settings-row__icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);flex-shrink:0}.ods-settings-row__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-settings-row__title{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-settings-row__desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-settings-row__control{flex-shrink:0;display:flex;align-items:center}.ods-form-section{display:flex;flex-direction:column;gap:var(--ods-space-4);padding:var(--ods-space-4) var(--ods-space-5);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-form-section__head{display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-form-section__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-tight)}.ods-form-section__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-form-section__body{display:flex;flex-direction:column;gap:var(--ods-space-3)}.ods-form-section__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding-top:var(--ods-space-3)}.ods-form-section--divided .ods-form-section__head{padding-bottom:var(--ods-space-3);border-bottom:1px solid var(--ods-border-default)}.ods-form-section--divided .ods-form-section__footer{border-top:1px solid var(--ods-border-default)}.ods-toolbar{display:inline-flex;align-items:center;gap:1px;padding:2px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-toolbar__btn{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:var(--ods-layout-control-height);padding:0 var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-base);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-toolbar__btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-toolbar__btn:disabled{opacity:.4;cursor:not-allowed}.ods-toolbar__btn--active{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:600}.ods-toolbar__btn-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px}.ods-toolbar__btn-label{line-height:1}.ods-toolbar__divider{width:1px;height:16px;background:var(--ods-border-default);margin:0 2px}.ods-toolbar__spacer{flex:1 1 auto}.ods-drawer{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);overflow:hidden}.ods-drawer__head{display:flex;align-items:center;gap:var(--ods-space-3);padding:var(--ods-space-4) var(--ods-space-5);border-bottom:1px solid var(--ods-border-default)}.ods-drawer__titles{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}.ods-drawer__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-drawer__subtitle{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-drawer__close{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-drawer__close>svg{width:14px;height:14px}.ods-drawer__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-drawer__close:focus-visible{outline:none;box-shadow:var(--ods-focus-ring)}.ods-drawer__body{flex:1 1 auto;overflow-y:auto;padding:var(--ods-space-5);color:var(--ods-text-primary);line-height:var(--ods-line-height-base)}.ods-drawer__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-5);border-top:1px solid var(--ods-border-default)}.ods-user-card{display:flex;gap:var(--ods-space-3);padding:var(--ods-space-5);font-family:var(--ods-font-family-sans)}.ods-user-card--vertical{flex-direction:column;align-items:center;text-align:center}.ods-user-card--vertical .ods-user-card__body{align-items:center}.ods-user-card--vertical .ods-user-card__stats{width:100%;padding-top:var(--ods-space-3);border-top:1px solid var(--ods-border-default);margin-top:var(--ods-space-1)}.ods-user-card--vertical .ods-user-card__action{width:100%}.ods-user-card--horizontal{flex-direction:row;align-items:center}.ods-user-card--horizontal .ods-user-card__body{flex:1 1 auto;min-width:0;align-items:flex-start;text-align:left}.ods-user-card--horizontal .ods-user-card__stats{gap:var(--ods-space-4)}.ods-user-card__avatar{flex-shrink:0}.ods-user-card__avatar--legacy{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--ods-radius-pill);background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-lg);font-weight:600;overflow:hidden}.ods-user-card__avatar--legacy img{width:100%;height:100%;object-fit:cover}.ods-user-card__body{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-user-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-user-card__role{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-user-card__meta{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-user-card__stats{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3)}.ods-user-card__stat{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;gap:1px}.ods-user-card__stat-value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-user-card__stat-label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-user-card__action{flex-shrink:0}.ods-product-card{display:flex;flex-direction:column;overflow:hidden}.ods-product-card__image{width:100%;background:var(--ods-surface-subtle);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-product-card__image>img,.ods-product-card__image>video,.ods-product-card__image>svg{width:100%;height:100%;object-fit:cover;display:block}.ods-product-card__image--aspect-16-9{aspect-ratio:16/9}.ods-product-card__image--aspect-4-3{aspect-ratio:4/3}.ods-product-card__image--aspect-1-1{aspect-ratio:1/1}.ods-product-card__image--aspect-3-4{aspect-ratio:3/4}.ods-product-card__image--aspect-21-9{aspect-ratio:21/9}.ods-product-card--interactive:hover .ods-product-card__image>img,.ods-product-card--interactive:hover .ods-product-card__image>video{transform:scale(1.04)}.ods-product-card__body{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);flex:1 1 auto;min-width:0}.ods-product-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-product-card__tag{align-self:flex-start;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1}.ods-product-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-product-card__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ods-product-card__rating{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-product-card__stars{display:inline-flex;gap:2px;color:var(--ods-status-pending-fg)}.ods-product-card__stars>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-product-card__rating-value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-weight:600;color:var(--ods-text-primary)}.ods-product-card__rating-count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-product-card__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);margin-top:var(--ods-space-2)}.ods-product-card__price-group{display:flex;align-items:baseline;gap:var(--ods-space-1)}.ods-product-card__price{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-product-card__strike{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);text-decoration:line-through}.ods-product-card__action{display:flex;align-items:center}.ods-blog-card{display:flex;flex-direction:column;overflow:hidden}.ods-blog-card__cover{width:100%;background:var(--ods-surface-subtle);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-blog-card__cover>img,.ods-blog-card__cover>video,.ods-blog-card__cover>svg{width:100%;height:100%;object-fit:cover;display:block}.ods-blog-card__cover--aspect-16-9{aspect-ratio:16/9}.ods-blog-card__cover--aspect-4-3{aspect-ratio:4/3}.ods-blog-card__cover--aspect-1-1{aspect-ratio:1/1}.ods-blog-card__cover--aspect-3-4{aspect-ratio:3/4}.ods-blog-card__cover--aspect-21-9{aspect-ratio:21/9}.ods-blog-card--interactive:hover .ods-blog-card__cover>img,.ods-blog-card--interactive:hover .ods-blog-card__cover>video{transform:scale(1.03)}.ods-blog-card__body{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);flex:1 1 auto;min-width:0}.ods-blog-card__meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ods-space-2)}.ods-blog-card__tags{display:inline-flex;flex-wrap:wrap;gap:var(--ods-space-1)}.ods-blog-card__tag{padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1}.ods-blog-card__date,.ods-blog-card__reading{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-blog-card__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-blog-card__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ods-blog-card__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);margin-top:var(--ods-space-2);padding-top:var(--ods-space-3);border-top:1px solid var(--ods-border-soft)}.ods-blog-card__author{display:inline-flex;align-items:center;gap:var(--ods-space-2);min-width:0;flex:1 1 auto}.ods-blog-card__author-text{display:inline-flex;flex-direction:column;min-width:0}.ods-blog-card__author-name{font-size:var(--ods-font-size-sm);font-weight:600;color:var(--ods-text-primary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-blog-card__author-byline{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:1.2}.ods-blog-card__action{flex-shrink:0;font-size:var(--ods-font-size-sm);color:var(--ods-accent);font-weight:500}.ods-blog-card--horizontal{flex-direction:row;align-items:stretch}.ods-blog-card--horizontal .ods-blog-card__cover{width:240px;flex-shrink:0;aspect-ratio:auto}.ods-blog-card--interactive{text-decoration:none;color:inherit}.ods-testimonial{display:flex;flex-direction:column;gap:var(--ods-space-4);padding:var(--ods-space-5);font-family:var(--ods-font-family-sans);margin:0}.ods-testimonial__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ods-space-2)}.ods-testimonial__quote{display:inline-flex;align-items:center;justify-content:center;color:var(--ods-accent-border)}.ods-testimonial__quote>svg{width:28px;height:28px;color:inherit !important;fill:currentColor}.ods-testimonial__logo{display:inline-flex;align-items:center;color:var(--ods-text-tertiary);max-height:28px}.ods-testimonial__logo>svg,.ods-testimonial__logo>img{max-height:28px;width:auto}.ods-testimonial__text{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-lg);color:var(--ods-text-primary);line-height:var(--ods-line-height-base);font-style:italic}.ods-testimonial__rating{display:inline-flex;align-items:center;gap:2px}.ods-testimonial__star{color:var(--ods-border-strong)}.ods-testimonial__star>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-testimonial__star--on{color:var(--ods-status-pending)}.ods-testimonial__author{display:flex;align-items:center;gap:var(--ods-space-3)}.ods-testimonial__avatar{flex-shrink:0}.ods-testimonial__avatar--legacy{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--ods-radius-pill);background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-base);font-weight:600;overflow:hidden}.ods-testimonial__avatar--legacy img{width:100%;height:100%;object-fit:cover}.ods-testimonial__author-info{display:flex;flex-direction:column;gap:1px;min-width:0}.ods-testimonial__author-name{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-testimonial__author-role{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-testimonial--sm{gap:var(--ods-space-3);padding:var(--ods-space-4)}.ods-testimonial--sm .ods-testimonial__text{font-size:var(--ods-font-size-md)}.ods-testimonial--sm .ods-testimonial__quote>svg{width:22px;height:22px}.ods-testimonial--lg{gap:var(--ods-space-5);padding:var(--ods-space-6)}.ods-testimonial--lg .ods-testimonial__text{font-size:var(--ods-font-size-xl)}.ods-testimonial--lg .ods-testimonial__quote>svg{width:36px;height:36px}.ods-feature-card{display:flex;gap:var(--ods-space-3);padding:var(--ods-space-5)}.ods-feature-card__icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--ods-radius-1);flex-shrink:0;background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-feature-card__icon>svg{width:18px;height:18px;color:inherit !important;fill:currentColor}.ods-feature-card__body{display:flex;flex-direction:column;gap:var(--ods-space-2);flex:1 1 auto;min-width:0}.ods-feature-card__eyebrow{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-accent);line-height:1}.ods-feature-card__title{margin:0;font-size:var(--ods-font-size-lg);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-feature-card__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-feature-card__link{display:inline-flex;align-items:center;gap:var(--ods-space-1);align-self:flex-start;margin-top:var(--ods-space-1);border:0;padding:0;background:rgba(0,0,0,0);color:var(--ods-accent);font-family:inherit;font-size:var(--ods-font-size-md);font-weight:500;text-decoration:none;cursor:pointer;transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-feature-card__link:hover{color:var(--ods-accent-hover, var(--ods-accent))}.ods-feature-card__link:hover .ods-feature-card__link-icon{transform:translateX(2px)}.ods-feature-card__link:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-feature-card__link-icon{display:inline-flex;align-items:center;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-feature-card__link-icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-feature-card--default .ods-feature-card__icon{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-feature-card--primary .ods-feature-card__icon{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-feature-card--success .ods-feature-card__icon{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-feature-card--warning .ods-feature-card__icon{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-feature-card--error .ods-feature-card__icon{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-feature-card--vertical{flex-direction:column}.ods-feature-card--horizontal{flex-direction:row;align-items:flex-start}.ods-feature-card--sm{padding:var(--ods-space-4);gap:var(--ods-space-2)}.ods-feature-card--sm .ods-feature-card__icon{width:28px;height:28px}.ods-feature-card--sm .ods-feature-card__icon>svg{width:14px;height:14px}.ods-feature-card--sm .ods-feature-card__title{font-size:var(--ods-font-size-md)}.ods-feature-card--sm .ods-feature-card__desc{font-size:var(--ods-font-size-sm)}.ods-feature-card--sm .ods-feature-card__link{font-size:var(--ods-font-size-sm)}.ods-feature-card--lg{padding:var(--ods-space-6);gap:var(--ods-space-4)}.ods-feature-card--lg .ods-feature-card__icon{width:40px;height:40px}.ods-feature-card--lg .ods-feature-card__icon>svg{width:22px;height:22px}.ods-feature-card--lg .ods-feature-card__title{font-size:var(--ods-font-size-xl)}.ods-feature-card--lg .ods-feature-card__desc{font-size:var(--ods-font-size-md)}.ods-feature-card--lg .ods-feature-card__link{font-size:var(--ods-font-size-md)}.ods-pricing{display:flex;flex-direction:column;gap:var(--ods-space-4);padding:var(--ods-space-6);font-family:var(--ods-font-family-sans)}.ods-pricing__head{display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-pricing__badge{align-self:flex-start;padding:1px var(--ods-space-2);border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1}.ods-pricing__name{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary)}.ods-pricing__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-pricing__price{display:flex;align-items:baseline;gap:var(--ods-space-1)}.ods-pricing__amount{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-3xl);font-weight:500;color:var(--ods-text-primary);line-height:1}.ods-pricing__period{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-pricing__sep{border:0;border-top:1px solid var(--ods-border-default);margin:0}.ods-pricing__features{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-pricing__feature{display:flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-base);color:var(--ods-text-primary)}.ods-pricing__feature--excluded{color:var(--ods-text-tertiary);text-decoration:line-through}.ods-pricing__feature-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.ods-pricing__feature-icon>svg{color:inherit !important;fill:currentColor}.ods-pricing__feature-icon--included{color:var(--ods-status-success-fg)}.ods-pricing__feature-icon--excluded{color:var(--ods-text-tertiary)}.ods-pricing__feature-text{flex:1 1 auto;min-width:0}.ods-pricing__cta{display:flex;flex-direction:column}.ods-pricing--highlighted .ods-pricing__period,.ods-pricing--highlighted .ods-pricing__feature--excluded,.ods-pricing--highlighted .ods-pricing__feature-icon--excluded{color:var(--ods-text-body)}.ods-choice-card{display:flex;flex-direction:column;gap:var(--ods-space-2);width:100%;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);text-align:left;cursor:pointer;padding:var(--ods-space-4);transition:border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-choice-card:hover:not(.ods-choice-card--disabled){border-color:var(--ods-border-strong);background:var(--ods-surface-subtle)}.ods-choice-card:focus-visible{outline:none;box-shadow:var(--ods-focus-ring);border-color:var(--ods-border-focus)}.ods-choice-card--selected{border-color:var(--ods-accent);background:var(--ods-accent-soft)}.ods-choice-card--disabled{opacity:.5;cursor:not-allowed}.ods-choice-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ods-space-2)}.ods-choice-card__icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body);flex-shrink:0}.ods-choice-card__icon>svg{width:16px;height:16px;color:inherit !important;fill:currentColor}.ods-choice-card--selected .ods-choice-card__icon{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-choice-card__check{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:1px solid var(--ods-border-strong);color:rgba(0,0,0,0);flex-shrink:0;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-choice-card__check[data-selection-mode=single]{border-radius:var(--ods-radius-pill)}.ods-choice-card__check[data-selection-mode=multiple]{border-radius:var(--ods-radius-1)}.ods-choice-card__check--on{background:var(--ods-accent);border-color:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-choice-card__check-icon{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%}.ods-choice-card__check-icon>svg{width:80%;height:80%;color:inherit !important;fill:currentColor}.ods-choice-card__badge{align-self:flex-start;padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase}.ods-choice-card__body{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-choice-card__title{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-choice-card__desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-choice-card--horizontal{flex-direction:row;align-items:center;gap:var(--ods-space-3)}.ods-choice-card--horizontal .ods-choice-card__head{display:contents}.ods-choice-card--horizontal .ods-choice-card__body{flex:1 1 auto}.ods-choice-card--sm{gap:var(--ods-space-1-5);padding:var(--ods-space-3)}.ods-choice-card--sm .ods-choice-card__title{font-size:var(--ods-font-size-sm)}.ods-choice-card--sm .ods-choice-card__desc{font-size:var(--ods-font-size-xs)}.ods-choice-card--sm .ods-choice-card__icon{width:22px;height:22px}.ods-choice-card--sm .ods-choice-card__icon>svg{width:12px;height:12px}.ods-choice-card--sm .ods-choice-card__check{width:14px;height:14px}.ods-choice-card--lg{gap:var(--ods-space-3);padding:var(--ods-space-5)}.ods-choice-card--lg .ods-choice-card__title{font-size:var(--ods-font-size-lg)}.ods-choice-card--lg .ods-choice-card__desc{font-size:var(--ods-font-size-md)}.ods-choice-card--lg .ods-choice-card__icon{width:36px;height:36px}.ods-choice-card--lg .ods-choice-card__icon>svg{width:20px;height:20px}.ods-choice-card--lg .ods-choice-card__check{width:22px;height:22px}.ods-kanban-card{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-3);border-left-width:3px !important;border-left-style:solid !important;border-left-color:rgba(0,0,0,0) !important;transition:border-left-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-kanban-card--low{border-left-color:var(--ods-status-success) !important}.ods-kanban-card--medium{border-left-color:var(--ods-status-pending) !important}.ods-kanban-card--high{border-left-color:var(--ods-status-failed) !important}.ods-kanban-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);min-width:0}.ods-kanban-card__tags{display:inline-flex;flex-wrap:wrap;gap:4px;flex:1 1 auto;min-width:0}.ods-kanban-card__tag{padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1}.ods-kanban-card__badge{padding:1px var(--ods-space-1);border-radius:var(--ods-radius-1);background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:700;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1}.ods-kanban-card__more{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;flex-shrink:0;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-kanban-card__more>svg{color:inherit !important;fill:currentColor}.ods-kanban-card__more:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-kanban-card__more:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-kanban-card__title{margin:0;font-size:var(--ods-font-size-base);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-kanban-card__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2)}.ods-kanban-card__meta{display:flex;align-items:center;gap:var(--ods-space-3);flex-wrap:wrap}.ods-kanban-card__date,.ods-kanban-card__comments{display:inline-flex;align-items:center;gap:4px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-kanban-card__date>svg,.ods-kanban-card__comments>svg{color:inherit !important;fill:currentColor}.ods-kanban-card__assignee{flex-shrink:0}.ods-kanban-card__assignee--legacy{width:20px;height:20px;border-radius:var(--ods-radius-pill);overflow:hidden;background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-xs);font-weight:600;display:inline-flex;align-items:center;justify-content:center}.ods-connector-card{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);font-family:var(--ods-font-family-sans)}.ods-connector-card--stretched{position:relative}.ods-connector-card__stretched-link{color:inherit;text-decoration:none}.ods-connector-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-connector-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-connector-card--stretched .ods-connector-card__action,.ods-connector-card--stretched .ods-connector-card__head-trailing{position:relative;z-index:2}.ods-connector-card__head{display:flex;align-items:flex-start;gap:var(--ods-space-3)}.ods-connector-card__logo{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body);overflow:hidden}.ods-connector-card__logo>svg{width:20px;height:20px;color:inherit !important;fill:currentColor}.ods-connector-card__logo>img{width:100%;height:100%;object-fit:contain}.ods-connector-card__head-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-connector-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-connector-card__meta{display:inline-flex;align-items:center;gap:var(--ods-space-1);flex-wrap:wrap}.ods-connector-card__chip{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-connector-card__chip-sep{color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs)}.ods-connector-card__head-trailing{display:inline-flex;align-items:center;gap:var(--ods-space-2);flex-shrink:0}.ods-connector-card__status{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-body);white-space:nowrap}.ods-connector-card__status-dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:currentColor;flex-shrink:0}.ods-connector-card__status-label{line-height:1}.ods-connector-card__status--connected{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:rgba(0,0,0,0)}.ods-connector-card__status--syncing{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:rgba(0,0,0,0)}.ods-connector-card__status--syncing .ods-connector-card__status-dot{animation:ods-connector-card-pulse 1.4s ease-in-out infinite}.ods-connector-card__status--configured{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:rgba(0,0,0,0)}.ods-connector-card__status--disconnected{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-connector-card__status--error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border-color:rgba(0,0,0,0)}.ods-connector-card__status--coming-soon{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:rgba(0,0,0,0)}.ods-connector-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-connector-card__stats{display:grid;grid-template-columns:1fr;gap:var(--ods-space-1);margin:0;padding-top:var(--ods-space-2);border-top:1px solid var(--ods-border-default)}.ods-connector-card__stat{display:flex;align-items:baseline;justify-content:space-between;gap:var(--ods-space-2)}.ods-connector-card__stat-label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-connector-card__stat-value{margin:0;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary)}.ods-connector-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-connector-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-connector-card__action{margin-top:var(--ods-space-1)}.ods-connector-card__action>button,.ods-connector-card__action>a{width:100%}.ods-connector-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-connector-card--sm .ods-connector-card__logo{width:28px;height:28px}.ods-connector-card--sm .ods-connector-card__logo>svg{width:16px;height:16px}.ods-connector-card--sm .ods-connector-card__name{font-size:var(--ods-font-size-sm)}.ods-connector-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-connector-card--lg .ods-connector-card__logo{width:48px;height:48px}.ods-connector-card--lg .ods-connector-card__logo>svg{width:24px;height:24px}.ods-connector-card--lg .ods-connector-card__name{font-size:var(--ods-font-size-lg)}.ods-connector-card--status-coming-soon .ods-connector-card__description,.ods-connector-card--status-coming-soon .ods-connector-card__stats,.ods-connector-card--status-coming-soon .ods-connector-card__tags{opacity:.7}@keyframes ods-connector-card-pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}@media(prefers-reduced-motion: reduce){.ods-connector-card__status--syncing .ods-connector-card__status-dot{animation:none}}.ods-metric-card{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);font-family:var(--ods-font-family-sans)}.ods-metric-card--stretched{position:relative}.ods-metric-card__stretched-link{color:inherit;text-decoration:none}.ods-metric-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-metric-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-metric-card--stretched .ods-metric-card__footer{position:relative;z-index:2}.ods-metric-card__head{display:flex;align-items:flex-start;gap:var(--ods-space-2)}.ods-metric-card__icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-metric-card__icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-metric-card__head-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-metric-card__label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);font-weight:500;line-height:var(--ods-line-height-tight)}.ods-metric-card__period{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-metric-card__trailing{flex-shrink:0}.ods-metric-card__main{display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-metric-card__value{font-family:var(--ods-font-family-sans);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-2xl);font-weight:600;color:var(--ods-text-primary);line-height:1.1;display:inline-flex;align-items:baseline;gap:4px}.ods-metric-card__unit{font-size:var(--ods-font-size-md);font-weight:500;color:var(--ods-text-tertiary)}.ods-metric-card__delta{display:inline-flex;align-items:center;gap:6px;font-size:var(--ods-font-size-sm)}.ods-metric-card__delta-glyph{display:inline-flex;align-items:center;justify-content:center}.ods-metric-card__delta-glyph>svg{width:12px;height:12px;color:inherit !important;fill:currentColor}.ods-metric-card__delta-value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-weight:500}.ods-metric-card__delta-suffix{color:var(--ods-text-tertiary)}.ods-metric-card__delta--success{color:var(--ods-status-success-fg)}.ods-metric-card__delta--failed{color:var(--ods-status-failed-fg)}.ods-metric-card__delta--neutral{color:var(--ods-text-tertiary)}.ods-metric-card__sparkline{width:100%;margin-top:var(--ods-space-1)}.ods-metric-card__sparkline>div{width:100%}.ods-metric-card__sparkline svg{width:100%;height:auto;display:block}.ods-metric-card__footer{padding-top:var(--ods-space-2);border-top:1px solid var(--ods-border-default);display:flex;justify-content:flex-end;align-items:center;font-size:var(--ods-font-size-sm)}.ods-metric-card__footer a,.ods-metric-card__footer button{color:var(--ods-accent);text-decoration:none;font-weight:500;background:none;border:none;padding:0;cursor:pointer}.ods-metric-card__footer a:hover,.ods-metric-card__footer button:hover{text-decoration:underline}.ods-metric-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-metric-card--sm .ods-metric-card__value{font-size:var(--ods-font-size-xl)}.ods-metric-card--sm .ods-metric-card__delta{font-size:var(--ods-font-size-xs)}.ods-metric-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-metric-card--lg .ods-metric-card__value{font-size:var(--ods-font-size-3xl)}.ods-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.ods-pipeline-card{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);font-family:var(--ods-font-family-sans)}.ods-pipeline-card--stretched{position:relative}.ods-pipeline-card__stretched-link{color:inherit;text-decoration:none}.ods-pipeline-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-pipeline-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-pipeline-card--stretched .ods-pipeline-card__head-actions{position:relative;z-index:2}.ods-pipeline-card__head{display:flex;align-items:flex-start;gap:var(--ods-space-3)}.ods-pipeline-card__ring{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px}.ods-pipeline-card__ring>svg{width:24px;height:24px;color:inherit}.ods-pipeline-card__ring--running{color:var(--ods-accent)}.ods-pipeline-card__ring--queued{color:var(--ods-text-tertiary)}.ods-pipeline-card__ring--succeeded{color:var(--ods-status-success-fg)}.ods-pipeline-card__ring--failed{color:var(--ods-status-failed-fg)}.ods-pipeline-card__ring--paused{color:var(--ods-status-pending-fg)}.ods-pipeline-card__ring--skipped{color:var(--ods-text-tertiary)}.ods-pipeline-card__ring--scheduled{color:var(--ods-accent)}.ods-pipeline-card__head-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:4px}.ods-pipeline-card__title-row{display:flex;align-items:center;gap:var(--ods-space-2);flex-wrap:wrap}.ods-pipeline-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-pipeline-card__status{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--ods-radius-pill);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1;white-space:nowrap}.ods-pipeline-card__status--running{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-pipeline-card__status--queued{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-pipeline-card__status--succeeded{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-pipeline-card__status--failed{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-pipeline-card__status--paused{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-pipeline-card__status--skipped{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-pipeline-card__status--scheduled{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-pipeline-card__route{display:inline-flex;align-items:center;flex-wrap:wrap;gap:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-pipeline-card__route-side{display:inline-flex;align-items:center;gap:4px;min-width:0}.ods-pipeline-card__route-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px}.ods-pipeline-card__route-icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-pipeline-card__route-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-pipeline-card__route-arrow{color:var(--ods-text-tertiary);opacity:.7}.ods-pipeline-card__head-actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.ods-pipeline-card__action-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-xs);font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease}.ods-pipeline-card__action-btn:hover{background:var(--ods-surface-muted)}.ods-pipeline-card__action-btn:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px}.ods-pipeline-card__action-btn:disabled{opacity:.5;cursor:not-allowed}.ods-pipeline-card__action-btn>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-pipeline-card__action-btn--icon{width:28px;height:28px;padding:0;justify-content:center}.ods-pipeline-card__meta{margin:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-pipeline-card__meta-item{display:flex;align-items:baseline;gap:4px}.ods-pipeline-card__meta-label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-pipeline-card__meta-value{margin:0;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-primary)}.ods-pipeline-card__sparkline{display:flex;flex-direction:column;gap:4px}.ods-pipeline-card__sparkline>div{width:100%}.ods-pipeline-card__sparkline svg{width:100%;height:auto;display:block}.ods-pipeline-card__sparkline-label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-pipeline-card__volume{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-pipeline-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-pipeline-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-pipeline-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-pipeline-card--sm .ods-pipeline-card__name{font-size:var(--ods-font-size-sm)}.ods-pipeline-card--sm .ods-pipeline-card__ring{width:22px;height:22px}.ods-pipeline-card--sm .ods-pipeline-card__ring>svg{width:18px;height:18px}.ods-pipeline-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-pipeline-card--lg .ods-pipeline-card__name{font-size:var(--ods-font-size-lg)}.ods-pipeline-card--lg .ods-pipeline-card__ring{width:32px;height:32px}.ods-pipeline-card--lg .ods-pipeline-card__ring>svg{width:28px;height:28px}.ods-alert-card{position:relative;display:flex;align-items:stretch;font-family:var(--ods-font-family-sans);overflow:hidden}.ods-alert-card__stretched-link{color:inherit;text-decoration:none}.ods-alert-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-alert-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-alert-card--stretched .ods-alert-card__actions,.ods-alert-card--stretched .ods-alert-card__trailing{position:relative;z-index:2}.ods-alert-card__stripe{flex-shrink:0;width:4px;align-self:stretch;background:var(--ods-text-tertiary)}.ods-alert-card__stripe--P0{background:var(--ods-status-failed-fg)}.ods-alert-card__stripe--P1{background:var(--ods-status-pending-fg)}.ods-alert-card__stripe--P2{background:var(--ods-accent)}.ods-alert-card__stripe--P3{background:var(--ods-text-tertiary)}.ods-alert-card__stripe--info{background:var(--ods-accent)}.ods-alert-card__content{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4)}.ods-alert-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);flex-wrap:wrap}.ods-alert-card__badges{display:inline-flex;align-items:center;gap:var(--ods-space-1);flex-wrap:wrap}.ods-alert-card__severity{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--ods-radius-pill);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1.2;white-space:nowrap}.ods-alert-card__severity--P0{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-alert-card__severity--P1{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-alert-card__severity--P2{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-alert-card__severity--P3{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-alert-card__severity--info{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-alert-card__state{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--ods-radius-pill);border:1px solid var(--ods-border-default);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1.2;white-space:nowrap}.ods-alert-card__state--open{border-color:var(--ods-status-failed-fg);color:var(--ods-status-failed-fg)}.ods-alert-card__state--acknowledged{border-color:var(--ods-status-pending-fg);color:var(--ods-status-pending-fg)}.ods-alert-card__state--resolved{border-color:var(--ods-status-success-fg);color:var(--ods-status-success-fg)}.ods-alert-card__state--muted{border-color:var(--ods-border-default);color:var(--ods-text-tertiary)}.ods-alert-card__trailing{flex-shrink:0}.ods-alert-card__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-alert-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-alert-card__resources{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}.ods-alert-card__resource{display:inline-flex;align-items:baseline;gap:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-alert-card__resource-kind{text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-alert-card__resource-label{color:var(--ods-text-primary)}.ods-alert-card__meta{margin:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-alert-card__meta-item{display:inline-flex;align-items:baseline;gap:4px}.ods-alert-card__meta-label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-alert-card__meta-value{margin:0;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-primary)}.ods-alert-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-alert-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-alert-card__actions{display:flex;flex-wrap:wrap;gap:var(--ods-space-1);margin-top:var(--ods-space-1)}.ods-alert-card__action-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--ods-radius-1);border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .08s ease}.ods-alert-card__action-btn:hover{background:var(--ods-surface-muted)}.ods-alert-card__action-btn:active{transform:translateY(1px)}.ods-alert-card__action-btn:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px}.ods-alert-card__action-btn:disabled{opacity:.5;cursor:not-allowed}.ods-alert-card__action-btn>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-alert-card__action-icon{display:inline-flex;align-items:center}.ods-alert-card__action-btn--primary{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-alert-card__action-btn--primary:hover{background:var(--ods-accent);filter:brightness(0.95)}.ods-alert-card__action-btn--success{background:var(--ods-status-success-fg);color:var(--ods-surface-canvas)}.ods-alert-card__action-btn--success:hover{background:var(--ods-status-success-fg);filter:brightness(0.95)}.ods-alert-card__action-btn--danger{background:var(--ods-status-failed-fg);color:var(--ods-surface-canvas)}.ods-alert-card__action-btn--danger:hover{background:var(--ods-status-failed-fg);filter:brightness(0.95)}.ods-alert-card__action-btn--neutral{border-color:var(--ods-border-default)}.ods-alert-card--state-resolved .ods-alert-card__title,.ods-alert-card--state-resolved .ods-alert-card__description,.ods-alert-card--state-resolved .ods-alert-card__resources,.ods-alert-card--state-muted .ods-alert-card__title,.ods-alert-card--state-muted .ods-alert-card__description,.ods-alert-card--state-muted .ods-alert-card__resources{opacity:.7}.ods-alert-card--sm .ods-alert-card__content{padding:var(--ods-space-3);gap:var(--ods-space-1)}.ods-alert-card--sm .ods-alert-card__title{font-size:var(--ods-font-size-sm)}.ods-alert-card--lg .ods-alert-card__content{padding:var(--ods-space-5);gap:var(--ods-space-3)}.ods-alert-card--lg .ods-alert-card__title{font-size:var(--ods-font-size-lg)}.ods-alert-card--lg .ods-alert-card__stripe{width:6px}.ods-dataset-card{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);font-family:var(--ods-font-family-sans)}.ods-dataset-card--stretched{position:relative}.ods-dataset-card__stretched-link{color:inherit;text-decoration:none}.ods-dataset-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-dataset-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-dataset-card--stretched .ods-dataset-card__footer,.ods-dataset-card--stretched .ods-dataset-card__trailing{position:relative;z-index:2}.ods-dataset-card__head{display:flex;align-items:flex-start;gap:var(--ods-space-3)}.ods-dataset-card__icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body);overflow:hidden}.ods-dataset-card__icon>svg{width:18px;height:18px;color:inherit !important;fill:currentColor}.ods-dataset-card__icon>img{width:100%;height:100%;object-fit:contain}.ods-dataset-card__head-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-dataset-card__title-row{display:flex;align-items:center;gap:var(--ods-space-2);flex-wrap:wrap}.ods-dataset-card__name{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight);word-break:break-all}.ods-dataset-card__health{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-muted);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1.2;white-space:nowrap}.ods-dataset-card__health-dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:currentColor;flex-shrink:0}.ods-dataset-card__health--fresh{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-dataset-card__health--stale{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-dataset-card__health--broken{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-dataset-card__health--unknown{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-dataset-card__health--verified{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-dataset-card__source{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-dataset-card__trailing{flex-shrink:0}.ods-dataset-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-dataset-card__stats{margin:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-dataset-card__stat{display:inline-flex;align-items:baseline;gap:4px}.ods-dataset-card__stat-label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-dataset-card__stat-value{margin:0;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary)}.ods-dataset-card__meta{display:flex;flex-wrap:wrap;gap:var(--ods-space-3);font-size:var(--ods-font-size-xs)}.ods-dataset-card__meta-item{display:inline-flex;align-items:baseline;gap:4px}.ods-dataset-card__meta-label{font-family:var(--ods-font-family-mono);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-dataset-card__meta-value{color:var(--ods-text-body)}.ods-dataset-card__footer-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);flex-wrap:wrap}.ods-dataset-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-dataset-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-dataset-card__footer{margin-left:auto;font-size:var(--ods-font-size-sm)}.ods-dataset-card__footer a,.ods-dataset-card__footer button{color:var(--ods-accent);text-decoration:none;font-weight:500;background:none;border:none;padding:0;cursor:pointer}.ods-dataset-card__footer a:hover,.ods-dataset-card__footer button:hover{text-decoration:underline}.ods-dataset-card--tile .ods-dataset-card__head{flex-direction:column;align-items:flex-start}.ods-dataset-card--sm{gap:var(--ods-space-1);padding:var(--ods-space-3)}.ods-dataset-card--sm .ods-dataset-card__name{font-size:var(--ods-font-size-sm)}.ods-dataset-card--sm .ods-dataset-card__icon{width:24px;height:24px}.ods-dataset-card--sm .ods-dataset-card__icon>svg{width:14px;height:14px}.ods-dataset-card--lg{gap:var(--ods-space-3);padding:var(--ods-space-5)}.ods-dataset-card--lg .ods-dataset-card__name{font-size:var(--ods-font-size-lg)}.ods-dataset-card--lg .ods-dataset-card__icon{width:40px;height:40px}.ods-dataset-card--lg .ods-dataset-card__icon>svg{width:22px;height:22px}.ods-dataset-card--health-broken{background:linear-gradient(to right, var(--ods-status-failed-bg) 0, transparent 6px)}.ods-integration-card{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);font-family:var(--ods-font-family-sans)}.ods-integration-card--stretched{position:relative}.ods-integration-card__stretched-link{color:inherit;text-decoration:none}.ods-integration-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-integration-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-integration-card--stretched .ods-integration-card__actions,.ods-integration-card--stretched .ods-integration-card__footer,.ods-integration-card--stretched .ods-integration-card__trailing{position:relative;z-index:2}.ods-integration-card__head{display:flex;align-items:flex-start;gap:var(--ods-space-3)}.ods-integration-card__logo{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-body);overflow:hidden}.ods-integration-card__logo>svg{width:22px;height:22px;color:inherit !important;fill:currentColor}.ods-integration-card__logo>img{width:100%;height:100%;object-fit:contain}.ods-integration-card__head-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-integration-card__title-row{display:flex;align-items:center;gap:var(--ods-space-2);flex-wrap:wrap}.ods-integration-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-integration-card__meta{display:inline-flex;align-items:center;gap:var(--ods-space-2);flex-wrap:wrap}.ods-integration-card__category{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-integration-card__trailing{flex-shrink:0}.ods-integration-card__status{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-muted);font-size:var(--ods-font-size-xs);font-weight:500;line-height:1.2;color:var(--ods-text-body);white-space:nowrap}.ods-integration-card__status-dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:currentColor;flex-shrink:0}.ods-integration-card__status-label{line-height:1}.ods-integration-card__status--connected{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-integration-card__status--not-configured{background:var(--ods-surface-muted);color:var(--ods-text-tertiary)}.ods-integration-card__status--error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-integration-card__status--coming-soon{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-integration-card__status--deprecated{background:var(--ods-surface-muted);color:var(--ods-text-tertiary);text-decoration:line-through}.ods-integration-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-integration-card__scopes{display:flex;flex-wrap:wrap;gap:4px}.ods-integration-card__scope{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);line-height:1.4;background:var(--ods-surface-canvas)}.ods-integration-card__scope--read{border-color:var(--ods-accent);color:var(--ods-accent)}.ods-integration-card__scope--write{border-color:var(--ods-status-pending-fg);color:var(--ods-status-pending-fg)}.ods-integration-card__scope--admin{border-color:var(--ods-status-failed-fg);color:var(--ods-status-failed-fg)}.ods-integration-card__scope--neutral{color:var(--ods-text-tertiary)}.ods-integration-card__sub-meta{display:flex;align-items:center;gap:var(--ods-space-3);flex-wrap:wrap}.ods-integration-card__connected-at{display:inline-flex;align-items:baseline;gap:4px;font-size:var(--ods-font-size-xs)}.ods-integration-card__sub-meta-label{font-family:var(--ods-font-family-mono);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-integration-card__sub-meta-value{font-family:var(--ods-font-family-mono);color:var(--ods-text-body)}.ods-integration-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-integration-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-integration-card__footer-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);flex-wrap:wrap;margin-top:var(--ods-space-1)}.ods-integration-card__actions{display:flex;flex-wrap:wrap;gap:var(--ods-space-1)}.ods-integration-card__footer{margin-left:auto;font-size:var(--ods-font-size-sm)}.ods-integration-card__footer a,.ods-integration-card__footer button{color:var(--ods-accent);text-decoration:none;font-weight:500;background:none;border:none;padding:0;cursor:pointer}.ods-integration-card__footer a:hover,.ods-integration-card__footer button:hover{text-decoration:underline}.ods-integration-card__action-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:rgba(0,0,0,0);color:var(--ods-text-body);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .08s ease}.ods-integration-card__action-btn:hover{background:var(--ods-surface-muted)}.ods-integration-card__action-btn:active{transform:translateY(1px)}.ods-integration-card__action-btn:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px}.ods-integration-card__action-btn:disabled{opacity:.5;cursor:not-allowed}.ods-integration-card__action-btn>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-integration-card__action-icon{display:inline-flex;align-items:center}.ods-integration-card__action-btn--primary{background:var(--ods-accent);color:var(--ods-surface-canvas);border-color:rgba(0,0,0,0)}.ods-integration-card__action-btn--primary:hover{background:var(--ods-accent);filter:brightness(0.95)}.ods-integration-card__action-btn--destructive{background:rgba(0,0,0,0);color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-fg)}.ods-integration-card__action-btn--destructive:hover{background:var(--ods-status-failed-bg)}.ods-integration-card--status-coming-soon .ods-integration-card__description,.ods-integration-card--status-coming-soon .ods-integration-card__scopes,.ods-integration-card--status-coming-soon .ods-integration-card__sub-meta,.ods-integration-card--status-deprecated .ods-integration-card__description,.ods-integration-card--status-deprecated .ods-integration-card__scopes,.ods-integration-card--status-deprecated .ods-integration-card__sub-meta{opacity:.7}.ods-integration-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-integration-card--sm .ods-integration-card__logo{width:32px;height:32px}.ods-integration-card--sm .ods-integration-card__logo>svg{width:18px;height:18px}.ods-integration-card--sm .ods-integration-card__name{font-size:var(--ods-font-size-sm)}.ods-integration-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-integration-card--lg .ods-integration-card__logo{width:48px;height:48px}.ods-integration-card--lg .ods-integration-card__logo>svg{width:26px;height:26px}.ods-integration-card--lg .ods-integration-card__name{font-size:var(--ods-font-size-lg)}.ods-template-card{display:flex;flex-direction:column;font-family:var(--ods-font-family-sans);overflow:hidden}.ods-template-card--stretched{position:relative}.ods-template-card__stretched-link{color:inherit;text-decoration:none}.ods-template-card__stretched-link:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px;border-radius:var(--ods-radius-1)}.ods-template-card__stretched-link::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.ods-template-card--stretched .ods-template-card__cta,.ods-template-card--stretched .ods-template-card__footer{position:relative;z-index:2}.ods-template-card__image{position:relative;width:100%;background:var(--ods-surface-muted);color:var(--ods-text-tertiary);display:flex;align-items:center;justify-content:center;overflow:hidden}.ods-template-card__image>img,.ods-template-card__image>svg{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.ods-template-card__image>svg{object-fit:contain}.ods-template-card:hover .ods-template-card__image>img,.ods-template-card:hover .ods-template-card__image>svg{transform:scale(1.03)}.ods-template-card__image--ratio-16-9{aspect-ratio:16/9}.ods-template-card__image--ratio-4-3{aspect-ratio:4/3}.ods-template-card__image--ratio-1-1{aspect-ratio:1/1}.ods-template-card__image--ratio-3-4{aspect-ratio:3/4}.ods-template-card__image--ratio-21-9{aspect-ratio:21/9}.ods-template-card__image--icon{background:var(--ods-surface-muted)}.ods-template-card__icon{display:inline-flex;align-items:center;justify-content:center;color:inherit}.ods-template-card__icon>svg{width:56px;height:56px;color:inherit !important;fill:currentColor;transition:transform .4s ease}.ods-template-card:hover .ods-template-card__image--icon .ods-template-card__icon>svg{transform:scale(1.05)}.ods-template-card__image--tone-default{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-template-card__image--tone-primary{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-template-card__image--tone-success{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-template-card__image--tone-warning{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-template-card__image--tone-error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-template-card__image--tone-info{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-template-card__image--flow{background:var(--ods-surface-muted);padding:var(--ods-space-3)}.ods-template-card__icon-flow{display:inline-flex;align-items:center;gap:var(--ods-space-2);flex-wrap:wrap;justify-content:center;max-width:100%}.ods-template-card__icon-flow-item{display:inline-flex;align-items:center;gap:var(--ods-space-2)}.ods-template-card__icon-tile{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--ods-radius-2);flex-shrink:0;transition:transform .4s ease}.ods-template-card__icon-tile>svg{width:28px;height:28px;color:inherit !important;fill:currentColor}.ods-template-card:hover .ods-template-card__icon-tile{transform:scale(1.05)}.ods-template-card__icon-tile--tone-default{background:var(--ods-surface-canvas);color:var(--ods-text-body);box-shadow:inset 0 0 0 1px var(--ods-border-default)}.ods-template-card__icon-tile--tone-primary{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-template-card__icon-tile--tone-success{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg)}.ods-template-card__icon-tile--tone-warning{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg)}.ods-template-card__icon-tile--tone-error{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-template-card__icon-tile--tone-info{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-template-card__icon-connector{display:inline-flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary);font-family:var(--ods-font-family-sans);font-size:22px;line-height:1;user-select:none}.ods-template-card__icon-connector>svg{width:22px;height:22px;color:inherit !important;fill:currentColor}.ods-template-card__badge{position:absolute;top:var(--ods-space-2);left:var(--ods-space-2);padding:2px 8px;border-radius:var(--ods-radius-pill);background:var(--ods-accent);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;line-height:1.2}.ods-template-card__content{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);flex:1 1 auto}.ods-template-card__category{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);line-height:1}.ods-template-card__name{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-template-card__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-template-card__requirements{display:flex;flex-wrap:wrap;gap:4px}.ods-template-card__requirement{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-body);line-height:1.4}.ods-template-card__stats{margin:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-template-card__stat{display:inline-flex;align-items:baseline;gap:4px}.ods-template-card__stat-label{margin:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-template-card__stat-value{margin:0;display:inline-flex;align-items:center;gap:4px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-primary)}.ods-template-card__stat-icon{display:inline-flex;align-items:center;color:var(--ods-text-tertiary)}.ods-template-card__stat-icon>svg{width:12px;height:12px;color:inherit !important;fill:currentColor}.ods-template-card__tags{display:flex;flex-wrap:wrap;gap:4px}.ods-template-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-template-card__footer-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);flex-wrap:wrap;margin-top:auto;padding-top:var(--ods-space-2);border-top:1px solid var(--ods-border-default)}.ods-template-card__author{display:inline-flex;align-items:center;gap:6px;min-width:0}.ods-template-card__author-avatar{flex-shrink:0}.ods-template-card__author-name{font-size:var(--ods-font-size-xs);color:var(--ods-text-body);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-template-card__author-byline{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-template-card__footer-actions{display:inline-flex;align-items:center;gap:var(--ods-space-2)}.ods-template-card__footer{font-size:var(--ods-font-size-sm)}.ods-template-card__footer a,.ods-template-card__footer button{color:var(--ods-accent);text-decoration:none;font-weight:500;background:none;border:none;padding:0;cursor:pointer}.ods-template-card__footer a:hover,.ods-template-card__footer button:hover{text-decoration:underline}.ods-template-card--sm .ods-template-card__content{padding:var(--ods-space-3);gap:var(--ods-space-1)}.ods-template-card--sm .ods-template-card__name{font-size:var(--ods-font-size-sm)}.ods-template-card--sm .ods-template-card__icon>svg{width:40px;height:40px}.ods-template-card--sm .ods-template-card__icon-tile{width:44px;height:44px}.ods-template-card--sm .ods-template-card__icon-tile>svg{width:22px;height:22px}.ods-template-card--sm .ods-template-card__icon-connector{font-size:18px}.ods-template-card--sm .ods-template-card__icon-connector>svg{width:18px;height:18px}.ods-template-card--lg .ods-template-card__content{padding:var(--ods-space-5);gap:var(--ods-space-3)}.ods-template-card--lg .ods-template-card__name{font-size:var(--ods-font-size-lg)}.ods-template-card--lg .ods-template-card__icon>svg{width:72px;height:72px}.ods-template-card--lg .ods-template-card__icon-tile{width:64px;height:64px}.ods-template-card--lg .ods-template-card__icon-tile>svg{width:32px;height:32px}.ods-template-card--lg .ods-template-card__icon-connector{font-size:26px}.ods-template-card--lg .ods-template-card__icon-connector>svg{width:26px;height:26px}.ods-pagination{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ods-space-3);font-family:var(--ods-font-family-sans);color:var(--ods-text-body)}.ods-pagination__total{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);margin-right:auto}.ods-pagination__controls{display:inline-flex;align-items:center;gap:2px}.ods-pagination__pages{list-style:none;margin:0;padding:0;display:inline-flex;align-items:center;gap:2px}.ods-pagination__compact-label{padding:0 var(--ods-space-2);font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-pagination__compact-label strong{color:var(--ods-text-primary);font-weight:600}.ods-pagination__btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);background:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);line-height:1;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.ods-pagination__btn:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-pagination__btn:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px}.ods-pagination__btn:disabled{cursor:not-allowed;opacity:.45}.ods-pagination__btn>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-pagination__btn--icon{width:32px;padding:0}.ods-pagination__btn--current{background:var(--ods-accent);color:var(--ods-surface-canvas);border-color:rgba(0,0,0,0);font-weight:600}.ods-pagination__btn--current:hover:not(:disabled){background:var(--ods-accent);filter:brightness(0.95)}.ods-pagination__ellipsis{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);user-select:none}.ods-pagination__jump{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-pagination__jump-label{color:var(--ods-text-tertiary)}.ods-pagination__jump-input{width:60px;height:32px;padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);text-align:center}.ods-pagination__jump-input::-webkit-outer-spin-button,.ods-pagination__jump-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ods-pagination__jump-input{-moz-appearance:textfield}.ods-pagination__jump-input:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px;border-color:var(--ods-accent)}.ods-pagination__page-size{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-sm)}.ods-pagination__page-size-label{color:var(--ods-text-tertiary)}.ods-pagination__page-size-select{height:32px;padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);cursor:pointer}.ods-pagination__page-size-select:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px;border-color:var(--ods-accent)}.ods-pagination--sm{gap:var(--ods-space-2)}.ods-pagination--sm .ods-pagination__btn,.ods-pagination--sm .ods-pagination__ellipsis,.ods-pagination--sm .ods-pagination__jump-input,.ods-pagination--sm .ods-pagination__page-size-select{min-width:28px;height:28px;font-size:var(--ods-font-size-xs)}.ods-pagination--sm .ods-pagination__btn--icon{width:28px}.ods-pagination--sm .ods-pagination__ellipsis{width:28px}.ods-pagination--lg .ods-pagination__btn,.ods-pagination--lg .ods-pagination__ellipsis,.ods-pagination--lg .ods-pagination__jump-input,.ods-pagination--lg .ods-pagination__page-size-select{min-width:36px;height:36px;font-size:var(--ods-font-size-md)}.ods-pagination--lg .ods-pagination__btn--icon{width:36px}.ods-pagination--lg .ods-pagination__ellipsis{width:36px}.ods-pagination--lg .ods-pagination__btn>svg{width:16px;height:16px}.ods-pagination--compact{gap:var(--ods-space-2)}.ods-pagination--disabled{opacity:.7;pointer-events:none}.ods-stepper{list-style:none;margin:0;padding:0;font-family:var(--ods-font-family-sans);color:var(--ods-text-body)}.ods-stepper--horizontal{display:flex;align-items:flex-start;gap:0}.ods-stepper--horizontal .ods-stepper__step{display:flex;align-items:flex-start;flex:1 1 0;min-width:0}.ods-stepper--horizontal .ods-stepper__step-btn,.ods-stepper--horizontal .ods-stepper__step-static{flex-direction:column;align-items:center;text-align:center;gap:var(--ods-space-2);padding:var(--ods-space-2);min-width:0}.ods-stepper--horizontal .ods-stepper__connector{flex:1 1 auto;height:2px;margin-top:22px;min-width:24px}.ods-stepper--vertical{display:flex;flex-direction:column;gap:0}.ods-stepper--vertical .ods-stepper__step{display:flex;flex-direction:column;align-items:stretch}.ods-stepper--vertical .ods-stepper__step-btn,.ods-stepper--vertical .ods-stepper__step-static{flex-direction:row;align-items:flex-start;text-align:left;gap:var(--ods-space-3);padding:var(--ods-space-2) 0}.ods-stepper--vertical .ods-stepper__connector{width:2px;min-height:var(--ods-space-4);margin-left:13px}.ods-stepper__step-btn,.ods-stepper__step-static{display:inline-flex;background:rgba(0,0,0,0);border:0;color:inherit;font-family:inherit;font-size:inherit;width:100%;cursor:default}.ods-stepper__step-btn:focus-visible,.ods-stepper__step-static:focus-visible{outline:2px solid var(--ods-accent);outline-offset:4px;border-radius:var(--ods-radius-1)}.ods-stepper--interactive .ods-stepper__step-btn:not(:disabled){cursor:pointer}.ods-stepper--interactive .ods-stepper__step-btn:not(:disabled):hover .ods-stepper__indicator{transform:scale(1.05)}.ods-stepper__step-btn:disabled{cursor:not-allowed;opacity:.5}.ods-stepper__indicator{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--ods-radius-pill);flex-shrink:0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;line-height:1;transition:transform .16s ease}.ods-stepper__indicator>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-stepper__indicator-num{line-height:1}.ods-stepper__indicator--pending{background:var(--ods-surface-muted);color:var(--ods-text-tertiary);box-shadow:inset 0 0 0 1px var(--ods-border-default)}.ods-stepper__indicator--active{background:var(--ods-accent);color:var(--ods-surface-canvas);box-shadow:0 0 0 4px var(--ods-accent-soft)}.ods-stepper__indicator--complete{background:var(--ods-status-success-fg);color:var(--ods-surface-canvas)}.ods-stepper__indicator--error{background:var(--ods-status-failed-fg);color:var(--ods-surface-canvas)}.ods-stepper__label-text{display:flex;flex-direction:column;gap:2px;min-width:0}.ods-stepper__label-title{font-size:var(--ods-font-size-sm);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-stepper__label-optional{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-stepper__label-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-base)}.ods-stepper__step--active .ods-stepper__label-title{color:var(--ods-text-primary)}.ods-stepper__step--complete .ods-stepper__label-title{color:var(--ods-text-body)}.ods-stepper__step--pending .ods-stepper__label-title{color:var(--ods-text-tertiary)}.ods-stepper__step--error .ods-stepper__label-title{color:var(--ods-status-failed-fg)}.ods-stepper__connector{background:var(--ods-border-default);flex-shrink:0;transition:background .18s ease}.ods-stepper__connector--complete{background:var(--ods-status-success-fg)}.ods-stepper--sm .ods-stepper__indicator{width:22px;height:22px;font-size:10px}.ods-stepper--sm .ods-stepper__indicator>svg{width:12px;height:12px}.ods-stepper--sm .ods-stepper__label-title{font-size:var(--ods-font-size-xs)}.ods-stepper--sm.ods-stepper--horizontal .ods-stepper__connector{margin-top:19px}.ods-stepper--sm.ods-stepper--vertical .ods-stepper__connector{margin-left:10px}.ods-stepper--lg .ods-stepper__indicator{width:36px;height:36px;font-size:var(--ods-font-size-sm)}.ods-stepper--lg .ods-stepper__indicator>svg{width:18px;height:18px}.ods-stepper--lg .ods-stepper__label-title{font-size:var(--ods-font-size-md)}.ods-stepper--lg.ods-stepper--horizontal .ods-stepper__connector{margin-top:26px}.ods-stepper--lg.ods-stepper--vertical .ods-stepper__connector{margin-left:17px}.ods-stepper--disabled{opacity:.7;pointer-events:none}@media(prefers-reduced-motion: reduce){.ods-stepper__indicator,.ods-stepper__connector{transition:none}}.ods-cmdk{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:10vh var(--ods-space-4) var(--ods-space-4);background:rgba(0,0,0,.5);font-family:var(--ods-font-family-sans)}.ods-cmdk__panel-wrap{width:100%;max-width:640px}.ods-cmdk__panel{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:0 24px 48px rgba(0,0,0,.18),0 4px 12px rgba(0,0,0,.08);overflow:hidden;max-height:70vh}.ods-cmdk__searchbar{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-4);border-bottom:1px solid var(--ods-border-default)}.ods-cmdk__search-icon{color:var(--ods-text-tertiary);flex-shrink:0}.ods-cmdk__input{flex:1 1 auto;min-width:0;background:rgba(0,0,0,0);border:0;outline:none;color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-md);line-height:var(--ods-line-height-base)}.ods-cmdk__input::placeholder{color:var(--ods-text-tertiary)}.ods-cmdk__esc-hint{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1.4;flex-shrink:0}.ods-cmdk__list{flex:1 1 auto;overflow-y:auto;padding:var(--ods-space-2);min-height:80px}.ods-cmdk__list::-webkit-scrollbar{width:8px}.ods-cmdk__list::-webkit-scrollbar-thumb{background:var(--ods-border-default);border-radius:var(--ods-radius-pill)}.ods-cmdk__list::-webkit-scrollbar-thumb:hover{background:var(--ods-border-strong, var(--ods-text-tertiary))}.ods-cmdk__group+.ods-cmdk__group{margin-top:var(--ods-space-3)}.ods-cmdk__group-heading{position:sticky;top:0;z-index:1;padding:var(--ods-space-2) var(--ods-space-3) var(--ods-space-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:500;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-cmdk__option{display:flex;align-items:center;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);border-radius:var(--ods-radius-1);cursor:pointer;color:var(--ods-text-body);transition:background .08s ease}.ods-cmdk__option--active{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-cmdk__option--danger{color:var(--ods-status-failed-fg)}.ods-cmdk__option--danger.ods-cmdk__option--active{background:var(--ods-status-failed-bg)}.ods-cmdk__option--disabled{opacity:.5;cursor:not-allowed}.ods-cmdk__option--disabled.ods-cmdk__option--active{background:rgba(0,0,0,0)}.ods-cmdk__option-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;color:var(--ods-text-tertiary)}.ods-cmdk__option-icon>svg{width:16px;height:16px;color:inherit !important;fill:currentColor}.ods-cmdk__option--active .ods-cmdk__option-icon{color:var(--ods-accent)}.ods-cmdk__option-body{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1 auto}.ods-cmdk__option-label{font-size:var(--ods-font-size-sm);font-weight:500;color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-cmdk__option-desc{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-cmdk__option-shortcut{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1.4;flex-shrink:0}.ods-cmdk__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ods-space-6);text-align:center;gap:4px}.ods-cmdk__empty-title{margin:0;font-size:var(--ods-font-size-md);color:var(--ods-text-body);font-weight:600}.ods-cmdk__empty-hint{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-cmdk__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-4);border-top:1px solid var(--ods-border-default);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs)}@media(prefers-reduced-motion: reduce){.ods-cmdk__option{transition:none}}.ods-segmented{display:inline-flex;align-items:stretch;gap:2px;padding:2px;border-radius:var(--ods-radius-2);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-segmented--full{display:flex;width:100%}.ods-segmented--full .ods-segmented__segment{flex:1 1 0}.ods-segmented--disabled{opacity:.6;pointer-events:none}.ods-segmented__segment{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:var(--ods-space-1) var(--ods-space-3);height:30px;border-radius:calc(var(--ods-radius-2) - 2px);background:rgba(0,0,0,0);border:0;color:var(--ods-text-tertiary);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;line-height:1;cursor:pointer;transition:color .16s ease}.ods-segmented__segment:hover:not(:disabled):not(.ods-segmented__segment--selected){color:var(--ods-text-body)}.ods-segmented__segment:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px}.ods-segmented__segment:disabled{cursor:not-allowed;opacity:.5}.ods-segmented__segment--selected{color:var(--ods-text-primary)}.ods-segmented__indicator{position:absolute;inset:0;z-index:0;border-radius:inherit;background:var(--ods-surface-canvas);box-shadow:0 1px 2px rgba(0,0,0,.08),0 0 0 1px var(--ods-border-default)}.ods-segmented__icon,.ods-segmented__label{position:relative;z-index:1;display:inline-flex;align-items:center;line-height:1}.ods-segmented__icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-segmented--icon-only .ods-segmented__segment{padding:0;width:30px}.ods-segmented--sm{padding:1px;gap:1px}.ods-segmented--sm .ods-segmented__segment{height:24px;padding:0 var(--ods-space-2);font-size:var(--ods-font-size-xs)}.ods-segmented--sm .ods-segmented__icon>svg{width:12px;height:12px}.ods-segmented--sm.ods-segmented--icon-only .ods-segmented__segment{width:24px}.ods-segmented--lg .ods-segmented__segment{height:38px;padding:0 var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-segmented--lg .ods-segmented__icon>svg{width:16px;height:16px}.ods-segmented--lg.ods-segmented--icon-only .ods-segmented__segment{width:38px}.ods-tree{--ods-tree-indent: 18px;list-style:none;margin:0;padding:var(--ods-space-1) 0;font-family:var(--ods-font-family-sans);color:var(--ods-text-body)}.ods-tree__node{list-style:none;margin:0;padding:0}.ods-tree__node:focus-visible{outline:none}.ods-tree__node:focus-visible>.ods-tree__row{outline:2px solid var(--ods-accent);outline-offset:-2px;border-radius:var(--ods-radius-1)}.ods-tree__group{list-style:none;margin:0;padding:0;overflow:hidden}.ods-tree__row{display:flex;align-items:center;gap:6px;min-height:28px;padding-right:var(--ods-space-2);cursor:pointer;user-select:none;color:var(--ods-text-body);transition:background .08s ease}.ods-tree__row:hover{background:var(--ods-surface-muted)}.ods-tree__node--selected>.ods-tree__row{background:var(--ods-accent-soft);color:var(--ods-accent);font-weight:500}.ods-tree__node--disabled>.ods-tree__row{opacity:.5;cursor:not-allowed}.ods-tree__node--disabled>.ods-tree__row:hover{background:rgba(0,0,0,0)}.ods-tree__twisty{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;flex-shrink:0;border-radius:var(--ods-radius-1);transition:transform .12s ease,background .12s ease}.ods-tree__twisty:hover:not(:disabled){background:rgba(0,0,0,.05)}.ods-tree__twisty>svg{width:12px;height:12px;color:inherit !important;fill:currentColor}.ods-tree__twisty--leaf{cursor:default;visibility:hidden}.ods-tree__twisty--open{transform:rotate(90deg)}.ods-tree__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-tree__icon>svg{width:16px;height:16px;color:inherit !important;fill:currentColor}.ods-tree__node--selected>.ods-tree__row>.ods-tree__icon{color:var(--ods-accent)}.ods-tree__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ods-font-size-sm)}.ods-tree__trailing{flex-shrink:0;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-xs)}.ods-tree__loading,.ods-tree__empty{list-style:none;margin:0;padding:var(--ods-space-1) var(--ods-space-2);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-tree--guides .ods-tree__group{position:relative}.ods-tree--guides .ods-tree__group::before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--ods-tree-indent)/2 - 1px);width:1px;background:var(--ods-border-default)}.ods-tree--guides .ods-tree__group .ods-tree__group::before{left:calc(var(--ods-tree-indent)/2 - 1px)}.ods-tree--sm{--ods-tree-indent: 14px}.ods-tree--sm .ods-tree__row{min-height:24px}.ods-tree--sm .ods-tree__label{font-size:var(--ods-font-size-xs)}.ods-tree--sm .ods-tree__icon>svg{width:14px;height:14px}.ods-tree--lg{--ods-tree-indent: 22px}.ods-tree--lg .ods-tree__row{min-height:34px}.ods-tree--lg .ods-tree__label{font-size:var(--ods-font-size-md)}.ods-tree--lg .ods-tree__icon{width:18px;height:18px}.ods-tree--lg .ods-tree__icon>svg{width:18px;height:18px}.ods-tree--disabled{opacity:.7;pointer-events:none}@media(prefers-reduced-motion: reduce){.ods-tree__twisty,.ods-tree__row{transition:none}}.ods-ctxmenu{position:fixed;z-index:1100;min-width:200px;max-width:320px;padding:var(--ods-space-1) 0;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:0 12px 28px rgba(0,0,0,.18),0 2px 6px rgba(0,0,0,.08);font-family:var(--ods-font-family-sans);color:var(--ods-text-body);outline:none}.ods-ctxmenu__list{list-style:none;margin:0;padding:0}.ods-ctxmenu__item{display:flex;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-3);cursor:pointer;font-size:var(--ods-font-size-sm);line-height:1.4;color:var(--ods-text-body);user-select:none;transition:background .08s ease,color .08s ease}.ods-ctxmenu__item--active{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-ctxmenu__item--danger{color:var(--ods-status-failed-fg)}.ods-ctxmenu__item--danger.ods-ctxmenu__item--active{background:var(--ods-status-failed-bg)}.ods-ctxmenu__item--disabled{cursor:not-allowed;opacity:.5}.ods-ctxmenu__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--ods-text-tertiary)}.ods-ctxmenu__icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-ctxmenu__item--active .ods-ctxmenu__icon{color:var(--ods-accent)}.ods-ctxmenu__item--danger .ods-ctxmenu__icon{color:inherit}.ods-ctxmenu__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-ctxmenu__shortcut{flex-shrink:0;padding:1px 6px;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);color:var(--ods-text-tertiary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1.4}.ods-ctxmenu__separator{list-style:none;margin:var(--ods-space-1) 0;height:1px;background:var(--ods-border-default);pointer-events:none}@media(prefers-reduced-motion: reduce){.ods-ctxmenu__item{transition:none}}.ods-stack{display:flex;flex-direction:column;min-width:0}.ods-stack--inline{display:inline-flex}.ods-stack--full{width:100%}.ods-stack--dir-row{flex-direction:row}.ods-stack--dir-column{flex-direction:column}.ods-stack--dir-row-reverse{flex-direction:row-reverse}.ods-stack--dir-column-reverse{flex-direction:column-reverse}.ods-grid{display:grid;min-width:0}.ods-grid__item{min-width:0;min-height:0}.ods-divider{border:0;margin:0;background:rgba(0,0,0,0);flex-shrink:0}.ods-divider--horizontal{width:100%;height:0;border-top:1px solid var(--ods-border-default)}.ods-divider--vertical{width:0;align-self:stretch;border-left:1px solid var(--ods-border-default)}.ods-divider--solid.ods-divider--horizontal{border-top-style:solid}.ods-divider--solid.ods-divider--vertical{border-left-style:solid}.ods-divider--dashed.ods-divider--horizontal{border-top-style:dashed}.ods-divider--dashed.ods-divider--vertical{border-left-style:dashed}.ods-divider--dotted.ods-divider--horizontal{border-top-style:dotted}.ods-divider--dotted.ods-divider--vertical{border-left-style:dotted}.ods-divider--tone-default{border-color:var(--ods-border-default)}.ods-divider--tone-subtle{border-color:var(--ods-surface-muted)}.ods-divider--tone-strong{border-color:var(--ods-text-tertiary)}.ods-divider--tone-accent{border-color:var(--ods-accent)}.ods-divider--spacing-0.ods-divider--horizontal{margin-top:var(--ods-space-0);margin-bottom:var(--ods-space-0)}.ods-divider--spacing-0.ods-divider--vertical{margin-left:var(--ods-space-0);margin-right:var(--ods-space-0)}.ods-divider--spacing-1.ods-divider--horizontal{margin-top:var(--ods-space-1);margin-bottom:var(--ods-space-1)}.ods-divider--spacing-1.ods-divider--vertical{margin-left:var(--ods-space-1);margin-right:var(--ods-space-1)}.ods-divider--spacing-2.ods-divider--horizontal{margin-top:var(--ods-space-2);margin-bottom:var(--ods-space-2)}.ods-divider--spacing-2.ods-divider--vertical{margin-left:var(--ods-space-2);margin-right:var(--ods-space-2)}.ods-divider--spacing-3.ods-divider--horizontal{margin-top:var(--ods-space-3);margin-bottom:var(--ods-space-3)}.ods-divider--spacing-3.ods-divider--vertical{margin-left:var(--ods-space-3);margin-right:var(--ods-space-3)}.ods-divider--spacing-4.ods-divider--horizontal{margin-top:var(--ods-space-4);margin-bottom:var(--ods-space-4)}.ods-divider--spacing-4.ods-divider--vertical{margin-left:var(--ods-space-4);margin-right:var(--ods-space-4)}.ods-divider--spacing-5.ods-divider--horizontal{margin-top:var(--ods-space-5);margin-bottom:var(--ods-space-5)}.ods-divider--spacing-5.ods-divider--vertical{margin-left:var(--ods-space-5);margin-right:var(--ods-space-5)}.ods-divider--spacing-6.ods-divider--horizontal{margin-top:var(--ods-space-6);margin-bottom:var(--ods-space-6)}.ods-divider--spacing-6.ods-divider--vertical{margin-left:var(--ods-space-6);margin-right:var(--ods-space-6)}.ods-divider--spacing-7.ods-divider--horizontal{margin-top:var(--ods-space-7);margin-bottom:var(--ods-space-7)}.ods-divider--spacing-7.ods-divider--vertical{margin-left:var(--ods-space-7);margin-right:var(--ods-space-7)}.ods-divider--spacing-8.ods-divider--horizontal{margin-top:var(--ods-space-8);margin-bottom:var(--ods-space-8)}.ods-divider--spacing-8.ods-divider--vertical{margin-left:var(--ods-space-8);margin-right:var(--ods-space-8)}.ods-divider--full{width:100%}.ods-divider--labeled{display:flex;align-items:center;gap:var(--ods-space-3)}.ods-divider--labeled.ods-divider--horizontal{width:100%;border:0}.ods-divider--labeled.ods-divider--vertical{flex-direction:column;align-self:stretch;width:auto;border:0}.ods-divider--labeled .ods-divider__line{flex:1 1 auto;border-color:inherit}.ods-divider--labeled.ods-divider--horizontal .ods-divider__line{height:0;border-top:1px solid var(--ods-border-default)}.ods-divider--labeled.ods-divider--vertical .ods-divider__line{width:0;border-left:1px solid var(--ods-border-default)}.ods-divider--labeled.ods-divider--dashed.ods-divider--horizontal .ods-divider__line{border-top-style:dashed}.ods-divider--labeled.ods-divider--dotted.ods-divider--horizontal .ods-divider__line{border-top-style:dotted}.ods-divider--labeled.ods-divider--dashed.ods-divider--vertical .ods-divider__line{border-left-style:dashed}.ods-divider--labeled.ods-divider--dotted.ods-divider--vertical .ods-divider__line{border-left-style:dotted}.ods-divider--labeled.ods-divider--tone-subtle .ods-divider__line{border-color:var(--ods-surface-muted)}.ods-divider--labeled.ods-divider--tone-strong .ods-divider__line{border-color:var(--ods-text-tertiary)}.ods-divider--labeled.ods-divider--tone-accent .ods-divider__line{border-color:var(--ods-accent)}.ods-divider--labeled .ods-divider__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);white-space:nowrap}.ods-accordion{display:flex;flex-direction:column;font-family:var(--ods-font-family-sans)}.ods-accordion--disabled{opacity:.7;pointer-events:none}.ods-accordion__item{border-bottom:1px solid var(--ods-border-default)}.ods-accordion__item:last-child{border-bottom:0}.ods-accordion--bordered{border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);overflow:hidden}.ods-accordion--separated{gap:var(--ods-space-2)}.ods-accordion--separated .ods-accordion__item{border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);overflow:hidden}.ods-accordion__trigger{display:flex;align-items:center;gap:var(--ods-space-3);width:100%;padding:var(--ods-space-3) var(--ods-space-4);background:rgba(0,0,0,0);border:0;text-align:left;color:var(--ods-text-primary);font-family:inherit;font-size:var(--ods-font-size-md);font-weight:500;line-height:1.4;cursor:pointer;transition:background .12s ease}.ods-accordion__trigger:hover:not(:disabled){background:var(--ods-surface-muted)}.ods-accordion__trigger:focus-visible{outline:2px solid var(--ods-accent);outline-offset:-2px}.ods-accordion__trigger:disabled{cursor:not-allowed;opacity:.55}.ods-accordion__icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--ods-text-tertiary);flex-shrink:0}.ods-accordion__icon>svg{width:18px;height:18px;color:inherit !important;fill:currentColor}.ods-accordion__label-wrap{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.ods-accordion__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-accordion__description{font-size:var(--ods-font-size-sm);font-weight:400;color:var(--ods-text-tertiary)}.ods-accordion__trailing{flex-shrink:0;color:var(--ods-text-tertiary)}.ods-accordion__chevron{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform .16s ease}.ods-accordion__chevron>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-accordion__chevron--open{transform:rotate(180deg)}.ods-accordion__content{padding:0 var(--ods-space-4) var(--ods-space-4);color:var(--ods-text-body);font-size:var(--ods-font-size-sm);line-height:var(--ods-line-height-base)}.ods-accordion--sm .ods-accordion__trigger{padding:var(--ods-space-2) var(--ods-space-3);font-size:var(--ods-font-size-sm)}.ods-accordion--sm .ods-accordion__content{padding:0 var(--ods-space-3) var(--ods-space-3);font-size:var(--ods-font-size-xs)}.ods-accordion--sm .ods-accordion__icon,.ods-accordion--sm .ods-accordion__chevron{width:16px;height:16px}.ods-accordion--sm .ods-accordion__icon>svg{width:14px;height:14px}.ods-accordion--sm .ods-accordion__chevron>svg{width:12px;height:12px}.ods-accordion--lg .ods-accordion__trigger{padding:var(--ods-space-4) var(--ods-space-5);font-size:var(--ods-font-size-lg)}.ods-accordion--lg .ods-accordion__content{padding:0 var(--ods-space-5) var(--ods-space-5);font-size:var(--ods-font-size-md)}.ods-accordion--lg .ods-accordion__icon,.ods-accordion--lg .ods-accordion__chevron{width:24px;height:24px}.ods-accordion--lg .ods-accordion__icon>svg{width:22px;height:22px}.ods-accordion--lg .ods-accordion__chevron>svg{width:16px;height:16px}@media(prefers-reduced-motion: reduce){.ods-accordion__chevron,.ods-accordion__trigger{transition:none}}.ods-scroll-area{position:relative;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--ods-border-default) rgba(0,0,0,0)}.ods-scroll-area:focus{outline:none}.ods-scroll-area:focus-visible{outline:2px solid var(--ods-accent);outline-offset:-2px;border-radius:var(--ods-radius-1)}.ods-scroll-area::-webkit-scrollbar{width:var(--ods-scrollbar-size, 10px);height:var(--ods-scrollbar-size, 10px)}.ods-scroll-area::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.ods-scroll-area::-webkit-scrollbar-thumb{background:var(--ods-border-default);border-radius:var(--ods-radius-pill);border:2px solid rgba(0,0,0,0);background-clip:padding-box;transition:background .16s ease}.ods-scroll-area::-webkit-scrollbar-thumb:hover{background:var(--ods-text-tertiary);background-clip:padding-box}.ods-scroll-area::-webkit-scrollbar-thumb:active{background:var(--ods-text-body);background-clip:padding-box}.ods-scroll-area--axis-vertical{overflow-x:hidden;overflow-y:auto}.ods-scroll-area--axis-horizontal{overflow-x:auto;overflow-y:hidden}.ods-scroll-area--axis-both{overflow:auto}.ods-scroll-area--behavior-hover::-webkit-scrollbar-thumb{background:rgba(0,0,0,0)}.ods-scroll-area--behavior-hover:hover::-webkit-scrollbar-thumb,.ods-scroll-area--behavior-hover:focus-within::-webkit-scrollbar-thumb,.ods-scroll-area--behavior-hover:active::-webkit-scrollbar-thumb{background:var(--ods-border-default);background-clip:padding-box}.ods-scroll-area--behavior-none{scrollbar-width:none}.ods-scroll-area--behavior-none::-webkit-scrollbar{display:none}.ods-scroll-area--sm{--ods-scrollbar-size: 8px}.ods-scroll-area--md{--ods-scrollbar-size: 10px}.ods-scroll-area--lg{--ods-scrollbar-size: 14px}.ods-scroll-area--full-height{height:100%;max-height:100%}.ods-scroll-area--full-width{width:100%;max-width:100%}.ods-confirm-dialog__title{display:inline-flex;align-items:center;gap:var(--ods-space-2)}.ods-confirm-dialog__title-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.ods-confirm-dialog__title-icon>svg{width:18px;height:18px;color:inherit !important;fill:currentColor}.ods-confirm-dialog__title--danger{color:var(--ods-status-failed-fg)}.ods-confirm-dialog__title--warning{color:var(--ods-status-pending-fg)}.ods-confirm-dialog__title--primary{color:var(--ods-text-primary)}.ods-confirm-dialog__title--danger .ods-confirm-dialog__title-icon{color:var(--ods-status-failed-fg)}.ods-confirm-dialog__title--warning .ods-confirm-dialog__title-icon{color:var(--ods-status-pending-fg)}.ods-confirm-dialog__title--primary .ods-confirm-dialog__title-icon{color:var(--ods-accent)}.ods-confirm-dialog__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);width:100%}.ods-confirm-dialog__require{display:flex;flex-direction:column;gap:var(--ods-space-1);margin-top:var(--ods-space-3)}.ods-confirm-dialog__require-label{font-size:var(--ods-font-size-sm);color:var(--ods-text-body)}.ods-confirm-dialog__require-label strong{font-family:var(--ods-font-family-mono);font-weight:600;color:var(--ods-text-primary);background:var(--ods-surface-muted);padding:1px 6px;border-radius:var(--ods-radius-1)}.ods-confirm-dialog__require-input{height:var(--ods-layout-control-height, 36px);padding:0 var(--ods-space-3);border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-primary);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm)}.ods-confirm-dialog__require-input:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px;border-color:var(--ods-accent)}.ods-confirm-dialog__require-input[aria-invalid=true]{border-color:var(--ods-status-failed-fg)}.ods-confirm-dialog__require-input:disabled{opacity:.6;cursor:not-allowed}.ods-coachmark{position:fixed;z-index:1200;width:320px;max-width:calc(100vw - var(--ods-space-4)*2);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:0 16px 36px rgba(0,0,0,.2),0 4px 8px rgba(0,0,0,.08);font-family:var(--ods-font-family-sans);color:var(--ods-text-body);display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-coachmark__close{position:absolute;top:var(--ods-space-2);right:var(--ods-space-2);display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border-radius:var(--ods-radius-1);border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;transition:background .12s ease,color .12s ease}.ods-coachmark__close:hover{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-coachmark__close:focus-visible{outline:2px solid var(--ods-accent);outline-offset:1px}.ods-coachmark__close>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-coachmark__header{display:flex;align-items:center;gap:var(--ods-space-2);padding-right:var(--ods-space-5)}.ods-coachmark__icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--ods-radius-1);background:var(--ods-accent-soft);color:var(--ods-accent);flex-shrink:0}.ods-coachmark__icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-coachmark__title{margin:0;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-coachmark__description{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-coachmark__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);margin-top:var(--ods-space-2)}.ods-coachmark__dots{display:inline-flex;align-items:center;gap:6px}.ods-coachmark__dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:var(--ods-border-default);transition:background .16s ease}.ods-coachmark__dot--past{background:var(--ods-accent-border, var(--ods-accent));opacity:.5}.ods-coachmark__dot--active{background:var(--ods-accent);width:18px}.ods-coachmark__actions{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-coachmark__btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:var(--ods-radius-1);border:1px solid rgba(0,0,0,0);font-family:inherit;font-size:var(--ods-font-size-sm);font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease}.ods-coachmark__btn:focus-visible{outline:2px solid var(--ods-accent);outline-offset:2px}.ods-coachmark__btn--ghost{background:rgba(0,0,0,0);color:var(--ods-text-tertiary)}.ods-coachmark__btn--ghost:hover{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-coachmark__btn--secondary{background:var(--ods-surface-muted);color:var(--ods-text-body)}.ods-coachmark__btn--secondary:hover{background:var(--ods-surface-muted);filter:brightness(0.96)}.ods-coachmark__btn--primary{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-coachmark__btn--primary:hover{filter:brightness(0.95)}.ods-coachmark--top{transform-origin:bottom center}.ods-coachmark--bottom{transform-origin:top center}.ods-coachmark--left{transform-origin:right center}.ods-coachmark--right{transform-origin:left center}.ods-coachmark__halo{position:fixed;z-index:1199;pointer-events:none;border-radius:var(--ods-radius-2);box-shadow:0 0 0 4px var(--ods-accent-soft),0 0 0 2px var(--ods-accent)}@media(prefers-reduced-motion: reduce){.ods-coachmark,.ods-coachmark__halo,.ods-coachmark__dot,.ods-coachmark__btn,.ods-coachmark__close{transition:none}}.ods-spotlight{position:fixed;inset:0;z-index:1150;pointer-events:none}.ods-spotlight__dim{position:absolute;inset:0;pointer-events:auto;cursor:pointer}.ods-spotlight__dim--pass-through{cursor:default}.ods-spotlight__content{position:relative;z-index:1;pointer-events:auto;width:100%;height:100%}@media(prefers-reduced-motion: reduce){.ods-spotlight{transition:none}}.ods-progress-bar{display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%;font-family:var(--ods-font-family-sans)}.ods-progress-bar__header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--ods-space-2)}.ods-progress-bar__label{font-size:var(--ods-font-size-sm);color:var(--ods-text-body);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ods-progress-bar__value-label{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-progress-bar__track{position:relative;width:100%;height:8px;background:var(--ods-surface-muted);border-radius:var(--ods-radius-pill);overflow:hidden}.ods-progress-bar__fill{position:absolute;inset-block:0;left:0;background:var(--ods-accent);border-radius:inherit;transition:width .24s ease}.ods-progress-bar--default .ods-progress-bar__fill{background:var(--ods-accent)}.ods-progress-bar--success .ods-progress-bar__fill{background:var(--ods-status-success-fg)}.ods-progress-bar--warning .ods-progress-bar__fill{background:var(--ods-status-pending-fg)}.ods-progress-bar--danger .ods-progress-bar__fill{background:var(--ods-status-failed-fg)}.ods-progress-bar--sm .ods-progress-bar__track{height:4px}.ods-progress-bar--lg .ods-progress-bar__track{height:12px}.ods-progress-bar--indeterminate .ods-progress-bar__fill{width:33%;transition:none;animation:ods-progress-bar-sweep 1.4s ease-in-out infinite}@keyframes ods-progress-bar-sweep{0%{left:-33%}50%{left:50%}100%{left:100%}}@media(prefers-reduced-motion: reduce){.ods-progress-bar--indeterminate .ods-progress-bar__fill{animation:ods-progress-bar-pulse 1.6s ease-in-out infinite;left:0;width:100%}@keyframes ods-progress-bar-pulse{0%,100%{opacity:.4}50%{opacity:1}}}.ods-inline-msg{display:inline-flex;align-items:center;gap:6px;font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);line-height:1.4;min-width:0}.ods-inline-msg__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ods-inline-msg__icon>svg{width:14px;height:14px;color:inherit !important;fill:currentColor}.ods-inline-msg__text{min-width:0}.ods-inline-msg--info{color:var(--ods-accent)}.ods-inline-msg--success{color:var(--ods-status-success-fg)}.ods-inline-msg--warning{color:var(--ods-status-pending-fg)}.ods-inline-msg--danger{color:var(--ods-status-failed-fg)}.ods-inline-msg--sm{font-size:var(--ods-font-size-xs);gap:4px}.ods-inline-msg--sm .ods-inline-msg__icon>svg{width:12px;height:12px}.ods-timeline{list-style:none;margin:0;padding:var(--ods-space-1);display:flex;flex-direction:column;font-family:var(--ods-font-family-sans)}.ods-timeline__item{display:flex;gap:var(--ods-space-3);width:100%}.ods-timeline__rail{display:flex;flex-direction:column;align-items:center;width:20px;flex-shrink:0}.ods-timeline__dot{display:inline-flex;align-items:center;justify-content:center;width:10px;height:10px;border-radius:var(--ods-radius-pill);color:var(--ods-surface-canvas)}.ods-timeline__dot--default{background:var(--ods-accent);box-shadow:0 0 0 2px var(--ods-accent-soft)}.ods-timeline__dot--success{background:var(--ods-status-success);box-shadow:0 0 0 2px var(--ods-status-success-bg)}.ods-timeline__dot--warning{background:var(--ods-status-pending);box-shadow:0 0 0 2px var(--ods-status-pending-bg)}.ods-timeline__dot--error{background:var(--ods-status-failed);box-shadow:0 0 0 2px var(--ods-status-failed-bg)}.ods-timeline__dot--muted{background:var(--ods-text-tertiary);box-shadow:0 0 0 2px var(--ods-surface-muted)}.ods-timeline__dot>svg,.ods-timeline__dot>*{width:6px;height:6px}.ods-timeline__dot>svg{color:inherit !important;fill:currentColor}@media(prefers-reduced-motion: reduce){.ods-timeline .ods-timeline__item{transition:none !important}}.ods-timeline__line{flex:1 1 auto;width:1px;background:var(--ods-border-default);min-height:24px}.ods-timeline__body{display:flex;flex-direction:column;gap:2px;padding:0 0 var(--ods-space-4);flex:1 1 auto;min-width:0}.ods-timeline .ods-timeline__item:last-child .ods-timeline__body{padding-bottom:0}.ods-timeline__title{font-size:var(--ods-font-size-base);font-weight:600;color:var(--ods-text-primary);line-height:var(--ods-line-height-tight)}.ods-timeline__desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-snug)}.ods-timeline__meta{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-timeline--sm .ods-timeline__title{font-size:var(--ods-font-size-sm)}.ods-timeline--sm .ods-timeline__desc,.ods-timeline--sm .ods-timeline__meta{font-size:var(--ods-font-size-xs)}.ods-timeline--sm .ods-timeline__dot{width:8px;height:8px}.ods-chat{display:flex;align-items:flex-start;gap:var(--ods-space-2);width:100%;font-family:var(--ods-font-family-sans)}.ods-chat--sm{gap:var(--ods-space-1-5)}.ods-chat--sm .ods-chat__bubble{padding:var(--ods-space-1-5) var(--ods-space-2-5);font-size:var(--ods-font-size-sm)}.ods-chat--lg{gap:var(--ods-space-3)}.ods-chat--lg .ods-chat__bubble{padding:var(--ods-space-3) var(--ods-space-4);font-size:var(--ods-font-size-md)}.ods-chat__avatar-slot{flex-shrink:0}.ods-chat__column{display:flex;flex-direction:column;gap:var(--ods-space-1);max-width:85%;min-width:0}.ods-chat__bubble{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-2) var(--ods-space-3);border-radius:var(--ods-radius-2)}.ods-chat__body{font-size:var(--ods-font-size-base);line-height:var(--ods-line-height-base)}.ods-chat__body>*+*{margin-top:var(--ods-space-2)}.ods-chat__body>pre{margin:0;padding:var(--ods-space-2);background:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);overflow-x:auto}.ods-chat__attachments{display:flex;flex-wrap:wrap;gap:var(--ods-space-1-5)}.ods-chat__meta{display:flex;align-items:center;gap:var(--ods-space-1-5);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1}.ods-chat__author{font-weight:600}.ods-chat__time{opacity:.7}.ods-chat__status{display:inline-flex;align-items:center;justify-content:center;color:var(--ods-text-tertiary)}.ods-chat__status--read{color:var(--ods-status-success)}.ods-chat__status--failed{color:var(--ods-status-failed)}.ods-chat__actions{display:flex;align-items:center;gap:var(--ods-space-1-5)}.ods-chat__typing{display:inline-flex;align-items:center;gap:4px;padding:2px 0}.ods-chat__typing-dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.55;animation:ods-chat-typing 1.2s var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) infinite}.ods-chat__typing-dot:nth-child(2){animation-delay:.18s}.ods-chat__typing-dot:nth-child(3){animation-delay:.36s}@media(prefers-reduced-motion: reduce){.ods-chat__typing-dot{animation:none;opacity:.7}}.ods-chat--user{flex-direction:row-reverse}.ods-chat--user .ods-chat__column{align-items:flex-end}.ods-chat--user .ods-chat__bubble{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-chat--user .ods-chat__meta{justify-content:flex-end;color:var(--ods-text-tertiary)}.ods-chat--bot .ods-chat__bubble{background:var(--ods-surface-subtle);color:var(--ods-text-primary);border:1px solid var(--ods-border-default)}.ods-chat--bot .ods-chat__meta{color:var(--ods-text-tertiary)}.ods-chat--system .ods-chat__bubble{background:var(--ods-surface-canvas);color:var(--ods-text-body);border:1px dashed var(--ods-border-default)}.ods-chat--system .ods-chat__meta{color:var(--ods-text-tertiary)}.ods-chat--failed.ods-chat--user .ods-chat__bubble{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border:1px solid var(--ods-status-failed)}@keyframes ods-chat-typing{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-3px);opacity:1}}.ods-progress-ring{position:relative;display:inline-flex;align-items:center;justify-content:center;font-family:var(--ods-font-family-sans);color:var(--ods-accent)}.ods-progress-ring__svg{display:block}.ods-progress-ring__track{stroke:var(--ods-border-default)}.ods-progress-ring__fill{stroke:currentColor;transition:stroke-dashoffset var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));will-change:stroke-dashoffset}.ods-progress-ring__center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.ods-progress-ring__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-md);font-weight:500;color:var(--ods-text-primary)}.ods-progress-ring--primary{color:var(--ods-accent)}.ods-progress-ring--success{color:var(--ods-status-success)}.ods-progress-ring--warning{color:var(--ods-status-pending)}.ods-progress-ring--error{color:var(--ods-status-failed)}.ods-progress-ring--neutral{color:var(--ods-text-tertiary)}.ods-progress-ring--indeterminate .ods-progress-ring__svg{animation:ods-progress-ring-spin 900ms linear infinite}@media(prefers-reduced-motion: reduce){.ods-progress-ring--indeterminate .ods-progress-ring__svg{animation:none}.ods-progress-ring .ods-progress-ring__fill{transition:none}}@keyframes ods-progress-ring-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.ods-popover__anchor{display:inline-flex;align-items:center;cursor:pointer}.ods-popover{min-width:200px;max-width:320px;padding:var(--ods-space-3) var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);line-height:var(--ods-line-height-base)}.ods-popover__arrow{position:absolute;width:10px;height:10px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);transform:rotate(45deg);pointer-events:none;z-index:-1}.ods-popover[data-placement=top] .ods-popover__arrow{bottom:-6px;left:50%;margin-left:-5px;border-top:none;border-left:none}.ods-popover[data-placement=bottom] .ods-popover__arrow{top:-6px;left:50%;margin-left:-5px;border-bottom:none;border-right:none}.ods-popover[data-placement=left] .ods-popover__arrow{right:-6px;top:50%;margin-top:-5px;border-left:none;border-bottom:none}.ods-popover[data-placement=right] .ods-popover__arrow{left:-6px;top:50%;margin-top:-5px;border-right:none;border-top:none}.ods-hover-card__anchor{display:inline-flex;align-items:center}.ods-hover-card{min-width:240px;max-width:320px;padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-base);color:var(--ods-text-primary);line-height:var(--ods-line-height-base)}.ods-sheet__backdrop{position:fixed;inset:0;z-index:900;background:rgba(10,10,10,.45)}.ods-sheet{position:fixed;z-index:901;display:flex;flex-direction:column;background:var(--ods-surface-canvas);font-family:var(--ods-font-family-sans);will-change:transform;outline:none;box-shadow:var(--ods-shadow-pop);border:1px solid var(--ods-border-default)}.ods-sheet--bottom{left:0;right:0;bottom:0;border-radius:var(--ods-radius-2) var(--ods-radius-2) 0 0;max-height:100vh}.ods-sheet--top{left:0;right:0;top:0;border-radius:0 0 var(--ods-radius-2) var(--ods-radius-2);max-height:100vh}.ods-sheet--left{top:0;bottom:0;left:0;border-radius:0 var(--ods-radius-2) var(--ods-radius-2) 0;max-width:100vw}.ods-sheet--right{top:0;bottom:0;right:0;border-radius:var(--ods-radius-2) 0 0 var(--ods-radius-2);max-width:100vw}.ods-sheet__handle{width:36px;height:3px;background:var(--ods-border-strong);border-radius:var(--ods-radius-pill);margin:var(--ods-space-2) auto 0;flex-shrink:0}.ods-sheet__head{display:flex;flex-direction:column;gap:var(--ods-space-1);padding:var(--ods-space-4) var(--ods-space-5) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default);flex-shrink:0}.ods-sheet__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-xl);font-weight:500;color:var(--ods-text-primary);letter-spacing:var(--ods-tracking-tight);line-height:var(--ods-line-height-tight)}.ods-sheet__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-sheet__body{flex:1 1 auto;overflow-y:auto;padding:var(--ods-space-4) var(--ods-space-5)}.ods-sheet__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--ods-space-2);padding:var(--ods-space-3) var(--ods-space-5);border-top:1px solid var(--ods-border-default);flex-shrink:0}.ods-bar-chart{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-bar-chart__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);margin-bottom:var(--ods-space-2)}.ods-bar-chart__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-bar-chart__total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-bar-chart__frame{display:flex;gap:var(--ods-space-2)}.ods-bar-chart__frame--horizontal{flex-direction:column}.ods-bar-chart__y-axis{position:relative;flex-shrink:0;width:32px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);padding-right:var(--ods-space-1)}.ods-bar-chart__y-axis--horizontal{width:100%;height:16px;padding:0;padding-top:var(--ods-space-1)}.ods-bar-chart__tick{line-height:1;white-space:nowrap}.ods-bar-chart__plot{position:relative;flex:1 1 auto;min-width:0}.ods-bar-chart__plot--with-x-axis::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--ods-border-default)}.ods-bar-chart__grid{position:absolute;inset:0;pointer-events:none}.ods-bar-chart__gridline{position:absolute;background:var(--ods-border-soft);opacity:.5}.ods-bar-chart__gridline--baseline{background:var(--ods-border-default);opacity:1}.ods-bar-chart__bars{position:relative;display:flex;align-items:flex-end;gap:var(--ods-space-2);height:100%;z-index:1}.ods-bar-chart__bars--horizontal{flex-direction:column;align-items:stretch;justify-content:space-between;width:100%}.ods-bar-chart__bars--grouped .ods-bar-chart__cat{display:flex;align-items:flex-end;gap:2px;flex:1 1 auto}.ods-bar-chart__bars--stacked .ods-bar-chart__cat{position:relative;flex:1 1 auto;height:100%}.ods-bar-chart__cat{display:flex;align-items:flex-end;flex:1 1 auto;height:100%}.ods-bar-chart__col{flex:1 1 auto;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;height:100%;border-radius:var(--ods-radius-1);transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-bar-chart__col--interactive{cursor:pointer}.ods-bar-chart__col--interactive:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-bar-chart__plot--interactive:hover .ods-bar-chart__col--interactive,.ods-bar-chart__plot--interactive:focus-within .ods-bar-chart__col--interactive{opacity:.55}.ods-bar-chart__plot--interactive .ods-bar-chart__col--interactive:hover,.ods-bar-chart__plot--interactive .ods-bar-chart__col--interactive:focus-visible,.ods-bar-chart__plot--interactive .ods-bar-chart__col--active{opacity:1}.ods-bar-chart__bar{width:100%;min-height:2px;border-radius:var(--ods-radius-1) var(--ods-radius-1) 0 0;background:var(--ods-accent-soft);transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),filter var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-bar-chart--horizontal .ods-bar-chart__bar{height:100%;width:auto;border-radius:0 var(--ods-radius-1) var(--ods-radius-1) 0}.ods-bar-chart__col--interactive:hover .ods-bar-chart__bar,.ods-bar-chart__col--interactive:focus-visible .ods-bar-chart__bar,.ods-bar-chart__col--active .ods-bar-chart__bar{filter:brightness(0.85)}.ods-bar-chart__sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}.ods-bar-chart__tooltip{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:var(--ods-space-2);padding:4px 8px;background:var(--ods-text-primary);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1;white-space:nowrap;pointer-events:none;box-shadow:var(--ods-shadow-1, 0 2px 8px rgba(0, 0, 0, 0.15))}.ods-bar-chart__tooltip-label{font-weight:500;opacity:.85}.ods-bar-chart__tooltip-value{font-variant-numeric:tabular-nums lining-nums;font-weight:600}.ods-bar-chart__labels{display:flex;gap:var(--ods-space-2);margin-top:var(--ods-space-1)}.ods-bar-chart__labels--horizontal{flex-direction:column;align-items:flex-end;gap:0;justify-content:space-between;margin-top:0}.ods-bar-chart__labels-spacer{flex-shrink:0;width:32px;padding-right:var(--ods-space-1)}.ods-bar-chart__label{flex:1 1 auto;text-align:center;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-bar-chart__label--hi{color:var(--ods-accent);font-weight:600}.ods-bar-chart__label--active{color:var(--ods-text-primary);font-weight:600}.ods-bar-chart__legend{list-style:none;margin:var(--ods-space-2) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-bar-chart__legend-item{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-size:var(--ods-font-size-xs);color:var(--ods-text-body)}.ods-bar-chart__legend-dot{width:10px;height:10px;border-radius:var(--ods-radius-1);flex-shrink:0}.ods-line-chart{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-line-chart__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);margin-bottom:var(--ods-space-2)}.ods-line-chart__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-line-chart__total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-line-chart__frame{display:flex;gap:var(--ods-space-2)}.ods-line-chart__y-axis{position:relative;flex-shrink:0;width:38px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);padding-right:var(--ods-space-1)}.ods-line-chart__tick{line-height:1;white-space:nowrap}.ods-line-chart__plot{position:relative;flex:1 1 auto;min-width:0}.ods-line-chart__plot--with-x-axis::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--ods-border-default);pointer-events:none}.ods-line-chart__plot--clickable{cursor:crosshair}.ods-line-chart__svg{width:100%;height:100%;display:block}.ods-line-chart__dot{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--ods-surface-canvas);border:2px solid var(--ods-accent);transform:translate(-50%, -50%);pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.15);z-index:1}.ods-line-chart__crosshair{position:absolute;top:0;bottom:0;width:1px;background:linear-gradient(var(--ods-border-default) 50%, transparent 0);background-size:1px 4px;transform:translateX(-50%);pointer-events:none;z-index:1}.ods-line-chart__brush{position:absolute;top:0;bottom:0;background:var(--ods-accent-soft);opacity:.65;border-left:2px solid var(--ods-accent);border-right:2px solid var(--ods-accent);pointer-events:none;z-index:1;display:flex;align-items:flex-start;justify-content:center}.ods-line-chart__brush-label{margin-top:4px;padding:2px 6px;background:var(--ods-text-primary);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;white-space:nowrap;opacity:1;box-shadow:var(--ods-shadow-1, 0 2px 8px rgba(0, 0, 0, 0.15))}.ods-line-chart__brush-count{opacity:.7;font-weight:500}.ods-line-chart__head-right{display:inline-flex;align-items:center;gap:var(--ods-space-2)}.ods-line-chart__reset{appearance:none;border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-body);border-radius:var(--ods-radius-1);padding:2px var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);cursor:pointer;transition:background-color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-line-chart__reset:hover{background:var(--ods-surface-muted)}.ods-line-chart__reset:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-line-chart--zoomable .ods-line-chart__plot--zoomable{cursor:crosshair}.ods-line-chart__tooltip{position:absolute;z-index:2;display:inline-flex;flex-direction:column;gap:4px;padding:6px 10px;background:var(--ods-text-primary);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1.2;white-space:nowrap;pointer-events:none;box-shadow:var(--ods-shadow-1, 0 2px 8px rgba(0, 0, 0, 0.15));margin-top:-8px}.ods-line-chart__tooltip-x{font-weight:500;opacity:.85}.ods-line-chart__tooltip-row{display:inline-flex;align-items:center;gap:6px}.ods-line-chart__tooltip-dot{display:inline-block;width:8px;height:8px;border-radius:var(--ods-radius-1);flex-shrink:0}.ods-line-chart__tooltip-label{opacity:.85}.ods-line-chart__tooltip-value{font-variant-numeric:tabular-nums lining-nums;font-weight:600;margin-left:auto}.ods-line-chart__labels{display:flex;gap:var(--ods-space-2);margin-top:var(--ods-space-1)}.ods-line-chart__labels-spacer{flex-shrink:0;width:38px;padding-right:var(--ods-space-1)}.ods-line-chart__labels-row{flex:1 1 auto;position:relative;height:16px;min-width:0}.ods-line-chart__label{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));white-space:nowrap;top:0}.ods-line-chart__label--active{color:var(--ods-text-primary);font-weight:600}.ods-line-chart__legend{list-style:none;margin:var(--ods-space-2) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-line-chart__legend-item{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-size:var(--ods-font-size-xs);color:var(--ods-text-body)}.ods-line-chart__legend-dot{width:10px;height:10px;border-radius:var(--ods-radius-1);flex-shrink:0}.ods-donut{display:flex;flex-direction:column;align-items:center;gap:var(--ods-space-3);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-donut__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary);align-self:flex-start}.ods-donut__ring{position:relative;display:inline-block}.ods-donut__center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;pointer-events:none}.ods-donut__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xl);font-weight:500;color:var(--ods-text-primary)}.ods-donut__small{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-donut__seg{transition:stroke-width var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));outline:none}.ods-donut__seg--interactive{cursor:pointer}.ods-donut__ring:hover .ods-donut__seg--interactive,.ods-donut__ring:focus-within .ods-donut__seg--interactive{opacity:.55}.ods-donut__ring .ods-donut__seg--interactive:hover,.ods-donut__ring .ods-donut__seg--interactive:focus-visible{opacity:1}.ods-donut__seg--interactive:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-donut__legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--ods-space-1);width:100%}.ods-donut__legend-item{display:flex;align-items:center;gap:var(--ods-space-2);font-size:var(--ods-font-size-sm);color:var(--ods-text-primary)}.ods-donut__dot{width:8px;height:8px;border-radius:var(--ods-radius-1);flex-shrink:0}.ods-donut__legend-label{flex:1 1 auto}.ods-donut__legend-value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-donut__legend-pct{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-weight:500;color:var(--ods-text-body);min-width:36px;text-align:right}.ods-sparkline{display:inline-block;vertical-align:middle;color:var(--ods-accent);line-height:0}.ods-sparkline__svg{display:block;width:100%;height:100%}.ods-sparkline--empty{background:linear-gradient(to bottom, transparent 50%, var(--ods-border-soft) 50%, var(--ods-border-soft) calc(50% + 1px), transparent calc(50% + 1px));opacity:.5}.ods-auth-card{display:flex;flex-direction:column;gap:var(--ods-space-4);width:400px;max-width:100%;padding:var(--ods-space-7);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2);box-shadow:var(--ods-shadow-pop);font-family:var(--ods-font-family-sans)}.ods-auth-card__logo{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--ods-radius-1);background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-lg);font-weight:600;align-self:center}.ods-auth-card--left .ods-auth-card__head,.ods-auth-card--left .ods-auth-card__title,.ods-auth-card--left .ods-auth-card__desc{text-align:left;align-items:flex-start}.ods-auth-card--left .ods-auth-card__title-row{justify-content:flex-start}.ods-auth-card--left .ods-auth-card__logo{align-self:flex-start}.ods-auth-card__head{display:flex;flex-direction:column;align-items:center;gap:var(--ods-space-1);text-align:center}.ods-auth-card__title-row{display:flex;align-items:center;justify-content:center;gap:var(--ods-space-2);flex-wrap:wrap}.ods-auth-card__title{margin:0;font-family:var(--ods-font-family-serif);font-size:var(--ods-font-size-2xl);font-weight:500;letter-spacing:var(--ods-tracking-tight);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight);text-align:center}.ods-auth-card__scope{display:inline-flex;align-items:center}.ods-auth-card__desc{margin:0;font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:var(--ods-line-height-base);text-align:center}.ods-auth-card__messages{display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-auth-card__body{display:flex;flex-direction:column;gap:var(--ods-space-3)}.ods-auth-card__divider{display:block;width:100%}.ods-auth-card__footer{display:flex;align-items:center;justify-content:center;gap:var(--ods-space-1);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-auth-divider{display:flex;align-items:center;gap:var(--ods-space-3);width:100%}.ods-auth-divider__line{flex:1 1 0;min-width:0;height:1px;background:var(--ods-border-default)}.ods-auth-divider__label{flex:0 0 auto;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;color:var(--ods-text-tertiary);letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;padding:0 var(--ods-space-1)}.ods-auth-section{display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-auth-section__head{display:flex;flex-direction:column;gap:1px}.ods-auth-section__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-body);text-transform:uppercase}.ods-auth-section__desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug)}.ods-auth-section__body{display:flex;flex-direction:column;gap:var(--ods-space-2)}.ods-auth-section+.ods-auth-section{margin-top:var(--ods-space-1);padding-top:var(--ods-space-3);border-top:1px solid var(--ods-border-default)}.ods-auth-tabs{display:flex;flex-direction:column;gap:var(--ods-space-3)}.ods-auth-tabs__list{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:1px;padding:1px;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-auth-tabs__tab{position:relative;display:flex;align-items:center;justify-content:center;gap:var(--ods-space-1);padding:var(--ods-space-2);border:0;background:rgba(0,0,0,0);border-radius:var(--ods-radius-1);cursor:pointer;text-align:center;font-family:inherit;color:var(--ods-text-body);transition:color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-auth-tabs__tab:hover{color:var(--ods-text-primary)}.ods-auth-tabs__tab:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;z-index:1}.ods-auth-tabs__tab--active{color:var(--ods-text-primary)}.ods-auth-tabs__indicator{position:absolute;inset:0;background:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);z-index:0;box-shadow:var(--ods-shadow-1, 0 1px 2px rgba(0, 0, 0, 0.06))}.ods-auth-tabs__icon,.ods-auth-tabs__label{position:relative;z-index:1}.ods-auth-tabs__icon{display:inline-flex;align-items:center;color:var(--ods-accent)}.ods-auth-tabs__icon>svg{color:inherit !important;fill:currentColor}.ods-auth-tabs__label{font-size:var(--ods-font-size-sm);font-weight:600}.ods-auth-tabs__panel{display:flex;flex-direction:column;gap:var(--ods-space-3)}.ods-auth-row{display:grid;gap:var(--ods-space-3)}.ods-auth-badge{display:inline-flex;align-items:center}.ods-social-btn .ods-btn__icon{width:18px;height:18px;flex-shrink:0}.ods-social-btn.ods-social-btn--github .ods-btn__icon,.ods-social-btn.ods-social-btn--x .ods-btn__icon,.ods-social-btn.ods-social-btn--apple .ods-btn__icon{color:var(--ods-text-primary)}.ods-social-btn.ods-social-btn--github .ods-btn__icon>svg,.ods-social-btn.ods-social-btn--x .ods-btn__icon>svg,.ods-social-btn.ods-social-btn--apple .ods-btn__icon>svg{color:inherit !important;fill:currentColor}.ods-social-btn.ods-social-btn--linkedin .ods-btn__icon{color:#0a66c2}.ods-social-btn.ods-social-btn--linkedin .ods-btn__icon>svg{color:inherit !important;fill:currentColor}.ods-social-btn.ods-social-btn--icon-only{width:var(--ods-layout-control-height);padding:0;justify-content:center}.ods-social-btn.ods-social-btn--icon-only.ods-btn--sm{width:var(--ods-layout-control-height-sm)}.ods-social-btn.ods-social-btn--icon-only.ods-btn--lg{width:var(--ods-layout-control-height-lg)}.ods-resizable{display:flex;width:100%;height:100%;min-height:0;position:relative}.ods-resizable--horizontal{flex-direction:row}.ods-resizable--vertical{flex-direction:column}.ods-resizable--dragging{cursor:col-resize;user-select:none}.ods-resizable--dragging .ods-resizable__handle{background:var(--ods-accent)}.ods-resizable--vertical.ods-resizable--dragging{cursor:row-resize}.ods-resizable__panel{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.ods-resizable__panel--first{flex:0 0 auto}.ods-resizable__panel--second{flex:1 1 auto}.ods-resizable__handle{position:relative;flex-shrink:0;background:var(--ods-border-default);transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));outline:none;z-index:1}.ods-resizable--horizontal .ods-resizable__handle{width:1px;cursor:col-resize}.ods-resizable--horizontal .ods-resizable__handle::before{content:"";position:absolute;top:0;bottom:0;left:-4px;right:-4px}.ods-resizable--vertical .ods-resizable__handle{height:1px;cursor:row-resize}.ods-resizable--vertical .ods-resizable__handle::before{content:"";position:absolute;left:0;right:0;top:-4px;bottom:-4px}.ods-resizable__handle:hover{background:var(--ods-accent)}.ods-resizable__handle:focus-visible{background:var(--ods-accent);outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-resizable__grip{position:absolute;background:var(--ods-text-tertiary);border-radius:var(--ods-radius-pill);opacity:0;transition:opacity var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-resizable--horizontal .ods-resizable__grip{top:50%;left:50%;width:2px;height:24px;transform:translate(-50%, -50%)}.ods-resizable--vertical .ods-resizable__grip{left:50%;top:50%;width:24px;height:2px;transform:translate(-50%, -50%)}.ods-resizable__handle:hover .ods-resizable__grip,.ods-resizable--dragging .ods-resizable__handle .ods-resizable__grip{opacity:1;background:var(--ods-surface-canvas)}.ods-resizable-panel{position:relative;flex-shrink:0;min-width:0;min-height:0}.ods-resizable-panel--right{height:100%}.ods-resizable-panel--bottom{width:100%}.ods-resizable-panel__content{height:100%;width:100%;overflow:auto}.ods-resizable-panel__handle{position:absolute;background:rgba(0,0,0,0);outline:none;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-resizable-panel__handle:hover{background:var(--ods-accent)}.ods-resizable-panel__handle:focus-visible{background:var(--ods-accent);outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-resizable-panel--right .ods-resizable-panel__handle{top:0;right:-2px;bottom:0;width:4px;cursor:col-resize}.ods-resizable-panel--bottom .ods-resizable-panel__handle{left:0;right:0;bottom:-2px;height:4px;cursor:row-resize}.ods-resizable-panel--dragging .ods-resizable-panel__handle{background:var(--ods-accent)}.ods-resizable-panel__grip{display:none}.ods-prompt-input-wrapper{display:flex;flex-direction:column;width:100%}.ods-prompt-input{position:relative;display:flex;flex-direction:column;width:100%;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-2);font-family:var(--ods-font-family-sans);transition:border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-prompt-input:focus-within{border-color:var(--ods-border-focus);box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-prompt-input--running{border-color:var(--ods-accent)}.ods-prompt-input--error{border-color:var(--ods-status-failed)}.ods-prompt-input--disabled{opacity:.6;cursor:not-allowed}.ods-prompt-input--disabled .ods-prompt-input__textarea{cursor:not-allowed}.ods-prompt-input--drag-over{border-color:var(--ods-accent);box-shadow:0 0 0 3px var(--ods-accent-border);background:var(--ods-accent-soft)}@property --ods-prompt-ambient-angle{syntax:"<angle>";initial-value:0deg;inherits:false}@keyframes ods-prompt-ambient-spin{to{--ods-prompt-ambient-angle: 360deg}}.ods-prompt-input--border-ambient{border-color:rgba(0,0,0,0);background-clip:padding-box;box-shadow:0 0 24px -8px var(--ods-accent-border)}.ods-prompt-input--border-ambient::before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--ods-prompt-ambient-angle), transparent 0%, var(--ods-accent) 25%, transparent 50%, transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:ods-prompt-ambient-spin var(--ods-prompt-ambient-duration, 6s) linear infinite}.ods-prompt-input--border-ambient::after{content:"";position:absolute;inset:-16px;z-index:-2;background:var(--ods-gradient-glow-accent);pointer-events:none;opacity:.6}.ods-prompt-input--border-ambient.ods-prompt-input--running::after{opacity:1}.ods-prompt-input--border-ambient.ods-prompt-input--error::before{background:conic-gradient(from var(--ods-prompt-ambient-angle), transparent 0%, var(--ods-status-failed) 25%, transparent 50%, transparent 100%)}.ods-prompt-input--border-ambient.ods-prompt-input--error::after{background:var(--ods-gradient-glow-failed)}.ods-prompt-input--border-ambient:focus-within{box-shadow:0 0 32px -6px var(--ods-accent-border)}.ods-prompt-input--border-ambient.ods-prompt-input--ambient-static::before{animation:none}@media(prefers-reduced-motion: reduce){.ods-prompt-input--border-ambient::before{animation:none}}.ods-prompt-input__label{display:block;padding:var(--ods-space-2) var(--ods-space-3) 0;font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-body)}.ods-prompt-input__drop-overlay{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ods-space-1);background:var(--ods-accent-soft);border:2px dashed var(--ods-accent);border-radius:inherit;color:var(--ods-accent);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-sm);font-weight:600;pointer-events:none}.ods-prompt-input__drop-overlay>svg{fill:currentColor}.ods-prompt-input__attachments{display:flex;flex-wrap:wrap;gap:var(--ods-space-1);padding:var(--ods-space-2) var(--ods-space-3) 0}.ods-prompt-input__chip{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:22px;padding:0 var(--ods-space-1) 0 var(--ods-space-2);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);max-width:220px}.ods-prompt-input__chip-glyph{display:inline-flex;align-items:center;color:var(--ods-text-tertiary);flex-shrink:0}.ods-prompt-input__chip-glyph>svg{fill:currentColor}.ods-prompt-input__chip-thumb{width:14px;height:14px;border-radius:var(--ods-radius-1);object-fit:cover}.ods-prompt-input__chip-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;color:var(--ods-text-primary)}.ods-prompt-input__chip-size{color:var(--ods-text-tertiary);flex-shrink:0}.ods-prompt-input__chip-remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;flex-shrink:0;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-prompt-input__chip-remove>svg{fill:currentColor}.ods-prompt-input__chip-remove:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-prompt-input__chip-remove:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-prompt-input__field{position:relative;display:flex;flex-direction:column}.ods-prompt-input__textarea{width:100%;min-height:36px;padding:8px var(--ods-space-3) 0;border:0;background:rgba(0,0,0,0);outline:none;font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-md);line-height:1.4;color:var(--ods-text-primary);resize:none}.ods-prompt-input__textarea::placeholder{color:var(--ods-text-tertiary)}.ods-prompt-input__suggestions{list-style:none;margin:0;padding:var(--ods-space-1);position:absolute;bottom:calc(100% + 4px);left:0;right:0;max-height:280px;overflow-y:auto;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);box-shadow:var(--ods-shadow-pop);z-index:50}.ods-prompt-input__suggestion{display:flex;align-items:flex-start;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-prompt-input__suggestion:hover,.ods-prompt-input__suggestion--active{background:var(--ods-surface-muted)}.ods-prompt-input__suggestion-icon{display:inline-flex;width:14px;height:14px;margin-top:2px;color:var(--ods-accent);flex-shrink:0}.ods-prompt-input__suggestion-text{display:flex;flex-direction:column;gap:1px;min-width:0}.ods-prompt-input__suggestion-label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary)}.ods-prompt-input__suggestion-desc{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-prompt-input__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:4px var(--ods-space-2) 6px var(--ods-space-3)}.ods-prompt-input__toolbar-left,.ods-prompt-input__toolbar-right{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-prompt-input__count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-prompt-input__count--over{color:var(--ods-status-failed-fg);font-weight:600}.ods-prompt-input__send{display:inline-flex;align-items:center;justify-content:center;gap:var(--ods-space-1);width:28px;height:28px;padding:0;border:0;background:var(--ods-accent);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-prompt-input__send>svg{fill:currentColor}.ods-prompt-input__send:hover:not(:disabled){background:var(--ods-accent-hover);transform:translateY(-1px)}.ods-prompt-input__send:active:not(:disabled){transform:translateY(0)}.ods-prompt-input__send:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-prompt-input__send--disabled,.ods-prompt-input__send:disabled{background:var(--ods-surface-muted);color:var(--ods-text-tertiary);cursor:not-allowed;transform:none}.ods-prompt-input__send--stop{width:auto;padding:0 var(--ods-space-2);background:var(--ods-status-failed);color:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase}.ods-prompt-input__send--stop:hover:not(:disabled){background:var(--ods-status-failed-fg);transform:none}.ods-prompt-input__quick-actions{display:flex;flex-wrap:wrap;gap:var(--ods-space-1);padding:0 var(--ods-space-3) var(--ods-space-2)}.ods-prompt-input__quick-action{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 var(--ods-space-2);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-pill);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:500;color:var(--ods-text-body);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-prompt-input__quick-action:hover{background:var(--ods-accent-soft);border-color:var(--ods-accent-border);color:var(--ods-accent)}.ods-prompt-input__quick-action:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-prompt-input__quick-action-icon{display:inline-flex;width:12px;height:12px;color:var(--ods-text-tertiary)}.ods-prompt-input__quick-action-icon>svg{fill:currentColor}.ods-prompt-input__quick-action:hover .ods-prompt-input__quick-action-icon{color:var(--ods-accent)}.ods-prompt-input__hint{padding:4px var(--ods-space-1) 0;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-sortable{display:flex;width:100%;position:relative}.ods-sortable--vertical{flex-direction:column}.ods-sortable--horizontal{flex-direction:row}.ods-sortable--disabled{opacity:.6;pointer-events:none}.ods-sortable--dragging .ods-sortable__item:not(.ods-sortable__item--dragging){transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sortable__item{position:relative;transition:opacity var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sortable__item--dragging{opacity:.45;cursor:grabbing}.ods-sortable__item--kb-active{outline:2px solid var(--ods-accent);outline-offset:1px;border-radius:var(--ods-radius-1)}.ods-sortable__indicator{position:absolute;background:var(--ods-accent);opacity:0;pointer-events:none;transition:opacity var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));z-index:2}.ods-sortable--vertical .ods-sortable__indicator{left:0;right:0;height:2px}.ods-sortable--vertical .ods-sortable__indicator::before,.ods-sortable--vertical .ods-sortable__indicator::after{content:"";position:absolute;top:-2px;width:6px;height:6px;border:2px solid var(--ods-accent);background:var(--ods-surface-canvas);border-radius:var(--ods-radius-pill)}.ods-sortable--vertical .ods-sortable__indicator::before{left:-3px}.ods-sortable--vertical .ods-sortable__indicator::after{right:-3px}.ods-sortable--vertical .ods-sortable__indicator--before{top:-1px}.ods-sortable--vertical .ods-sortable__indicator--after{bottom:-1px}.ods-sortable--horizontal .ods-sortable__indicator{top:0;bottom:0;width:2px}.ods-sortable--horizontal .ods-sortable__indicator::before,.ods-sortable--horizontal .ods-sortable__indicator::after{content:"";position:absolute;left:-2px;width:6px;height:6px;border:2px solid var(--ods-accent);background:var(--ods-surface-canvas);border-radius:var(--ods-radius-pill)}.ods-sortable--horizontal .ods-sortable__indicator::before{top:-3px}.ods-sortable--horizontal .ods-sortable__indicator::after{bottom:-3px}.ods-sortable--horizontal .ods-sortable__indicator--before{left:-1px}.ods-sortable--horizontal .ods-sortable__indicator--after{right:-1px}.ods-sortable__item--drop-before .ods-sortable__indicator--before{opacity:1}.ods-sortable__item--drop-after .ods-sortable__indicator--after{opacity:1}.ods-sortable-handle{display:inline-flex;align-items:center;justify-content:center;width:16px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:grab;flex-shrink:0;border-radius:var(--ods-radius-1);transition:color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sortable-handle>svg{color:inherit !important;fill:currentColor;width:12px;height:12px}.ods-sortable-handle:hover{color:var(--ods-accent)}.ods-sortable-handle:active{cursor:grabbing}.ods-sortable-handle:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px;color:var(--ods-accent)}.ods-sortable__item--kb-active .ods-sortable-handle{color:var(--ods-accent);background:var(--ods-accent-soft)}.ods-sortable__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.ods-code-editor{display:flex;flex-direction:column;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);overflow:hidden}.ods-code-editor--readonly{background:var(--ods-surface-subtle)}.ods-code-editor:focus-within{border-color:var(--ods-border-focus);box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-code-editor__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-code-editor__toolbar-left,.ods-code-editor__toolbar-right{display:inline-flex;align-items:center;gap:var(--ods-space-1)}.ods-code-editor__toolbar-left{gap:var(--ods-space-2)}.ods-code-editor__lang{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);background:var(--ods-surface-muted);color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-code-editor__lines{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-code-editor__status{font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-code-editor__btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-code-editor__btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-code-editor__btn:disabled{opacity:.4;cursor:not-allowed}.ods-code-editor__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-code-editor__btn--active{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent-border)}.ods-code-editor__btn--success{color:var(--ods-status-success-fg);background:var(--ods-status-success-bg);border-color:var(--ods-status-success-bd)}.ods-code-editor__find{display:flex;align-items:center;gap:var(--ods-space-1);padding:var(--ods-space-1) var(--ods-space-2);background:var(--ods-surface-canvas);border-bottom:1px solid var(--ods-border-default);color:var(--ods-text-tertiary)}.ods-code-editor__find-input{flex:1 1 auto;min-width:0;height:22px;padding:0 var(--ods-space-2);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);outline:none;transition:border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-code-editor__find-input:focus{border-color:var(--ods-border-focus)}.ods-code-editor__find-input::placeholder{color:var(--ods-text-disabled)}.ods-code-editor__find-count{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);min-width:56px;text-align:center}.ods-code-editor__body{display:flex;flex:1 1 auto;min-height:0;overflow:hidden;background:var(--ods-surface-canvas);position:relative}.ods-code-editor__gutter{flex-shrink:0;display:flex;flex-direction:column;padding:var(--ods-space-2) 0;background:var(--ods-surface-subtle);border-right:1px solid var(--ods-border-default);overflow:hidden;user-select:none;pointer-events:none;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-disabled);min-width:36px}.ods-code-editor__line-no{display:inline-block;width:100%;padding:0 var(--ods-space-2);text-align:right;line-height:20px}.ods-code-editor__line-no--active{color:var(--ods-accent);font-weight:600}.ods-code-editor__textarea{flex:1 1 auto;border:0;outline:none;padding:var(--ods-space-2) var(--ods-space-3);background:rgba(0,0,0,0);resize:none;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-sm);line-height:20px;color:var(--ods-text-primary);white-space:pre;overflow:auto;tab-size:2}.ods-code-editor__textarea::placeholder{color:var(--ods-text-disabled);font-style:italic}.ods-code-editor--sql .ods-code-editor__textarea{caret-color:var(--ods-accent)}.ods-code-editor--wrap .ods-code-editor__textarea{white-space:pre-wrap;word-break:break-word;overflow-x:hidden}.ods-code-editor__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:4px var(--ods-space-2);background:var(--ods-surface-subtle);border-top:1px solid var(--ods-border-soft);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);letter-spacing:var(--ods-tracking-mono)}.ods-code-editor__pos{font-variant-numeric:tabular-nums lining-nums}.ods-code-editor__shortcut-hint{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.ods-code-editor__sep{color:var(--ods-text-disabled);margin:0 2px}.ods-code-editor__kbd{display:inline-flex;align-items:center;justify-content:center;height:16px;min-width:18px;padding:0 4px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;color:var(--ods-text-body);margin-right:2px}.ods-monaco{display:flex;flex-direction:column;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);overflow:hidden}.ods-monaco--readonly{background:var(--ods-surface-subtle)}.ods-monaco:focus-within{border-color:var(--ods-border-focus);box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-monaco__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:var(--ods-space-1) var(--ods-space-2);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default);font-family:var(--ods-font-family-sans)}.ods-monaco__toolbar-left,.ods-monaco__toolbar-right{display:inline-flex;align-items:center;gap:var(--ods-space-1);min-width:0}.ods-monaco__toolbar-left{gap:var(--ods-space-2)}.ods-monaco__lang{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);background:var(--ods-surface-muted);color:var(--ods-text-body);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);flex-shrink:0}.ods-monaco__lines{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-monaco__status{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-monaco__btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-monaco__btn:hover:not(:disabled){background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-monaco__btn:disabled{opacity:.4;cursor:not-allowed}.ods-monaco__btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-monaco__btn--active{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent-border)}.ods-monaco__btn--success{color:var(--ods-status-success-fg);background:var(--ods-status-success-bg);border-color:var(--ods-status-success-bd)}.ods-monaco__btn>svg{width:14px;height:14px}.ods-monaco__body{display:flex;flex:1 1 auto;min-height:0;position:relative}.ods-monaco__body>section,.ods-monaco__body>div{flex:1 1 auto;min-width:0}.ods-monaco__loading{display:flex;align-items:center;justify-content:center;gap:var(--ods-space-2);height:100%;padding:var(--ods-space-4);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);letter-spacing:var(--ods-tracking-mono)}.ods-monaco__loading-spin{display:inline-flex;color:var(--ods-accent);animation:ods-monaco-spin .9s linear infinite}.ods-monaco__loading-spin>svg{width:14px;height:14px}@keyframes ods-monaco-spin{to{transform:rotate(360deg)}}.ods-monaco__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-2);padding:4px var(--ods-space-2);background:var(--ods-surface-subtle);border-top:1px solid var(--ods-border-soft);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);letter-spacing:var(--ods-tracking-mono)}.ods-monaco__pos{font-variant-numeric:tabular-nums lining-nums}.ods-monaco__shortcut-hint{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.ods-monaco__sep{color:var(--ods-text-disabled);margin:0 2px}.ods-monaco__kbd{display:inline-flex;align-items:center;justify-content:center;height:16px;min-width:18px;padding:0 4px;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;color:var(--ods-text-body);margin-right:2px}.ods-monaco-diff{display:flex;flex-direction:column;border:1px solid var(--ods-border-strong);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);font-family:var(--ods-font-family-mono);overflow:hidden}.ods-monaco-diff:focus-within{border-color:var(--ods-border-focus);box-shadow:0 0 0 3px var(--ods-accent-border)}.ods-monaco-diff__labels{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono);color:var(--ods-text-tertiary)}.ods-monaco-diff__label{padding:1px var(--ods-space-1);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1)}.ods-monaco-diff__label--orig{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd)}.ods-monaco-diff__label--mod{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-monaco-diff__arrow{color:var(--ods-text-disabled)}.ods-csv-viewer{display:flex;flex-direction:column;min-width:0;font-family:var(--ods-font-family-sans);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-2, 6px);background:var(--ods-surface-canvas);overflow:hidden}.ods-csv-viewer__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);border-bottom:1px solid var(--ods-border-default);background:var(--ods-surface-muted);font-size:var(--ods-font-size-sm)}.ods-csv-viewer__head-left,.ods-csv-viewer__head-right{display:inline-flex;align-items:center;gap:var(--ods-space-2);min-width:0}.ods-csv-viewer__title{font-weight:600;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-csv-viewer__status{color:var(--ods-text-tertiary)}.ods-csv-viewer__copy{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:rgba(0,0,0,0);border:0;border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);cursor:pointer;transition:background var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-csv-viewer__copy:hover{background:var(--ods-surface-canvas);color:var(--ods-text-primary)}.ods-csv-viewer__copy--copied{color:var(--ods-status-success)}.ods-csv-viewer__body{flex:1 1 auto;min-height:0;overflow:auto}.ods-csv-viewer__empty{padding:var(--ods-space-6) var(--ods-space-3);text-align:center;color:var(--ods-text-tertiary);font-size:var(--ods-font-size-sm)}.ods-csv-viewer__warn{margin:var(--ods-space-2) var(--ods-space-3)}.ods-csv-viewer__table{width:100%;border-collapse:collapse;font-family:var(--ods-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--ods-font-size-xs)}.ods-csv-viewer__table th,.ods-csv-viewer__table td{padding:6px 10px;border-bottom:1px solid var(--ods-border-subtle, var(--ods-border-default));text-align:left;vertical-align:top;white-space:pre-wrap;word-break:break-word;color:var(--ods-text-primary)}.ods-csv-viewer__table thead th{position:sticky;top:0;background:var(--ods-surface-muted);font-weight:600;color:var(--ods-text-secondary);border-bottom-color:var(--ods-border-strong, var(--ods-border-default));z-index:1}.ods-csv-viewer__table tbody tr:nth-child(even) td{background:var(--ods-surface-muted)}.ods-csv-viewer__table tbody tr:hover td{background:var(--ods-surface-canvas);box-shadow:inset 0 0 0 1px var(--ods-border-strong, var(--ods-border-default))}.ods-csv-viewer__raw{margin:0;padding:var(--ods-space-2) var(--ods-space-3);font-family:var(--ods-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--ods-font-size-xs);line-height:1.5;color:var(--ods-text-primary);white-space:pre}.ods-csv-viewer__raw-line{display:flex;align-items:baseline;gap:12px}.ods-csv-viewer__raw-line-no{display:inline-block;min-width:2.5ch;color:var(--ods-text-tertiary);text-align:right;user-select:none}.ods-csv-viewer__raw-line-text{flex:1;min-width:0}.ods-csv-viewer__edit{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-2)}.ods-csv-viewer__parse-error{margin:0}.ods-json-viewer{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);overflow:hidden;font-family:var(--ods-font-family-mono)}.ods-json-viewer__head{display:flex;align-items:center;gap:var(--ods-space-2);justify-content:space-between;padding:var(--ods-space-1) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default)}.ods-json-viewer__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-json-viewer__status{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-json-viewer__body{padding:var(--ods-space-1) 0;overflow:auto;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);line-height:20px}.ods-json-viewer__row{display:flex;align-items:center;gap:4px;padding:0 var(--ods-space-3);white-space:nowrap}.ods-json-viewer__row--container{cursor:pointer}.ods-json-viewer__row--container:hover{background:var(--ods-surface-subtle)}.ods-json-viewer__row--close{padding-left:var(--ods-space-3)}.ods-json-viewer__caret{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-json-viewer__caret>svg{width:8px;height:8px}.ods-json-viewer__caret:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-json-viewer__caret--open{transform:rotate(90deg);color:var(--ods-accent)}.ods-json-viewer__caret-spacer{display:inline-block;width:12px;flex-shrink:0}.ods-json-viewer__key{color:var(--ods-text-primary);font-weight:500}.ods-json-viewer__key--index{color:var(--ods-text-tertiary)}.ods-json-viewer__colon{color:var(--ods-text-tertiary)}.ods-json-viewer__comma{color:var(--ods-text-tertiary)}.ods-json-viewer__bracket{color:var(--ods-text-body);font-weight:500}.ods-json-viewer__preview{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin:0 4px}.ods-json-viewer__value{display:inline-flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums lining-nums}.ods-json-viewer__value--string{color:var(--ods-status-success-fg)}.ods-json-viewer__value--number{color:var(--ods-status-running-fg)}.ods-json-viewer__value--boolean{color:var(--ods-status-pending-fg)}.ods-json-viewer__value--null{color:var(--ods-text-tertiary);font-style:italic}.ods-json-viewer__copy{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;opacity:0;transition:opacity var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-json-viewer__copy>svg{width:10px;height:10px}.ods-json-viewer__row:hover .ods-json-viewer__copy{opacity:1}.ods-json-viewer__copy:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-json-viewer__copy--success{opacity:1;color:var(--ods-status-success)}.ods-xml-viewer{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);overflow:hidden;font-family:var(--ods-font-family-mono)}.ods-xml-viewer__head{display:flex;align-items:center;gap:var(--ods-space-2);justify-content:space-between;padding:var(--ods-space-1) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default)}.ods-xml-viewer__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-xml-viewer__status{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-xml-viewer__status--error{color:var(--ods-status-failed-fg)}.ods-xml-viewer__body{padding:var(--ods-space-1) 0;overflow:auto;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);line-height:20px}.ods-xml-viewer__raw{margin:0;padding:var(--ods-space-2) var(--ods-space-3);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-sm);color:var(--ods-text-body);white-space:pre-wrap;word-break:break-word}.ods-xml-viewer__row{display:flex;align-items:center;gap:4px;padding:0 var(--ods-space-3);white-space:nowrap;min-width:0}.ods-xml-viewer__row--element{cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-xml-viewer__row--element:hover{background:var(--ods-surface-subtle)}.ods-xml-viewer__row--element:hover .ods-xml-viewer__copy,.ods-xml-viewer__row--element .ods-xml-viewer__copy--copied{opacity:1}.ods-xml-viewer__caret{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-xml-viewer__caret>svg{color:inherit !important;fill:currentColor}.ods-xml-viewer__caret:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-xml-viewer__caret:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-xml-viewer__caret--open{transform:rotate(90deg);color:var(--ods-accent)}.ods-xml-viewer__caret-spacer{display:inline-block;width:12px;flex-shrink:0}.ods-xml-viewer__bracket{color:var(--ods-text-tertiary);font-weight:500}.ods-xml-viewer__tag{color:var(--ods-status-failed-fg);font-weight:600}.ods-xml-viewer__attr{display:inline-flex;align-items:center;margin-left:var(--ods-space-1)}.ods-xml-viewer__attr-name{color:var(--ods-status-pending-fg);font-weight:500}.ods-xml-viewer__attr-eq{color:var(--ods-text-tertiary)}.ods-xml-viewer__attr-value{color:var(--ods-status-success-fg)}.ods-xml-viewer__preview{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin:0 4px}.ods-xml-viewer__text{color:var(--ods-text-body);white-space:pre-wrap;word-break:break-word}.ods-xml-viewer__comment{color:var(--ods-text-tertiary);font-style:italic;white-space:pre-wrap}.ods-xml-viewer__cdata{color:var(--ods-status-running-fg);white-space:pre-wrap;word-break:break-word}.ods-xml-viewer__pi{color:var(--ods-status-pending-fg);font-style:italic}.ods-xml-viewer__copy{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:var(--ods-space-1);padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;opacity:0;transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-xml-viewer__copy>svg{color:inherit !important;fill:currentColor}.ods-xml-viewer__copy:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-xml-viewer__copy:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px;opacity:1}.ods-xml-viewer__copy--copied{color:var(--ods-status-success-fg);transform:scale(1.15);animation:ods-xml-viewer-copy-flash 1.2s ease-out forwards}@keyframes ods-xml-viewer-copy-flash{0%{transform:scale(1.15)}20%{transform:scale(1)}100%{transform:scale(1)}}.ods-yaml-viewer{display:flex;flex-direction:column;background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);overflow:hidden;font-family:var(--ods-font-family-mono)}.ods-yaml-viewer--wrap .ods-yaml-viewer__line{white-space:pre-wrap;word-break:break-word}.ods-yaml-viewer__head{display:flex;align-items:center;gap:var(--ods-space-2);justify-content:space-between;padding:var(--ods-space-1) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-default)}.ods-yaml-viewer__head-right{display:inline-flex;align-items:center;gap:var(--ods-space-2)}.ods-yaml-viewer__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-yaml-viewer__status{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-yaml-viewer__body{padding:var(--ods-space-1) 0;overflow:auto;font-size:var(--ods-font-size-sm);color:var(--ods-text-primary);line-height:20px}.ods-yaml-viewer__line{display:flex;align-items:center;gap:0;padding:0 var(--ods-space-2) 0 0;min-height:20px;white-space:nowrap;position:relative}.ods-yaml-viewer__line--key:hover,.ods-yaml-viewer__line--sequence:hover{background:var(--ods-surface-subtle)}.ods-yaml-viewer__line--collapsed .ods-yaml-viewer__value{opacity:.6}.ods-yaml-viewer__line-no{flex-shrink:0;width:36px;padding:0 var(--ods-space-2) 0 0;text-align:right;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);user-select:none;border-right:1px solid var(--ods-border-soft);margin-right:var(--ods-space-2)}.ods-yaml-viewer__indent{display:inline-block;flex-shrink:0}.ods-yaml-viewer__caret{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;margin-right:4px;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-yaml-viewer__caret>svg{color:inherit !important;fill:currentColor}.ods-yaml-viewer__caret:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-yaml-viewer__caret:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-yaml-viewer__caret--open{transform:rotate(90deg);color:var(--ods-accent)}.ods-yaml-viewer__caret-spacer{display:inline-block;width:12px;margin-right:4px;flex-shrink:0}.ods-yaml-viewer__key{color:var(--ods-text-primary);font-weight:500}.ods-yaml-viewer__colon{color:var(--ods-text-tertiary)}.ods-yaml-viewer__dash{color:var(--ods-accent);font-weight:600}.ods-yaml-viewer__value{font-variant-numeric:tabular-nums lining-nums}.ods-yaml-viewer__value--string{color:var(--ods-status-success-fg)}.ods-yaml-viewer__value--number{color:var(--ods-status-running-fg)}.ods-yaml-viewer__value--boolean{color:var(--ods-status-pending-fg)}.ods-yaml-viewer__value--null{color:var(--ods-text-tertiary);font-style:italic}.ods-yaml-viewer__comment{color:var(--ods-text-tertiary);font-style:italic}.ods-yaml-viewer__preview{color:var(--ods-text-tertiary);font-style:italic}.ods-yaml-viewer__copy{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);cursor:pointer;border-radius:var(--ods-radius-1);flex-shrink:0;transition:color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-yaml-viewer__copy>svg{color:inherit !important;fill:currentColor}.ods-yaml-viewer__copy:hover{color:var(--ods-text-primary);background:var(--ods-surface-muted)}.ods-yaml-viewer__copy:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-yaml-viewer__copy--copied{color:var(--ods-status-success-fg);transform:scale(1.15);animation:ods-yaml-viewer-copy-flash 1.2s ease-out forwards}@keyframes ods-yaml-viewer-copy-flash{0%{transform:scale(1.15)}20%{transform:scale(1)}100%{transform:scale(1)}}.ods-file-dropzone-wrap{display:flex;flex-direction:column;gap:var(--ods-space-2);width:100%}.ods-file-dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ods-space-2);padding:var(--ods-space-7) var(--ods-space-4);background:var(--ods-surface-canvas);border:1px dashed var(--ods-border-strong);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);color:var(--ods-text-primary);cursor:pointer;transition:border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),padding var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),transform var(--ods-duration-fast, 120ms) var(--ods-ease-spring, cubic-bezier(0.34, 1.2, 0.64, 1));text-align:center;user-select:none;outline:none}.ods-file-dropzone--compact{padding:var(--ods-space-4) var(--ods-space-3)}.ods-file-dropzone--has-files{padding:var(--ods-space-4) var(--ods-space-3)}.ods-file-dropzone:focus-visible{border-color:var(--ods-border-focus);outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-file-dropzone:hover:not(.ods-file-dropzone--disabled):not(.ods-file-dropzone--over){background:var(--ods-surface-subtle);border-color:var(--ods-text-tertiary)}.ods-file-dropzone--over{background:var(--ods-accent-soft);border-color:var(--ods-accent);border-style:solid;transform:scale(1.01)}.ods-file-dropzone--error{border-color:var(--ods-status-failed);background:var(--ods-status-failed-bg)}.ods-file-dropzone--disabled{opacity:.55;cursor:not-allowed}.ods-file-dropzone__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.ods-file-dropzone__icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--ods-radius-pill);background:var(--ods-accent-soft);color:var(--ods-accent);transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-file-dropzone--over .ods-file-dropzone__icon{background:var(--ods-accent);color:var(--ods-surface-canvas)}.ods-file-dropzone--error .ods-file-dropzone__icon{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg)}.ods-file-dropzone--compact .ods-file-dropzone__icon{width:28px;height:28px}.ods-file-dropzone--has-files .ods-file-dropzone__icon{width:28px;height:28px}.ods-file-dropzone__title{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-file-dropzone--compact .ods-file-dropzone__title{font-size:var(--ods-font-size-base)}.ods-file-dropzone--has-files .ods-file-dropzone__title{font-size:var(--ods-font-size-base)}.ods-file-dropzone__hint{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary)}.ods-file-dropzone__cta-row{display:inline-flex;align-items:center;gap:var(--ods-space-2);margin-top:var(--ods-space-1)}.ods-file-dropzone__cta{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-accent)}.ods-file-dropzone__kbd-hint{display:inline-flex;align-items:center;gap:4px;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-file-dropzone__kbd{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:22px;padding:0 4px;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:10px;font-weight:600;color:var(--ods-text-body)}.ods-file-dropzone__error{margin-top:var(--ods-space-1);font-size:var(--ods-font-size-sm);color:var(--ods-status-failed-fg)}.ods-file-dropzone__list-wrap{display:flex;flex-direction:column;border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);background:var(--ods-surface-canvas);overflow:hidden}.ods-file-dropzone__list-head{display:flex;align-items:center;justify-content:space-between;padding:var(--ods-space-1) var(--ods-space-3);background:var(--ods-surface-subtle);border-bottom:1px solid var(--ods-border-soft);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);letter-spacing:var(--ods-tracking-mono)}.ods-file-dropzone__list-title{font-weight:600;color:var(--ods-text-primary);text-transform:uppercase}.ods-file-dropzone__list-status{color:var(--ods-text-tertiary);font-variant-numeric:tabular-nums lining-nums}.ods-file-dropzone__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.ods-file-dropzone__item{display:flex;align-items:center;gap:var(--ods-space-3);padding:var(--ods-space-2) var(--ods-space-3);border-bottom:1px solid var(--ods-border-soft);background:var(--ods-surface-canvas);transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-file-dropzone__item:last-child{border-bottom:0}.ods-file-dropzone__item:hover{background:var(--ods-surface-subtle)}.ods-file-dropzone__item--error{background:var(--ods-status-failed-bg)}.ods-file-dropzone__item--done .ods-file-dropzone__item-name{color:var(--ods-text-body)}.ods-file-dropzone__item-thumb{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);color:var(--ods-text-tertiary);overflow:hidden}.ods-file-dropzone__item-thumb img{width:100%;height:100%;object-fit:cover}.ods-file-dropzone__item-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-file-dropzone__item-head{display:flex;align-items:baseline;gap:var(--ods-space-2);min-width:0}.ods-file-dropzone__item-name{flex:1 1 auto;min-width:0;font-size:var(--ods-font-size-sm);font-weight:500;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-file-dropzone__item-size{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);flex-shrink:0}.ods-file-dropzone__item-error{font-size:var(--ods-font-size-xs);color:var(--ods-status-failed-fg)}.ods-file-dropzone__progress{position:relative;width:100%;height:3px;background:var(--ods-surface-muted);border-radius:var(--ods-radius-pill);overflow:hidden;margin-top:2px}.ods-file-dropzone__progress-fill{position:absolute;inset:0 auto 0 0;background:var(--ods-accent);transition:width var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-file-dropzone__item-actions{display:inline-flex;align-items:center;gap:var(--ods-space-1);flex-shrink:0}.ods-file-dropzone__item-status{display:inline-flex;align-items:center;gap:4px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono)}.ods-file-dropzone__item-status--uploading{color:var(--ods-accent)}.ods-file-dropzone__item-status--done{width:18px;height:18px;justify-content:center;background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-radius:var(--ods-radius-pill)}.ods-file-dropzone__item-status--error{width:18px;height:18px;justify-content:center;color:var(--ods-status-failed-fg)}.ods-file-dropzone__spin{display:inline-flex;animation:ods-fd-spin .9s linear infinite}@keyframes ods-fd-spin{to{transform:rotate(360deg)}}.ods-file-dropzone__item-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ods-text-tertiary);border-radius:var(--ods-radius-1);cursor:pointer;transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-file-dropzone__item-btn:hover{background:var(--ods-surface-muted);color:var(--ods-text-primary)}.ods-file-dropzone__item-btn:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:1px}.ods-agent-card{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);transition:background-color var(--ods-duration-instant) var(--ods-ease-out),border-color var(--ods-duration-instant) var(--ods-ease-out),box-shadow var(--ods-duration-instant) var(--ods-ease-out)}.ods-agent-card--interactive{cursor:pointer}.ods-agent-card--interactive:hover{background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-agent-card:focus-visible{outline:none;box-shadow:var(--ods-focus-ring);border-color:var(--ods-border-focus)}.ods-agent-card--selected{background:var(--ods-accent-soft);border-color:var(--ods-accent)}.ods-agent-card--selected:hover{background:var(--ods-accent-soft);border-color:var(--ods-accent)}.ods-agent-card--loading,.ods-agent-card--error{cursor:default}.ods-agent-card--sm{gap:var(--ods-space-2);padding:var(--ods-space-3);font-size:var(--ods-font-size-sm)}.ods-agent-card--lg{gap:var(--ods-space-4);padding:var(--ods-space-5)}.ods-agent-card--dense{gap:var(--ods-space-2);padding:var(--ods-space-3)}.ods-agent-card--dense .ods-agent-card__head{gap:var(--ods-space-2)}.ods-agent-card__head{display:flex;align-items:center;gap:var(--ods-space-3)}.ods-agent-card__checkbox{display:inline-flex;align-items:center;flex-shrink:0}.ods-agent-card__avatar{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--ods-radius-1);background:var(--ods-accent);color:var(--ods-surface-canvas);font-size:var(--ods-font-size-md);font-weight:var(--ods-font-weight-semibold);flex-shrink:0}.ods-agent-card--sm .ods-agent-card__avatar{width:28px;height:28px;font-size:var(--ods-font-size-sm)}.ods-agent-card--lg .ods-agent-card__avatar{width:44px;height:44px;font-size:var(--ods-font-size-lg)}.ods-agent-card__avatar--trigger{background:var(--ods-node-trigger-bg);color:var(--ods-node-trigger-fg);border:1px solid var(--ods-node-trigger-bd)}.ods-agent-card__avatar--action{background:var(--ods-node-action-bg);color:var(--ods-node-action-fg);border:1px solid var(--ods-node-action-bd)}.ods-agent-card__avatar--transform{background:var(--ods-node-transform-bg);color:var(--ods-node-transform-fg);border:1px solid var(--ods-node-transform-bd)}.ods-agent-card__avatar--condition{background:var(--ods-node-condition-bg);color:var(--ods-node-condition-fg);border:1px solid var(--ods-node-condition-bd)}.ods-agent-card__avatar--io{background:var(--ods-node-io-bg);color:var(--ods-node-io-fg);border:1px solid var(--ods-node-io-bd)}.ods-agent-card__id{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}.ods-agent-card__name{font-size:var(--ods-font-size-md);font-weight:var(--ods-font-weight-semibold);color:var(--ods-text-primary);line-height:var(--ods-line-height-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-agent-card--sm .ods-agent-card__name{font-size:var(--ods-font-size-sm)}.ods-agent-card--lg .ods-agent-card__name{font-size:var(--ods-font-size-lg)}.ods-agent-card__role{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:var(--ods-line-height-snug);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-agent-card--sm .ods-agent-card__role{font-size:var(--ods-font-size-xs)}.ods-agent-card__status{display:inline-flex;align-items:center;gap:var(--ods-space-1);height:22px;padding:0 var(--ods-space-2);border-radius:var(--ods-radius-1);border:1px solid rgba(0,0,0,0);font-size:var(--ods-font-size-xs);font-weight:var(--ods-font-weight-medium);white-space:nowrap;flex-shrink:0}.ods-agent-card__status--idle{background:var(--ods-status-idle-bg);color:var(--ods-status-idle-fg);border-color:var(--ods-status-idle-bd)}.ods-agent-card__status--running{background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd)}.ods-agent-card__status--success{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-agent-card__status--failed{background:var(--ods-status-failed-bg);color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd)}.ods-agent-card__status--paused{background:var(--ods-surface-sunken);color:var(--ods-text-body);border-color:var(--ods-border-default)}.ods-agent-card__status--draft{background:var(--ods-surface-muted);color:var(--ods-text-body);border-color:var(--ods-border-default)}.ods-agent-card__status-dot{width:6px;height:6px;border-radius:var(--ods-radius-pill);background:currentColor;flex-shrink:0}.ods-agent-card__meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-agent-card__model,.ods-agent-card__tools{display:inline-flex;align-items:center;gap:4px;padding:1px var(--ods-space-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);color:var(--ods-text-body);letter-spacing:var(--ods-tracking-mono)}.ods-agent-card__model>svg,.ods-agent-card__tools>svg{color:var(--ods-text-tertiary);flex-shrink:0}.ods-agent-card__model>span,.ods-agent-card__tools>span{font-variant-numeric:tabular-nums lining-nums;font-weight:var(--ods-font-weight-semibold);color:var(--ods-text-primary)}.ods-agent-card__last-used{display:inline-flex;align-items:center;padding:1px var(--ods-space-1);color:var(--ods-text-tertiary);font-variant-numeric:tabular-nums lining-nums}.ods-agent-card__tags{display:flex;flex-wrap:wrap;align-items:center;column-gap:var(--ods-space-1-5);row-gap:var(--ods-space-1-5)}.ods-agent-card__tag-overflow{color:var(--ods-text-secondary);cursor:help}.ods-agent-card__stats,.ods-agent-card__actions{display:flex;align-items:center;gap:var(--ods-space-2);padding-top:var(--ods-space-2);border-top:1px solid var(--ods-border-soft)}.ods-agent-card__skeleton{display:block;border-radius:var(--ods-radius-1);background:linear-gradient(90deg, var(--ods-border-default) 0%, var(--ods-surface-canvas) 50%, var(--ods-border-default) 100%);background-size:200% 100%}.ods-agent-card__skeleton--avatar{width:36px;height:36px;flex-shrink:0}.ods-agent-card__skeleton--name{width:60%;min-width:80px;height:14px}.ods-agent-card__skeleton--role{width:80%;min-width:120px;height:12px;margin-top:4px}.ods-agent-card__skeleton--pill{width:64px;height:22px;flex-shrink:0;border-radius:var(--ods-radius-1)}.ods-agent-card__skeleton--chip{width:80px;height:18px}.ods-agent-card--error{border-color:var(--ods-status-failed-bd);background:var(--ods-status-failed-bg)}.ods-agent-card__error{display:flex;align-items:flex-start;gap:var(--ods-space-2);color:var(--ods-status-failed-fg)}.ods-agent-card__error-icon{flex-shrink:0;color:var(--ods-status-failed);margin-top:2px}.ods-agent-card__error-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--ods-space-1)}.ods-agent-card__error-title{font-size:var(--ods-font-size-sm);font-weight:var(--ods-font-weight-semibold);color:var(--ods-status-failed-fg)}.ods-agent-card__error-message{font-size:var(--ods-font-size-xs);color:var(--ods-text-body);line-height:var(--ods-line-height-base)}.ods-agent-card__error-retry{background:rgba(0,0,0,0);border:1px solid var(--ods-status-failed-bd);color:var(--ods-status-failed-fg);font-family:var(--ods-font-family-sans);font-size:var(--ods-font-size-xs);font-weight:var(--ods-font-weight-medium);padding:var(--ods-space-1) var(--ods-space-2);border-radius:var(--ods-radius-1);cursor:pointer;flex-shrink:0}.ods-agent-card__error-retry:hover{background:var(--ods-status-failed-bd)}.ods-agent-card__error-retry:focus-visible{outline:none;box-shadow:var(--ods-focus-ring-error)}.ods-tool-card{display:flex;align-items:center;gap:var(--ods-space-3);padding:var(--ods-space-3) var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans);transition:background-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),border-color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tool-card--compact{padding:var(--ods-space-2) var(--ods-space-3)}.ods-tool-card--interactive{cursor:pointer}.ods-tool-card--interactive:hover{background:var(--ods-surface-subtle);border-color:var(--ods-border-strong)}.ods-tool-card--interactive:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px;border-color:var(--ods-border-focus)}.ods-tool-card--enabled{border-color:var(--ods-accent-border)}.ods-tool-card--enabled .ods-tool-card__icon{background:var(--ods-accent-soft);color:var(--ods-accent)}.ods-tool-card--disabled{opacity:.55;cursor:not-allowed;pointer-events:auto}.ods-tool-card--disabled.ods-tool-card--interactive{cursor:not-allowed}.ods-tool-card__icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:var(--ods-radius-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);color:var(--ods-text-body)}.ods-tool-card__icon>svg{color:inherit !important;fill:currentColor}.ods-tool-card__icon--search{background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd)}.ods-tool-card__icon--database{background:var(--ods-status-success-bg);color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd)}.ods-tool-card__icon--web{background:var(--ods-status-running-bg);color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd)}.ods-tool-card__icon--code{background:var(--ods-node-transform-bg);color:var(--ods-node-transform-fg);border-color:var(--ods-node-transform-bd)}.ods-tool-card__icon--file{background:var(--ods-status-idle-bg);color:var(--ods-status-idle-fg);border-color:var(--ods-status-idle-bd)}.ods-tool-card__icon--api{background:var(--ods-status-pending-bg);color:var(--ods-status-pending-fg);border-color:var(--ods-status-pending-bd)}.ods-tool-card__icon--ai{background:var(--ods-accent-soft);color:var(--ods-accent);border-color:var(--ods-accent-border)}.ods-tool-card__icon--custom{background:var(--ods-node-io-bg);color:var(--ods-node-io-fg);border-color:var(--ods-node-io-bd)}.ods-tool-card__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ods-tool-card__head{display:flex;align-items:center;gap:var(--ods-space-1);min-width:0}.ods-tool-card__name{font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ods-tool-card__new{display:inline-flex;align-items:center;height:16px;padding:0 var(--ods-space-1);background:var(--ods-accent);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:9px;font-weight:700;letter-spacing:var(--ods-tracking-mono)}.ods-tool-card__badge{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-tool-card__desc{font-size:var(--ods-font-size-sm);color:var(--ods-text-tertiary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ods-tool-card__switch{display:inline-flex;align-items:center;width:32px;height:18px;padding:1px;border:0;background:var(--ods-border-strong);border-radius:var(--ods-radius-pill);cursor:pointer;flex-shrink:0;transition:background-color var(--ods-duration-base, 180ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-tool-card__switch--on{background:var(--ods-accent)}.ods-tool-card__switch:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-tool-card__switch:disabled{cursor:not-allowed;opacity:.6;pointer-events:auto}.ods-tool-card__switch-thumb{width:14px;height:14px;border-radius:var(--ods-radius-pill);background:var(--ods-surface-canvas);box-shadow:0 1px 2px rgba(0,0,0,.12);transition:transform var(--ods-duration-base, 180ms) var(--ods-ease-spring, cubic-bezier(0.34, 1.2, 0.64, 1))}.ods-tool-card__switch--on .ods-tool-card__switch-thumb{transform:translateX(14px)}.ods-trace-step{display:flex;align-items:stretch;gap:var(--ods-space-3);font-family:var(--ods-font-family-sans)}.ods-trace-step--last .ods-trace-step__body{padding-bottom:0}.ods-trace-step--no-rail .ods-trace-step__rail{display:none}.ods-trace-step__rail{position:relative;display:flex;flex-direction:column;align-items:center;width:16px;flex-shrink:0}.ods-trace-step__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:var(--ods-radius-1);border:1px solid var(--ods-border-default);background:var(--ods-surface-canvas);color:var(--ods-text-body);flex-shrink:0;z-index:1;margin-top:6px}.ods-trace-step__icon>svg{color:inherit !important;fill:currentColor}.ods-trace-step__line{flex:1 1 auto;width:1px;background:var(--ods-border-default);min-height:16px}.ods-trace-step--thought .ods-trace-step__icon{color:var(--ods-text-body)}.ods-trace-step--tool .ods-trace-step__icon{color:var(--ods-accent);border-color:var(--ods-accent-border);background:var(--ods-accent-soft)}.ods-trace-step--input .ods-trace-step__icon{color:var(--ods-status-running-fg);border-color:var(--ods-status-running-bd);background:var(--ods-status-running-bg)}.ods-trace-step--output .ods-trace-step__icon{color:var(--ods-status-success-fg);border-color:var(--ods-status-success-bd);background:var(--ods-status-success-bg)}.ods-trace-step--error .ods-trace-step__icon{color:var(--ods-status-failed-fg);border-color:var(--ods-status-failed-bd);background:var(--ods-status-failed-bg)}.ods-trace-step--status-running .ods-trace-step__icon{border-color:var(--ods-accent);color:var(--ods-accent);background:var(--ods-accent-soft)}.ods-trace-step__spin{display:inline-flex;width:12px;height:12px;animation:ods-trace-spin .9s linear infinite}.ods-trace-step__spin>svg{color:inherit !important;fill:currentColor}@keyframes ods-trace-spin{to{transform:rotate(360deg)}}.ods-trace-step__body{flex:1 1 auto;min-width:0;padding:0 0 var(--ods-space-3)}.ods-trace-step__head{display:flex;align-items:center;gap:var(--ods-space-2);width:100%;padding:4px 0;border:0;background:rgba(0,0,0,0);text-align:left;cursor:pointer;color:inherit;font-family:inherit;border-radius:var(--ods-radius-1)}.ods-trace-step__head:disabled{cursor:default;pointer-events:auto}.ods-trace-step__head:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-trace-step__head:hover:not(:disabled) .ods-trace-step__title{color:var(--ods-accent)}.ods-trace-step__index{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:18px;padding:0 var(--ods-space-1);background:var(--ods-surface-muted);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);font-weight:600;color:var(--ods-text-tertiary);flex-shrink:0}.ods-trace-step__index--pulsing{animation:ods-trace-index-pulse 1.4s ease-in-out infinite;background:var(--ods-accent-soft);border-color:var(--ods-accent-border);color:var(--ods-accent)}@keyframes ods-trace-index-pulse{0%,100%{box-shadow:0 0 0 0 var(--ods-accent-soft)}50%{box-shadow:0 0 0 4px rgba(0,0,0,0)}}.ods-trace-step__title{flex:1 1 auto;min-width:0;font-size:var(--ods-font-size-base);font-weight:500;color:var(--ods-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--ods-duration-instant, 80ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-trace-step__tool{display:inline-flex;align-items:center;gap:4px;padding:1px var(--ods-space-1);background:var(--ods-accent-soft);color:var(--ods-accent);border:1px solid var(--ods-accent-border);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:500;flex-shrink:0}.ods-trace-step__tool-icon{display:inline-flex;width:10px;height:10px;align-items:center;justify-content:center;color:inherit}.ods-trace-step__tool-icon>svg{color:inherit !important;fill:currentColor}.ods-trace-step__meta{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);flex-shrink:0}.ods-trace-step__tokens>span{font-weight:600;color:var(--ods-text-body)}.ods-trace-step__duration{color:var(--ods-text-body);font-weight:500}.ods-trace-step__chev{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--ods-text-tertiary);flex-shrink:0;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-trace-step__chev>svg{color:inherit !important;fill:currentColor}.ods-trace-step__chev--open{transform:rotate(180deg);color:var(--ods-accent)}.ods-trace-step__content{margin-top:var(--ods-space-2)}.ods-trace-step__content-inner{padding:var(--ods-space-2) var(--ods-space-3);background:var(--ods-surface-subtle);border:1px solid var(--ods-border-soft);border-radius:var(--ods-radius-1);font-size:var(--ods-font-size-sm);color:var(--ods-text-body);line-height:1.5}.ods-heatmap{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-heatmap__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3)}.ods-heatmap__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-heatmap__total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-heatmap__frame{display:flex;gap:var(--ods-space-2)}.ods-heatmap__y-axis{display:flex;flex-direction:column;flex-shrink:0;align-items:flex-end;padding-right:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-heatmap__corner{flex-shrink:0}.ods-heatmap__y-tick{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0;white-space:nowrap;line-height:1}.ods-heatmap__plot{position:relative;flex:1 1 auto;display:flex;flex-direction:column;min-width:0}.ods-heatmap__x-axis{display:flex;margin-bottom:var(--ods-heatmap-gap, 2px);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-heatmap__x-tick{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;text-align:center;line-height:1}.ods-heatmap__grid{display:grid}.ods-heatmap__cell{appearance:none;border:0;padding:0;border-radius:var(--ods-heatmap-radius, var(--ods-radius-1));cursor:pointer;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),filter var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1));overflow:hidden;display:flex;align-items:center;justify-content:center}.ods-heatmap__cell:hover:not(:disabled),.ods-heatmap__cell:focus-visible:not(:disabled){filter:brightness(0.92);box-shadow:0 0 0 2px var(--ods-surface-canvas),0 0 0 3px currentColor;transform:scale(1.05);z-index:1}.ods-heatmap__cell:focus-visible:not(:disabled){outline:none}.ods-heatmap__cell--empty{cursor:default;background:var(--ods-surface-subtle);border:1px dashed var(--ods-border-soft)}.ods-heatmap__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;font-weight:600;line-height:1;pointer-events:none}.ods-heatmap__tooltip{position:absolute;top:-8px;right:0;z-index:2;display:inline-flex;align-items:center;gap:var(--ods-space-2);padding:4px 8px;background:var(--ods-text-primary);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1;white-space:nowrap;pointer-events:none;box-shadow:var(--ods-shadow-1, 0 2px 8px rgba(0, 0, 0, 0.15));transform:translateY(-100%)}.ods-heatmap__tooltip-axes{opacity:.85}.ods-heatmap__tooltip-value{font-weight:600;font-variant-numeric:tabular-nums lining-nums}.ods-heatmap__legend{display:inline-flex;align-items:center;gap:var(--ods-space-2);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-heatmap__legend-bar{display:inline-flex;height:10px;border-radius:var(--ods-radius-1);overflow:hidden}.ods-heatmap__legend-stop{width:28px;height:100%}.ods-heatmap__legend-min,.ods-heatmap__legend-max{line-height:1}.ods-heatmap__legend-caption{margin-left:var(--ods-space-3);color:var(--ods-text-body)}.ods-calheat{display:flex;flex-direction:column;gap:var(--ods-space-2);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-calheat__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3);margin-bottom:var(--ods-space-2)}.ods-calheat__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-calheat__total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-calheat__frame{display:flex;gap:var(--ods-space-1)}.ods-calheat__weekdays{display:flex;flex-direction:column;flex-shrink:0;align-items:flex-end;padding-right:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;color:var(--ods-text-tertiary)}.ods-calheat__weekday-spacer{flex-shrink:0}.ods-calheat__weekday{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0;line-height:1}.ods-calheat__plot{position:relative;flex:1 1 auto;min-width:0;overflow-x:auto}.ods-calheat__months{display:grid;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:10px;color:var(--ods-text-tertiary);line-height:1}.ods-calheat__month{display:inline-block;text-align:left;white-space:nowrap}.ods-calheat__grid{display:grid;grid-auto-flow:column}.ods-calheat__pad{visibility:hidden}.ods-calheat__cell{appearance:none;border:0;padding:0;cursor:pointer;background:var(--ods-surface-subtle);transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),filter var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-calheat__cell:hover:not(:disabled),.ods-calheat__cell:focus-visible:not(:disabled){filter:brightness(0.92);box-shadow:0 0 0 1px var(--ods-surface-canvas),0 0 0 2px currentColor;transform:scale(1.15);z-index:1}.ods-calheat__cell:focus-visible:not(:disabled){outline:none}.ods-calheat__cell--empty{cursor:default}.ods-calheat__tooltip{position:absolute;top:-8px;right:0;transform:translateY(-100%);z-index:2;padding:4px 8px;background:var(--ods-text-primary);color:var(--ods-surface-canvas);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);line-height:1;white-space:nowrap;pointer-events:none;box-shadow:var(--ods-shadow-1, 0 2px 8px rgba(0, 0, 0, 0.15))}.ods-calheat__legend{display:inline-flex;align-items:center;gap:var(--ods-space-2);margin-left:auto;font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary)}.ods-calheat__legend-bar{display:inline-flex;gap:2px}.ods-calheat__legend-stop{display:inline-block}.ods-gauge{display:inline-flex;flex-direction:column;align-items:center;gap:var(--ods-space-2);padding:var(--ods-space-3);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-gauge__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-gauge__ring{position:relative;display:inline-block}.ods-gauge__center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.ods-gauge__value{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-xl);font-weight:600;color:var(--ods-text-primary);line-height:1}.ods-gauge__unit{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-tertiary);margin-top:2px}.ods-gauge--arc .ods-gauge__center{align-items:center;justify-content:flex-end;padding-bottom:4px}.ods-gauge--linear{flex-direction:column;align-items:stretch;width:100%}.ods-gauge__linear{display:flex;flex-direction:column;gap:4px;width:100%}.ods-gauge__bar{position:relative;width:100%;height:10px;border-radius:var(--ods-radius-1);overflow:hidden}.ods-gauge__band{position:absolute;top:0;bottom:0}.ods-gauge__fill{position:absolute;top:0;bottom:0;left:0;border-radius:var(--ods-radius-1)}.ods-gauge__inline{display:inline-flex;align-items:baseline;gap:4px;font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-md);font-weight:600;color:var(--ods-text-primary)}.ods-gauge__inline .ods-gauge__unit{margin-top:0;font-size:var(--ods-font-size-xs);font-weight:500}.ods-gauge__legend{list-style:none;margin:0;padding:0;display:inline-flex;flex-wrap:wrap;gap:var(--ods-space-3)}.ods-gauge__legend-item{display:inline-flex;align-items:center;gap:var(--ods-space-1);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);color:var(--ods-text-body)}.ods-gauge__legend-dot{width:8px;height:8px;border-radius:var(--ods-radius-1);flex-shrink:0}.ods-gauge__legend-label{line-height:1}.ods-status-tiles{display:inline-flex;flex-direction:column;gap:var(--ods-space-1);font-family:var(--ods-font-family-sans)}.ods-status-tiles__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--ods-space-2);font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs)}.ods-status-tiles__title{font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-status-tiles__summary{color:var(--ods-text-body);font-variant-numeric:tabular-nums lining-nums}.ods-status-tiles__row{display:inline-flex;align-items:center}.ods-status-tiles__tile{appearance:none;border:0;padding:0;margin:0;cursor:default;transition:transform var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),filter var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1)),box-shadow var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-status-tiles__tile--interactive{cursor:pointer}.ods-status-tiles__tile--interactive:hover,.ods-status-tiles__tile--interactive:focus-visible,.ods-status-tiles__tile--interactive--active{filter:brightness(0.9);transform:translateY(-1px) scale(1.1);box-shadow:0 0 0 1px var(--ods-surface-canvas),0 0 0 2px currentColor}.ods-status-tiles__tile--interactive:focus-visible{outline:none}.ods-sankey{display:flex;flex-direction:column;gap:var(--ods-space-3);padding:var(--ods-space-4);background:var(--ods-surface-canvas);border:1px solid var(--ods-border-default);border-radius:var(--ods-radius-1);font-family:var(--ods-font-family-sans)}.ods-sankey__head{display:flex;align-items:center;justify-content:space-between;gap:var(--ods-space-3)}.ods-sankey__title{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);font-weight:600;letter-spacing:var(--ods-tracking-mono);text-transform:uppercase;color:var(--ods-text-tertiary)}.ods-sankey__total{font-family:var(--ods-font-family-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--ods-font-size-lg);font-weight:500;color:var(--ods-text-primary)}.ods-sankey__plot{position:relative;margin:0 auto}.ods-sankey__svg{width:100%;height:100%;overflow:visible}.ods-sankey__link{transition:opacity var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sankey__node{transition:filter var(--ods-duration-fast, 120ms) var(--ods-ease-out, cubic-bezier(0.16, 1, 0.3, 1))}.ods-sankey__node:hover,.ods-sankey__node--active{filter:brightness(0.88)}.ods-sankey__node:focus-visible{outline:2px solid var(--ods-border-focus);outline-offset:2px}.ods-sankey__label{font-family:var(--ods-font-family-mono);font-size:var(--ods-font-size-xs);fill:var(--ods-text-body);pointer-events:none}.ods-count-up{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum"}