{"version":3,"file":"elements.mjs","sources":["../../../../src/themes/GlobalStyles/elements.ts"],"sourcesContent":["import { css } from '@emotion/react';\n\nimport { GrafanaTheme2, ThemeTypographyVariant } from '@grafana/data';\n\nimport { getFeatureToggle } from '../../utils/featureToggle';\nimport { getFocusStyles } from '../mixins';\n\nexport function getElementStyles(theme: GrafanaTheme2) {\n  return css({\n    '*, *::before, *::after': {\n      boxSizing: 'inherit',\n    },\n\n    // Suppress the focus outline on elements that cannot be accessed via keyboard.\n    // This prevents an unwanted focus outline from appearing around elements that\n    // might still respond to pointer events.\n    //\n    // Credit: https://github.com/suitcss/base\n    \"[tabindex='-1']:focus\": {\n      outline: 'none !important',\n    },\n\n    html: {\n      MsOverflowStyle: 'scrollbar',\n      WebkitTapHighlightColor: 'rgba(0, 0, 0, 0)',\n      boxSizing: 'border-box',\n      height: '100%',\n      fontSize: `${theme.typography.htmlFontSize}px`,\n      fontFamily: theme.typography.fontFamily,\n      lineHeight: theme.typography.body.lineHeight,\n      fontKerning: 'normal',\n    },\n\n    ':root': {\n      colorScheme: theme.colors.mode,\n    },\n\n    body: {\n      height: '100%',\n      width: '100%',\n      position: 'unset',\n      color: theme.colors.text.primary,\n      backgroundColor: theme.colors.background.canvas,\n      paddingRight: '0 !important',\n      '@media print': {\n        overflow: 'visible',\n      },\n      '@page': {\n        margin: 0,\n        size: 'auto',\n        padding: 0,\n      },\n      // react select tries prevent scrolling by setting overflow/padding-right on the body\n      // Need type assertion here due to the use of !important\n      // see https://github.com/frenic/csstype/issues/114#issuecomment-697201978\n      // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n      overflowY: 'auto !important' as 'auto',\n      // disable contextual font ligatures. otherwise, in firefox and safari,\n      // an \"x\" between 2 numbers is replaced by a multiplication ligature\n      // see https://github.com/rsms/inter/issues/222\n      fontVariantLigatures: 'no-contextual',\n      ...theme.typography.body,\n      fontVariantNumeric: getFeatureToggle('tabularNumbers') ? 'tabular-nums' : 'initial',\n    },\n\n    'h1, .h1': getVariantStyles(theme.typography.h1),\n    'h2, .h2': getVariantStyles(theme.typography.h2),\n    'h3, .h3': getVariantStyles(theme.typography.h3),\n    'h4, .h4': getVariantStyles(theme.typography.h4),\n    'h5, .h5': getVariantStyles(theme.typography.h5),\n    'h6, .h6': getVariantStyles(theme.typography.h6),\n\n    p: {\n      margin: theme.spacing(0, 0, 2),\n    },\n\n    textarea: {\n      overflow: 'auto',\n      // Textareas should really only resize vertically so they don't break their (horizontal) containers.\n      resize: 'vertical',\n    },\n\n    button: {\n      letterSpacing: theme.typography.body.letterSpacing,\n\n      '&:focus-visible': getFocusStyles(theme),\n      '&:focus': {\n        outline: 'none',\n      },\n    },\n\n    label: {\n      // Allow labels to use `margin` for spacing.\n      display: 'inline-block',\n    },\n\n    figure: {\n      margin: theme.spacing(0, 0, 2),\n    },\n\n    img: {\n      // By default, `<img>`s are `inline-block`. This assumes that, and vertically\n      // centers them. This won't apply should you reset them to `block` level.\n      verticalAlign: 'middle',\n      // Note: `<img>`s are deliberately not made responsive by default.\n      // For the rationale behind this, see the comments on the `.img-fluid` class.\n    },\n\n    fieldset: {\n      // Chrome and Firefox set a `min-width: min-content;` on fieldsets,\n      // so we reset that to ensure it behaves more like a standard block element.\n      // See https://github.com/twbs/bootstrap/issues/12359.\n      minWidth: 0,\n      // Reset the default outline behavior of fieldsets so they don't affect page layout.\n      padding: 0,\n      margin: 0,\n      border: 0,\n    },\n\n    legend: {\n      // Reset the entire legend element to match the `fieldset`\n      display: 'block',\n      width: '100%',\n      padding: 0,\n      marginBottom: theme.spacing(1),\n      fontSize: theme.spacing(3),\n      lineHeight: 'inherit',\n      border: 0,\n    },\n\n    // Ex: 14px base font * 85% = about 12px\n    'small, .small': {\n      fontSize: theme.typography.bodySmall.fontSize,\n      fontWeight: 'normal',\n    },\n\n    'b, strong': {\n      fontWeight: theme.typography.fontWeightMedium,\n    },\n\n    em: {\n      fontStyle: 'italic',\n      color: theme.colors.text.primary,\n    },\n\n    cite: {\n      fontStyle: 'normal',\n    },\n\n    blockquote: {\n      padding: theme.spacing(0, 0, 0, 2),\n      margin: theme.spacing(0, 0, 2),\n      borderLeft: `5px solid ${theme.v1.palette.gray3}`,\n      p: {\n        marginBottom: 0,\n        fontSize: theme.typography.fontSize * 1.25,\n        fontWeight: 300,\n        lineHeight: 1.25,\n      },\n      small: {\n        display: 'block',\n        lineHeight: theme.typography.body.lineHeight,\n        color: theme.v1.palette.gray2,\n        '&:before': {\n          content: \"'\\\\2014 \\\\00A0'\",\n        },\n      },\n    },\n\n    // Quotes\n    'q:before, q:after, blockquote:before, blockquote:after': {\n      content: \"''\",\n    },\n\n    // Addresses\n    address: {\n      display: 'block',\n      marginBottom: theme.spacing(2),\n      fontStyle: 'normal',\n      lineHeight: theme.typography.body.lineHeight,\n    },\n\n    'a.external-link': {\n      color: theme.colors.text.link,\n      textDecoration: 'normal',\n\n      '&:hover': {\n        color: theme.colors.text.link,\n        textDecoration: 'underline',\n      },\n    },\n\n    '.link': {\n      color: theme.colors.text.primary,\n      cursor: 'pointer',\n    },\n\n    '.link:hover': {\n      color: theme.colors.text.maxContrast,\n    },\n\n    '.pointer': {\n      cursor: 'pointer',\n    },\n\n    'audio, canvas, progress, video': {\n      display: 'inline-block',\n      verticalAlign: 'baseline',\n    },\n\n    // Prevent modern browsers from displaying `audio` without controls.\n    // Remove excess height in iOS 5 devices.\n    'audio:not([controls])': {\n      display: 'none',\n      height: 0,\n    },\n\n    // Address styling not present in Safari.\n    'abbr[title]': {\n      borderBottom: '1px dotted',\n      cursor: 'help',\n    },\n    dfn: {\n      fontStyle: 'italic',\n    },\n\n    // Prevent `sub` and `sup` affecting `line-height` in all browsers.\n    'sub, sup': {\n      fontSize: '75%',\n      lineHeight: 0,\n      position: 'relative',\n      verticalAlign: 'baseline',\n    },\n    sup: {\n      top: '-0.5em',\n    },\n    sub: {\n      bottom: '-0.25em',\n    },\n\n    hr: {\n      marginTop: theme.spacing(2),\n      marginBottom: theme.spacing(2),\n      border: 0,\n      borderTop: `1px solid ${theme.colors.border.medium}`,\n    },\n\n    'mark, .mark': {\n      background: theme.colors.warning.main,\n    },\n\n    'ul, ol, dl': {\n      marginTop: 0,\n      marginBottom: 0,\n      padding: 0,\n    },\n    'ul ul, ul ol, ol ol, ol ul': {\n      marginBottom: 0,\n    },\n    li: {\n      lineHeight: theme.typography.body.lineHeight,\n    },\n    dd: {\n      marginBottom: theme.spacing(1),\n      marginLeft: 0, // Undo browser default\n    },\n    'dt, dd': {\n      lineHeight: theme.typography.body.lineHeight,\n    },\n    dt: {\n      fontWeight: theme.typography.fontWeightMedium,\n    },\n\n    // 1. Correct color not being inherited.\n    //    Known issue: affects color of disabled elements.\n    // 2. Correct font properties not being inherited.\n    // 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n    'button, input, optgroup, select, textarea': {\n      // eslint-disable-next-line @grafana/no-border-radius-literal\n      borderRadius: 0,\n      color: 'inherit',\n      font: 'inherit',\n      lineHeight: 'inherit',\n      margin: 0,\n    },\n\n    // Don't inherit the `font-weight` (applied by a rule above).\n    // NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n    optgroup: {\n      fontWeight: 'bold',\n    },\n\n    // 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n    //    and `video` controls.\n    // 2. Correct inability to style clickable `input` types in iOS.\n    // 3. Improve usability and consistency of cursor style between image-type\n    //    `input` and others.\n    'button, html input[type=\"button\"], input[type=\"submit\"]': {\n      WebkitAppearance: 'button',\n      cursor: 'pointer',\n    },\n\n    'input[type=\"search\"]': {\n      // This overrides the extra rounded corners on search inputs in iOS so that our\n      // `.form-control` class can properly style them. Note that this cannot simply\n      // be added to `.form-control` as it's not specific enough. For details, see\n      // https://github.com/twbs/bootstrap/issues/11586.\n      WebkitAppearance: 'none',\n    },\n\n    // Remove inner padding and search cancel button in Safari and Chrome on OS X.\n    // Safari (but not Chrome) clips the cancel button when the search input has\n    // padding (and `textfield` appearance).\n    'input[type=\"search\"]::-webkit-search-cancel-button, input[type=\"search\"]::-webkit-search-decoration': {\n      WebkitAppearance: 'none',\n    },\n\n    table: {\n      // Reset for nesting within parents with `background-color`.\n      backgroundColor: 'transparent',\n      borderCollapse: 'collapse',\n      borderSpacing: 0,\n    },\n\n    caption: {\n      paddingTop: theme.spacing(0.5),\n      paddingBottom: theme.spacing(0.5),\n      color: theme.colors.text.secondary,\n      textAlign: 'left',\n      captionSide: 'bottom',\n    },\n\n    th: {\n      fontWeight: theme.typography.fontWeightMedium,\n      textAlign: 'left',\n    },\n\n    'td, th': {\n      padding: 0,\n    },\n\n    // Utility classes\n    '.muted': {\n      color: theme.colors.text.secondary,\n    },\n\n    'a.muted:hover, a.muted:focus': {\n      color: theme.colors.text.primary,\n    },\n\n    '.text-warning': {\n      color: theme.colors.warning.text,\n\n      '&:hover, &:focus': {\n        color: theme.colors.emphasize(theme.colors.warning.text, 0.15),\n      },\n    },\n\n    '.text-error': {\n      color: theme.colors.error.text,\n\n      '&:hover, &:focus': {\n        color: theme.colors.emphasize(theme.colors.error.text, 0.15),\n      },\n    },\n\n    '.text-success': {\n      color: '$success-text-color',\n\n      '&:hover, &:focus': {\n        color: theme.colors.emphasize(theme.colors.success.text, 0.15),\n      },\n    },\n\n    a: {\n      cursor: 'pointer',\n      color: theme.colors.text.primary,\n      textDecoration: 'none',\n\n      '&:focus': {\n        outline: 'none',\n      },\n\n      '&:focus-visible': getFocusStyles(theme),\n\n      '&:[disabled]': {\n        cursor: 'default',\n        // Need type assertion here due to the use of !important\n        // see https://github.com/frenic/csstype/issues/114#issuecomment-697201978\n        // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n        pointerEvents: 'none !important' as 'none',\n      },\n    },\n\n    // iOS \"clickable elements\" fix for role=\"button\"\n    //\n    // Fixes \"clickability\" issue (and more generally, the firing of events such as focus as well)\n    // for traditionally non-focusable elements with role=\"button\"\n    // see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\n    \"[role='button']\": {\n      cursor: 'pointer',\n    },\n\n    // Always hide an element with the `hidden` HTML attribute (from PureCSS).\n    '[hidden]': {\n      display: 'none !important',\n    },\n\n    // Avoid 300ms click delay on touch devices that support the `touch-action` CSS property.\n    //\n    // In particular, unlike most other browsers, IE11+Edge on Windows 10 on touch devices and IE Mobile 10-11\n    // DON'T remove the click delay when `<meta name=\"viewport\" content=\"width=device-width\">` is present.\n    // However, they DO support removing the click delay via `touch-action: manipulation`.\n    // See:\n    // * http://v4-alpha.getbootstrap.com/content/reboot/#click-delay-optimization-for-touch\n    // * http://caniuse.com/#feat=css-touch-action\n    // * http://patrickhlauke.github.io/touch/tests/results/#suppressing-300ms-delay\n    \"a, area, button, [role='button'], input, label, select, summary, textarea\": {\n      touchAction: 'manipulation',\n    },\n\n    '.text-link': {\n      textDecoration: 'underline',\n    },\n\n    '.text-left': {\n      textAlign: 'left',\n    },\n\n    '.text-right': {\n      textAlign: 'right',\n    },\n\n    '.text-center': {\n      textAlign: 'center',\n    },\n\n    '.highlight-search-match': {\n      background: theme.components.textHighlight.background,\n      color: theme.components.textHighlight.text,\n      padding: 0,\n    },\n\n    '.template-variable': {\n      color: theme.colors.primary.text,\n    },\n\n    '.modal-header-title': {\n      fontSize: theme.typography.size.lg,\n      float: 'left',\n      paddingTop: theme.spacing(1),\n      margin: theme.spacing(0, 2),\n    },\n  });\n}\n\nexport function getVariantStyles(variant: ThemeTypographyVariant) {\n  return {\n    margin: 0,\n    fontSize: variant.fontSize,\n    lineHeight: variant.lineHeight,\n    fontWeight: variant.fontWeight,\n    letterSpacing: variant.letterSpacing,\n    fontFamily: variant.fontFamily,\n    marginBottom: '0.45em',\n  };\n}\n"],"names":[],"mappings":";;;;;AAOO,SAAS,iBAAiB,KAAA,EAAsB;AACrD,EAAA,OAAO,GAAA,CAAI;AAAA,IACT,wBAAA,EAA0B;AAAA,MACxB,SAAA,EAAW;AAAA,KACb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,uBAAA,EAAyB;AAAA,MACvB,OAAA,EAAS;AAAA,KACX;AAAA,IAEA,IAAA,EAAM;AAAA,MACJ,eAAA,EAAiB,WAAA;AAAA,MACjB,uBAAA,EAAyB,kBAAA;AAAA,MACzB,SAAA,EAAW,YAAA;AAAA,MACX,MAAA,EAAQ,MAAA;AAAA,MACR,QAAA,EAAU,CAAA,EAAG,KAAA,CAAM,UAAA,CAAW,YAAY,CAAA,EAAA,CAAA;AAAA,MAC1C,UAAA,EAAY,MAAM,UAAA,CAAW,UAAA;AAAA,MAC7B,UAAA,EAAY,KAAA,CAAM,UAAA,CAAW,IAAA,CAAK,UAAA;AAAA,MAClC,WAAA,EAAa;AAAA,KACf;AAAA,IAEA,OAAA,EAAS;AAAA,MACP,WAAA,EAAa,MAAM,MAAA,CAAO;AAAA,KAC5B;AAAA,IAEA,IAAA,EAAM;AAAA,MACJ,MAAA,EAAQ,MAAA;AAAA,MACR,KAAA,EAAO,MAAA;AAAA,MACP,QAAA,EAAU,OAAA;AAAA,MACV,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK,OAAA;AAAA,MACzB,eAAA,EAAiB,KAAA,CAAM,MAAA,CAAO,UAAA,CAAW,MAAA;AAAA,MACzC,YAAA,EAAc,cAAA;AAAA,MACd,cAAA,EAAgB;AAAA,QACd,QAAA,EAAU;AAAA,OACZ;AAAA,MACA,OAAA,EAAS;AAAA,QACP,MAAA,EAAQ,CAAA;AAAA,QACR,IAAA,EAAM,MAAA;AAAA,QACN,OAAA,EAAS;AAAA,OACX;AAAA;AAAA;AAAA;AAAA;AAAA,MAKA,SAAA,EAAW,iBAAA;AAAA;AAAA;AAAA;AAAA,MAIX,oBAAA,EAAsB,eAAA;AAAA,MACtB,GAAG,MAAM,UAAA,CAAW,IAAA;AAAA,MACpB,kBAAA,EAAoB,gBAAA,CAAiB,gBAAgB,CAAA,GAAI,cAAA,GAAiB;AAAA,KAC5E;AAAA,IAEA,SAAA,EAAW,gBAAA,CAAiB,KAAA,CAAM,UAAA,CAAW,EAAE,CAAA;AAAA,IAC/C,SAAA,EAAW,gBAAA,CAAiB,KAAA,CAAM,UAAA,CAAW,EAAE,CAAA;AAAA,IAC/C,SAAA,EAAW,gBAAA,CAAiB,KAAA,CAAM,UAAA,CAAW,EAAE,CAAA;AAAA,IAC/C,SAAA,EAAW,gBAAA,CAAiB,KAAA,CAAM,UAAA,CAAW,EAAE,CAAA;AAAA,IAC/C,SAAA,EAAW,gBAAA,CAAiB,KAAA,CAAM,UAAA,CAAW,EAAE,CAAA;AAAA,IAC/C,SAAA,EAAW,gBAAA,CAAiB,KAAA,CAAM,UAAA,CAAW,EAAE,CAAA;AAAA,IAE/C,CAAA,EAAG;AAAA,MACD,MAAA,EAAQ,KAAA,CAAM,OAAA,CAAQ,CAAA,EAAG,GAAG,CAAC;AAAA,KAC/B;AAAA,IAEA,QAAA,EAAU;AAAA,MACR,QAAA,EAAU,MAAA;AAAA;AAAA,MAEV,MAAA,EAAQ;AAAA,KACV;AAAA,IAEA,MAAA,EAAQ;AAAA,MACN,aAAA,EAAe,KAAA,CAAM,UAAA,CAAW,IAAA,CAAK,aAAA;AAAA,MAErC,iBAAA,EAAmB,eAAe,KAAK,CAAA;AAAA,MACvC,SAAA,EAAW;AAAA,QACT,OAAA,EAAS;AAAA;AACX,KACF;AAAA,IAEA,KAAA,EAAO;AAAA;AAAA,MAEL,OAAA,EAAS;AAAA,KACX;AAAA,IAEA,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ,KAAA,CAAM,OAAA,CAAQ,CAAA,EAAG,GAAG,CAAC;AAAA,KAC/B;AAAA,IAEA,GAAA,EAAK;AAAA;AAAA;AAAA,MAGH,aAAA,EAAe;AAAA;AAAA;AAAA,KAGjB;AAAA,IAEA,QAAA,EAAU;AAAA;AAAA;AAAA;AAAA,MAIR,QAAA,EAAU,CAAA;AAAA;AAAA,MAEV,OAAA,EAAS,CAAA;AAAA,MACT,MAAA,EAAQ,CAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IAEA,MAAA,EAAQ;AAAA;AAAA,MAEN,OAAA,EAAS,OAAA;AAAA,MACT,KAAA,EAAO,MAAA;AAAA,MACP,OAAA,EAAS,CAAA;AAAA,MACT,YAAA,EAAc,KAAA,CAAM,OAAA,CAAQ,CAAC,CAAA;AAAA,MAC7B,QAAA,EAAU,KAAA,CAAM,OAAA,CAAQ,CAAC,CAAA;AAAA,MACzB,UAAA,EAAY,SAAA;AAAA,MACZ,MAAA,EAAQ;AAAA,KACV;AAAA;AAAA,IAGA,eAAA,EAAiB;AAAA,MACf,QAAA,EAAU,KAAA,CAAM,UAAA,CAAW,SAAA,CAAU,QAAA;AAAA,MACrC,UAAA,EAAY;AAAA,KACd;AAAA,IAEA,WAAA,EAAa;AAAA,MACX,UAAA,EAAY,MAAM,UAAA,CAAW;AAAA,KAC/B;AAAA,IAEA,EAAA,EAAI;AAAA,MACF,SAAA,EAAW,QAAA;AAAA,MACX,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK;AAAA,KAC3B;AAAA,IAEA,IAAA,EAAM;AAAA,MACJ,SAAA,EAAW;AAAA,KACb;AAAA,IAEA,UAAA,EAAY;AAAA,MACV,SAAS,KAAA,CAAM,OAAA,CAAQ,CAAA,EAAG,CAAA,EAAG,GAAG,CAAC,CAAA;AAAA,MACjC,MAAA,EAAQ,KAAA,CAAM,OAAA,CAAQ,CAAA,EAAG,GAAG,CAAC,CAAA;AAAA,MAC7B,UAAA,EAAY,CAAA,UAAA,EAAa,KAAA,CAAM,EAAA,CAAG,QAAQ,KAAK,CAAA,CAAA;AAAA,MAC/C,CAAA,EAAG;AAAA,QACD,YAAA,EAAc,CAAA;AAAA,QACd,QAAA,EAAU,KAAA,CAAM,UAAA,CAAW,QAAA,GAAW,IAAA;AAAA,QACtC,UAAA,EAAY,GAAA;AAAA,QACZ,UAAA,EAAY;AAAA,OACd;AAAA,MACA,KAAA,EAAO;AAAA,QACL,OAAA,EAAS,OAAA;AAAA,QACT,UAAA,EAAY,KAAA,CAAM,UAAA,CAAW,IAAA,CAAK,UAAA;AAAA,QAClC,KAAA,EAAO,KAAA,CAAM,EAAA,CAAG,OAAA,CAAQ,KAAA;AAAA,QACxB,UAAA,EAAY;AAAA,UACV,OAAA,EAAS;AAAA;AACX;AACF,KACF;AAAA;AAAA,IAGA,wDAAA,EAA0D;AAAA,MACxD,OAAA,EAAS;AAAA,KACX;AAAA;AAAA,IAGA,OAAA,EAAS;AAAA,MACP,OAAA,EAAS,OAAA;AAAA,MACT,YAAA,EAAc,KAAA,CAAM,OAAA,CAAQ,CAAC,CAAA;AAAA,MAC7B,SAAA,EAAW,QAAA;AAAA,MACX,UAAA,EAAY,KAAA,CAAM,UAAA,CAAW,IAAA,CAAK;AAAA,KACpC;AAAA,IAEA,iBAAA,EAAmB;AAAA,MACjB,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK,IAAA;AAAA,MACzB,cAAA,EAAgB,QAAA;AAAA,MAEhB,SAAA,EAAW;AAAA,QACT,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK,IAAA;AAAA,QACzB,cAAA,EAAgB;AAAA;AAClB,KACF;AAAA,IAEA,OAAA,EAAS;AAAA,MACP,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK,OAAA;AAAA,MACzB,MAAA,EAAQ;AAAA,KACV;AAAA,IAEA,aAAA,EAAe;AAAA,MACb,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK;AAAA,KAC3B;AAAA,IAEA,UAAA,EAAY;AAAA,MACV,MAAA,EAAQ;AAAA,KACV;AAAA,IAEA,gCAAA,EAAkC;AAAA,MAChC,OAAA,EAAS,cAAA;AAAA,MACT,aAAA,EAAe;AAAA,KACjB;AAAA;AAAA;AAAA,IAIA,uBAAA,EAAyB;AAAA,MACvB,OAAA,EAAS,MAAA;AAAA,MACT,MAAA,EAAQ;AAAA,KACV;AAAA;AAAA,IAGA,aAAA,EAAe;AAAA,MACb,YAAA,EAAc,YAAA;AAAA,MACd,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,GAAA,EAAK;AAAA,MACH,SAAA,EAAW;AAAA,KACb;AAAA;AAAA,IAGA,UAAA,EAAY;AAAA,MACV,QAAA,EAAU,KAAA;AAAA,MACV,UAAA,EAAY,CAAA;AAAA,MACZ,QAAA,EAAU,UAAA;AAAA,MACV,aAAA,EAAe;AAAA,KACjB;AAAA,IACA,GAAA,EAAK;AAAA,MACH,GAAA,EAAK;AAAA,KACP;AAAA,IACA,GAAA,EAAK;AAAA,MACH,MAAA,EAAQ;AAAA,KACV;AAAA,IAEA,EAAA,EAAI;AAAA,MACF,SAAA,EAAW,KAAA,CAAM,OAAA,CAAQ,CAAC,CAAA;AAAA,MAC1B,YAAA,EAAc,KAAA,CAAM,OAAA,CAAQ,CAAC,CAAA;AAAA,MAC7B,MAAA,EAAQ,CAAA;AAAA,MACR,SAAA,EAAW,CAAA,UAAA,EAAa,KAAA,CAAM,MAAA,CAAO,OAAO,MAAM,CAAA;AAAA,KACpD;AAAA,IAEA,aAAA,EAAe;AAAA,MACb,UAAA,EAAY,KAAA,CAAM,MAAA,CAAO,OAAA,CAAQ;AAAA,KACnC;AAAA,IAEA,YAAA,EAAc;AAAA,MACZ,SAAA,EAAW,CAAA;AAAA,MACX,YAAA,EAAc,CAAA;AAAA,MACd,OAAA,EAAS;AAAA,KACX;AAAA,IACA,4BAAA,EAA8B;AAAA,MAC5B,YAAA,EAAc;AAAA,KAChB;AAAA,IACA,EAAA,EAAI;AAAA,MACF,UAAA,EAAY,KAAA,CAAM,UAAA,CAAW,IAAA,CAAK;AAAA,KACpC;AAAA,IACA,EAAA,EAAI;AAAA,MACF,YAAA,EAAc,KAAA,CAAM,OAAA,CAAQ,CAAC,CAAA;AAAA,MAC7B,UAAA,EAAY;AAAA;AAAA,KACd;AAAA,IACA,QAAA,EAAU;AAAA,MACR,UAAA,EAAY,KAAA,CAAM,UAAA,CAAW,IAAA,CAAK;AAAA,KACpC;AAAA,IACA,EAAA,EAAI;AAAA,MACF,UAAA,EAAY,MAAM,UAAA,CAAW;AAAA,KAC/B;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,2CAAA,EAA6C;AAAA;AAAA,MAE3C,YAAA,EAAc,CAAA;AAAA,MACd,KAAA,EAAO,SAAA;AAAA,MACP,IAAA,EAAM,SAAA;AAAA,MACN,UAAA,EAAY,SAAA;AAAA,MACZ,MAAA,EAAQ;AAAA,KACV;AAAA;AAAA;AAAA,IAIA,QAAA,EAAU;AAAA,MACR,UAAA,EAAY;AAAA,KACd;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,yDAAA,EAA2D;AAAA,MACzD,gBAAA,EAAkB,QAAA;AAAA,MAClB,MAAA,EAAQ;AAAA,KACV;AAAA,IAEA,sBAAA,EAAwB;AAAA;AAAA;AAAA;AAAA;AAAA,MAKtB,gBAAA,EAAkB;AAAA,KACpB;AAAA;AAAA;AAAA;AAAA,IAKA,qGAAA,EAAuG;AAAA,MACrG,gBAAA,EAAkB;AAAA,KACpB;AAAA,IAEA,KAAA,EAAO;AAAA;AAAA,MAEL,eAAA,EAAiB,aAAA;AAAA,MACjB,cAAA,EAAgB,UAAA;AAAA,MAChB,aAAA,EAAe;AAAA,KACjB;AAAA,IAEA,OAAA,EAAS;AAAA,MACP,UAAA,EAAY,KAAA,CAAM,OAAA,CAAQ,GAAG,CAAA;AAAA,MAC7B,aAAA,EAAe,KAAA,CAAM,OAAA,CAAQ,GAAG,CAAA;AAAA,MAChC,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK,SAAA;AAAA,MACzB,SAAA,EAAW,MAAA;AAAA,MACX,WAAA,EAAa;AAAA,KACf;AAAA,IAEA,EAAA,EAAI;AAAA,MACF,UAAA,EAAY,MAAM,UAAA,CAAW,gBAAA;AAAA,MAC7B,SAAA,EAAW;AAAA,KACb;AAAA,IAEA,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,KACX;AAAA;AAAA,IAGA,QAAA,EAAU;AAAA,MACR,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK;AAAA,KAC3B;AAAA,IAEA,8BAAA,EAAgC;AAAA,MAC9B,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK;AAAA,KAC3B;AAAA,IAEA,eAAA,EAAiB;AAAA,MACf,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,OAAA,CAAQ,IAAA;AAAA,MAE5B,kBAAA,EAAoB;AAAA,QAClB,KAAA,EAAO,MAAM,MAAA,CAAO,SAAA,CAAU,MAAM,MAAA,CAAO,OAAA,CAAQ,MAAM,IAAI;AAAA;AAC/D,KACF;AAAA,IAEA,aAAA,EAAe;AAAA,MACb,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,KAAA,CAAM,IAAA;AAAA,MAE1B,kBAAA,EAAoB;AAAA,QAClB,KAAA,EAAO,MAAM,MAAA,CAAO,SAAA,CAAU,MAAM,MAAA,CAAO,KAAA,CAAM,MAAM,IAAI;AAAA;AAC7D,KACF;AAAA,IAEA,eAAA,EAAiB;AAAA,MACf,KAAA,EAAO,qBAAA;AAAA,MAEP,kBAAA,EAAoB;AAAA,QAClB,KAAA,EAAO,MAAM,MAAA,CAAO,SAAA,CAAU,MAAM,MAAA,CAAO,OAAA,CAAQ,MAAM,IAAI;AAAA;AAC/D,KACF;AAAA,IAEA,CAAA,EAAG;AAAA,MACD,MAAA,EAAQ,SAAA;AAAA,MACR,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK,OAAA;AAAA,MACzB,cAAA,EAAgB,MAAA;AAAA,MAEhB,SAAA,EAAW;AAAA,QACT,OAAA,EAAS;AAAA,OACX;AAAA,MAEA,iBAAA,EAAmB,eAAe,KAAK,CAAA;AAAA,MAEvC,cAAA,EAAgB;AAAA,QACd,MAAA,EAAQ,SAAA;AAAA;AAAA;AAAA;AAAA,QAIR,aAAA,EAAe;AAAA;AACjB,KACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,iBAAA,EAAmB;AAAA,MACjB,MAAA,EAAQ;AAAA,KACV;AAAA;AAAA,IAGA,UAAA,EAAY;AAAA,MACV,OAAA,EAAS;AAAA,KACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAWA,2EAAA,EAA6E;AAAA,MAC3E,WAAA,EAAa;AAAA,KACf;AAAA,IAEA,YAAA,EAAc;AAAA,MACZ,cAAA,EAAgB;AAAA,KAClB;AAAA,IAEA,YAAA,EAAc;AAAA,MACZ,SAAA,EAAW;AAAA,KACb;AAAA,IAEA,aAAA,EAAe;AAAA,MACb,SAAA,EAAW;AAAA,KACb;AAAA,IAEA,cAAA,EAAgB;AAAA,MACd,SAAA,EAAW;AAAA,KACb;AAAA,IAEA,yBAAA,EAA2B;AAAA,MACzB,UAAA,EAAY,KAAA,CAAM,UAAA,CAAW,aAAA,CAAc,UAAA;AAAA,MAC3C,KAAA,EAAO,KAAA,CAAM,UAAA,CAAW,aAAA,CAAc,IAAA;AAAA,MACtC,OAAA,EAAS;AAAA,KACX;AAAA,IAEA,oBAAA,EAAsB;AAAA,MACpB,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,OAAA,CAAQ;AAAA,KAC9B;AAAA,IAEA,qBAAA,EAAuB;AAAA,MACrB,QAAA,EAAU,KAAA,CAAM,UAAA,CAAW,IAAA,CAAK,EAAA;AAAA,MAChC,KAAA,EAAO,MAAA;AAAA,MACP,UAAA,EAAY,KAAA,CAAM,OAAA,CAAQ,CAAC,CAAA;AAAA,MAC3B,MAAA,EAAQ,KAAA,CAAM,OAAA,CAAQ,CAAA,EAAG,CAAC;AAAA;AAC5B,GACD,CAAA;AACH;AAEO,SAAS,iBAAiB,OAAA,EAAiC;AAChE,EAAA,OAAO;AAAA,IACL,MAAA,EAAQ,CAAA;AAAA,IACR,UAAU,OAAA,CAAQ,QAAA;AAAA,IAClB,YAAY,OAAA,CAAQ,UAAA;AAAA,IACpB,YAAY,OAAA,CAAQ,UAAA;AAAA,IACpB,eAAe,OAAA,CAAQ,aAAA;AAAA,IACvB,YAAY,OAAA,CAAQ,UAAA;AAAA,IACpB,YAAA,EAAc;AAAA,GAChB;AACF;;;;"}