.dashboard-page{display:flex;flex-direction:column}.dashboard-content{display:flex;flex-direction:column;gap:var(--space-large)}.dashboard-period{color:var(--color-text-muted)}.dashboard-chart-section{min-width:0}.bar-chart-skeleton{display:flex;flex-direction:column;height:320px;box-sizing:border-box;padding:20px 10px 12px 30px}.bar-chart-skeleton-plot{display:grid;flex:1;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;border-bottom:1px solid var(--color-border)}.bar-chart-skeleton-column{display:flex;height:100%;min-width:0;flex-direction:column;align-items:center;justify-content:flex-end}.bar-chart-skeleton-column>:first-child{min-height:24px}.bar-chart-skeleton-column>:last-child{margin:4px 0 -24px}.bar-chart-skeleton-legend{display:flex;justify-content:center;gap:var(--space-medium);margin-top:34px}.dashboard-tabs{width:100%}.dashboard-tab-panel{padding-top:var(--space-small)}@media(max-width:480px){.bar-chart-skeleton{padding-left:12px;padding-right:4px}.bar-chart-skeleton-legend{gap:var(--space-small)}}.List{display:flex;list-style:none;gap:var(--stack-gap-spacious)}.Trigger{text-decoration:none}.Root{width:100%;border-bottom:var(--borderWith-thin) #efefef;background-color:#fff;display:flex}.Root[data-position=fixed]{position:fixed;top:0;left:0}.List[data-justify=flex-start]{justify-content:flex-start}.List[data-justify=center]{justify-content:center}.List[data-justify=flex-end]{justify-content:flex-end}.Button{display:inline-flex;align-items:center;justify-content:center;height:var(--control-medium-size);padding:0 var(--stack-gap-normal);gap:var(--stack-gap-condensed);margin:0;outline:0;border:var(--borderWith-thin);border-color:var(--button-default-borderColor-rest);border-radius:var(--borderRadius-large);background-color:var(--button-default-bgColor-rest);font:var(--text-body-shorthand-medium);color:var(--button-default-fgColor-rest);cursor:pointer;transition:background-color .2s,color .2s,border-color .2s;text-decoration:none}.Button:not([data-disabled=true]):hover{background-color:var(--button-default-bgColor-hover)}.Button:not([data-disabled=true]):active{background-color:var(--button-default-bgColor-active)}.Button[data-disabled=true]{cursor:pointer;background-color:var(--button-default-bgColor-disabled);border-color:var(--button-default-borderColor-disabled);color:var(--button-default-fgColor-disabled)}.primary{background-color:var(--button-primary-bgColor-rest);color:var(--button-primary-fgColor-rest)}.primary:not([data-disabled=true]):hover{background-color:var(--button-primary-bgColor-hover)}.primary:not([data-disabled=true]):active{background-color:var(--button-primary-bgColor-active)}.primary[data-disabled=true]{background-color:var(--button-primary-bgColor-disabled);color:var(--button-primary-fgColor-disabled)}.danger{color:var(--button-danger-fgColor-rest)}.danger:not([data-disabled=true]):hover{background-color:var(--button-danger-bgColor-hover);color:var(--button-danger-fgColor-hover)}.danger:not([data-disabled=true]):active{background-color:var(--button-danger-bgColor-active)}.danger[data-disabled=true]{background-color:var(--button-danger-bgColor-disabled);color:var(--button-danger-fgColor-disabled)}.invisible{color:var(--button-invisble-fgColor-rest);background-color:transparent;border:none}.invisible:not([data-disabled=true]):hover{background-color:var(--button-invisble-bgColor-hover)}.invisible:not([data-disabled=true]):active{background-color:var(--button-invisble-bgColor-active)}.invisible:not([data-disabled=true])[data-tab-active=true]{box-shadow:inset 0 -2px 0 0 var(--base-color-neutral-13);border-radius:unset;box-sizing:border-box}.invisible:not([data-disabled=true])[data-sidebar-current=page]{background-color:var(--button-invisble-bgColor-active);box-shadow:inset 2px 0 0 0 var(--base-color-neutral-13);border-radius:unset}.invisible[data-disabled=true]{background-color:transparent;color:var(--base-color-neutral-6)}.small{font:var(--text-body-shorthand-small);height:var(--control-small-size)}.large{font:var(--text-body-shorthand-large);height:var(--control-large-size)}:root{--base-color-neutral-0: oklch(100% 0 0);--base-color-neutral-1: oklch(97.7% 0 255);--base-color-neutral-2: oklch(95.6% 0 255);--base-color-neutral-3: oklch(93.1% 0 255);--base-color-neutral-4: oklch(91.5% 0 255);--base-color-neutral-5: oklch(89.8% 0 255);--base-color-neutral-6: oklch(87.3% 0 255);--base-color-neutral-7: oklch(84.7% 0 255);--base-color-neutral-8: oklch(62.3% 0 255);--base-color-neutral-9: oklch(48.2% 0 255);--base-color-neutral-10: oklch(39.9% 0 255);--base-color-neutral-11: oklch(34.7% 0 255);--base-color-neutral-12: oklch(25.4% 0 255);--base-color-neutral-13: oklch(22.1% 0 255);--base-color-green-0: oklch(100% 0 0);--base-color-green-1: oklch(97.7% .015 145);--base-color-green-2: oklch(95.6% .025 145);--base-color-green-3: oklch(93.1% .045 145);--base-color-green-4: oklch(91.5% .06 145);--base-color-green-5: oklch(89.8% .08 145);--base-color-green-6: oklch(87.3% .1 145);--base-color-green-7: oklch(84.7% .12 145);--base-color-green-8: oklch(62.3% .16 145);--base-color-green-9: oklch(48.2% .15 145);--base-color-green-10: oklch(39.9% .12 145);--base-color-green-11: oklch(34.7% .1 145);--base-color-green-12: oklch(25.4% .08 145);--base-color-green-13: oklch(22.1% .07 145);--base-color-red-0: oklch(100% 0 0);--base-color-red-1: oklch(97.7% .015 25);--base-color-red-2: oklch(95.6% .025 25);--base-color-red-3: oklch(93.1% .045 25);--base-color-red-4: oklch(91.5% .06 25);--base-color-red-5: oklch(89.8% .085 25);--base-color-red-6: oklch(87.3% .11 25);--base-color-red-7: oklch(84.7% .14 25);--base-color-red-8: oklch(62.3% .21 25);--base-color-red-9: oklch(48.2% .19 25);--base-color-red-10: oklch(39.9% .16 25);--base-color-red-11: oklch(34.7% .13 25);--base-color-red-12: oklch(25.4% .1 25);--base-color-red-13: oklch(22.1% .08 25)}@media(prefers-color-scheme:dark){:root{--base-color-neutral-0: oklch(18% .012 255);--base-color-neutral-1: oklch(22% .013 255);--base-color-neutral-2: oklch(26% .014 255);--base-color-neutral-3: oklch(30% .015 255);--base-color-neutral-4: oklch(35% .016 255);--base-color-neutral-5: oklch(40% .017 255);--base-color-neutral-6: oklch(45% .018 255);--base-color-neutral-7: oklch(55% .02 255);--base-color-neutral-8: oklch(65% .018 255);--base-color-neutral-9: oklch(75% .015 255);--base-color-neutral-10: oklch(85% .01 255);--base-color-neutral-11: oklch(92% .007 255);--base-color-neutral-12: oklch(96% .004 255);--base-color-neutral-13: oklch(99% .002 255)}}:root{--fontStack-System: Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--fontStack-sansSerif: Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--base-text-size-xs: .75rem;--base-text-size-sm: .875rem;--base-text-size-md: 1rem;--base-text-size-lg: 1.25rem;--base-text-size-xl: 2rem;--base-text-size-2xl: 2.5rem;--base-text-weight-light: 300;--base-text-weight-normal: 400;--base-text-weight-medium: 500;--base-text-weight-semibold: 600;--base-text-lineHeight-tight: 1.25;--base-text-lineHeight-snug: 1.375;--base-text-lineHeight-normal: 1.5;--base-text-lineHeight-relaxed: 1.625;--base-text-lineHeight-loose: 1.75}:root{--base-size-1: 1px;--base-size-2: 2px;--base-size-4: 4px;--base-size-6: 6px;--base-size-8: 8px;--base-size-12: 12px;--base-size-16: 16px;--base-size-20: 20px;--base-size-24: 24px;--base-size-28: 28px;--base-size-32: 32px;--base-size-36: 36px;--base-size-40: 40px;--base-size-44: 44px;--base-size-48: 48px;--base-size-64: 64px}:root{--borderWith-thin: var(--base-size-1) solid;--borderWith-thick: var(--base-size-2) solid;--borderWith-thicker: var(--base-size-4) solid;--borderWith-default: var(--borderWith-thin) solid;--stack-gap-condensed: var(--base-size-8);--stack-gap-normal: var(--base-size-16);--stack-gap-spacious: var(--base-size-24);--stack-padding-condensed: var(--base-size-8);--stack-padding-normal: var(--base-size-16);--stack-padding-spacious: var(--base-size-24);--text-body-lineHeight-large: var(--base-text-lineHeight-normal);--text-body-size-large: var(--base-text-size-md);--text-body-lineHeight-medium: var(--base-text-lineHeight-normal);--text-body-size-medium: var(--base-text-size-sm);--text-body-lineHeight-small: var(--base-text-lineHeight-relaxed);--text-body-size-small: var(--base-text-size-xs);--text-title-lineHeight-large: var(--base-text-lineHeight-normal);--text-title-size-large: var(--base-text-size-xl);--text-title-weight-large: var(--base-text-weight-semibold);--text-title-lineHeight-medium: var(--base-text-lineHeight-relaxed);--text-title-size-medium: var(--base-text-size-lg);--text-title-weight-medium: var(--base-text-weight-semibold);--text-title-lineHeight-small: var(--base-text-lineHeight-normal);--text-title-size-small: var(--base-text-size-md);--text-title-weight-small: var(--base-text-weight-semibold);--text-subtitle-lineHeight: var(--base-text-lineHeight-relaxed);--text-subtitle-size: var(--base-text-size-md);--text-subtitle-weight: var(--base-text-weight-normal);--text-display-height: var(--base-text-lineHeight-snug);--text-display-lineHeight: var(--base-text-lineHeight-snug);--text-display-size: var(--base-text-size-2xl);--text-display-weight: var(--base-text-weight-medium);--text-caption-lineHeight: var(--base-text-lineHeight-tight);--text-caption-size: var(--base-text-size-xs);--text-caption-weight: var(--base-text-weight-normal);--text-body-shorthand-large: var(--base-text-weight-normal) var(--text-body-size-large) / var(--text-body-lineHeight-large) var(--fontStack-sansSerif);--text-body-shorthand-medium: var(--base-text-weight-normal) var(--text-body-size-medium) / var(--text-body-lineHeight-medium) var(--fontStack-sansSerif);--text-body-shorthand-small: var(--base-text-weight-normal) var(--text-body-size-small) / var(--text-body-lineHeight-small) var(--fontStack-sansSerif);--text-title-shorthand-large: var(--text-title-weight-large) var(--text-title-size-large) / var(--text-title-lineHeight-large) var(--fontStack-sansSerif);--text-title-shorthand-medium: var(--text-title-weight-medium) var(--text-title-size-medium) / var(--text-title-lineHeight-medium) var(--fontStack-sansSerif);--text-title-shorthand-small: var(--text-title-weight-small) var(--text-title-size-small) / var(--text-title-lineHeight-small) var(--fontStack-sansSerif);--text-display-shorthand: var(--text-display-weight) var(--text-display-size) / var(--text-display-lineHeight) var(--fontStack-sansSerif);--text-caption-shorthand: var(--text-caption-weight) var(--text-caption-size) / var(--text-caption-lineHeight) var(--fontStack-sansSerif);--text-subtitle-shorthand: var(--text-subtitle-weight) var(--text-subtitle-size) / var(--text-subtitle-lineHeight) var(--fontStack-sansSerif);--borderRadius-small: var(--base-size-2);--borderRadius-medium: var(--base-size-4);--borderRadius-large: var(--base-size-8);--borderRadius-circle: 50%;--button-default-bgColor-rest: var(--base-color-neutral-1);--button-default-fgColor-rest: var(--base-color-neutral-10);--button-default-borderColor-rest: var(--base-color-neutral-6);--button-default-bgColor-hover: var(--base-color-neutral-2);--button-default-fgColor-hover: var(--base-color-neutral-1);--button-default-borderColor-hover: var(--base-color-neutral-13);--button-default-bgColor-active: var(--base-color-neutral-3);--button-default-fgColor-disabled: var(--base-color-neutral-8);--button-default-bgColor-disabled: var(--base-color-neutral-2);--button-default-borderColor-disabled: var(--base-color-neutral-3);--button-primary-bgColor-rest: var(--base-color-green-9);--button-primary-fgColor-rest: var(--base-color-green-0);--button-primary-borderColor-rest: var(--base-color-green-7);--button-primary-bgColor-hover: var(--base-color-green-10);--button-primary-fgColor-hover: var(--base-color-green-13);--button-primary-borderColor-hover: var(--base-color-green-13);--button-primary-bgColor-active: var(--base-color-green-11);--button-primary-fgColor-disabled: var(--base-color-neutral-8);--button-primary-bgColor-disabled: var(--base-color-neutral-2);--button-primary-borderColor-disabled: var(--base-color-green-13);--button-danger-bgColor-rest: var(--base-color-red-13);--button-danger-fgColor-rest: var(--base-color-red-9);--button-danger-borderColor-rest: var(--base-color-red-7);--button-danger-bgColor-hover: var(--base-color-red-10);--button-danger-fgColor-hover: var(--base-color-red-1);--button-danger-borderColor-hover: var(--base-color-red-13);--button-danger-bgColor-active: var(--base-color-red-11);--button-danger-fgColor-disabled: var(--base-color-neutral-8);--button-danger-bgColor-disabled: var(--base-color-neutral-2);--button-danger-borderColor-disabled: var(--base-color-red-13);--button-invisble-bgColor-rest: var(--base-color-neutral-0);--button-invisble-fgColor-rest: var(--base-color-neutral-13);--button-invisble-borderColor-rest: var(--base-color-neutral-7);--button-invisble-bgColor-hover: var(--base-color-neutral-1);--button-invisble-fgColor-hover: var(--base-color-neutral-13);--button-invisble-borderColor-hover: var(--base-color-neutral-13);--button-invisble-bgColor-active: var(--base-color-neutral-2);--button-invisble-fgColor-disabled: var(--base-color-neutral-13);--button-invisble-bgColor-disabled: var(--base-color-neutral-13);--button-invisble-borderColor-disabled: var(--base-color-neutral-13);--button-disabled-bgColor: var(--base-color-neutral-2);--button-disabled-fgColor: var(--base-color-neutral-10);--control-small-size: var(--base-size-28);--control-medium-size: var(--base-size-36);--control-large-size: var(--base-size-44);--table-default-border-color: var(--base-color-neutral-7);--table-default-border-radius: var(--borderRadius-small);--table-cell-padding-condensed: var(--base-size-4) var(--base-size-8);--table-cell-padding-normal: var(--base-size-8) var(--base-size-16);--table-cell-padding-spacious: var(--base-size-16) var(--base-size-24);--table-default-header-bgColor: var(--base-color-neutral-1);--table-default-header-fgColor: var(--base-color-neutral-9);--tableRow-bgColor-hover: var(--base-color-neutral-1)}._Button_pez9r_1{display:inline-flex;align-items:center;justify-content:center;height:var(--control-medium-size);padding:0 var(--stack-gap-normal);gap:var(--stack-gap-condensed);margin:0;outline:0;border:var(--borderWith-thin);border-color:var(--button-default-borderColor-rest);border-radius:var(--borderRadius-large);background-color:var(--button-default-bgColor-rest);font:var(--text-body-shorthand-medium);color:var(--button-default-fgColor-rest);cursor:pointer;transition:background-color .2s,color .2s,border-color .2s;text-decoration:none}._Button_pez9r_1:not([data-disabled=true]):hover{background-color:var(--button-default-bgColor-hover)}._Button_pez9r_1:not([data-disabled=true]):active{background-color:var(--button-default-bgColor-active)}._Button_pez9r_1[data-disabled=true]{cursor:pointer;background-color:var(--button-default-bgColor-disabled);border-color:var(--button-default-borderColor-disabled);color:var(--button-default-fgColor-disabled)}._primary_pez9r_43{background-color:var(--button-primary-bgColor-rest);color:var(--button-primary-fgColor-rest)}._primary_pez9r_43:not([data-disabled=true]):hover{background-color:var(--button-primary-bgColor-hover)}._primary_pez9r_43:not([data-disabled=true]):active{background-color:var(--button-primary-bgColor-active)}._primary_pez9r_43[data-disabled=true]{background-color:var(--button-primary-bgColor-disabled);color:var(--button-primary-fgColor-disabled)}._danger_pez9r_62{color:var(--button-danger-fgColor-rest)}._danger_pez9r_62:not([data-disabled=true]):hover{background-color:var(--button-danger-bgColor-hover);color:var(--button-danger-fgColor-hover)}._danger_pez9r_62:not([data-disabled=true]):active{background-color:var(--button-danger-bgColor-active)}._danger_pez9r_62[data-disabled=true]{background-color:var(--button-danger-bgColor-disabled);color:var(--button-danger-fgColor-disabled)}._invisible_pez9r_81{color:var(--button-invisble-fgColor-rest);background-color:transparent;border:none}._invisible_pez9r_81:not([data-disabled=true]):hover{background-color:var(--button-invisble-bgColor-hover)}._invisible_pez9r_81:not([data-disabled=true]):active{background-color:var(--button-invisble-bgColor-active)}._invisible_pez9r_81:not([data-disabled=true])[data-tab-active=true]{box-shadow:inset 0 -2px 0 0 var(--base-color-neutral-13);border-radius:unset;box-sizing:border-box}._invisible_pez9r_81:not([data-disabled=true])[data-sidebar-current=page]{background-color:var(--button-invisble-bgColor-active);box-shadow:inset 2px 0 0 0 var(--base-color-neutral-13);border-radius:unset}._invisible_pez9r_81[data-disabled=true]{background-color:transparent;color:var(--base-color-neutral-6)}._small_pez9r_117{font:var(--text-body-shorthand-small);height:var(--control-small-size)}._large_pez9r_122{font:var(--text-body-shorthand-large);height:var(--control-large-size)}._List_qfshf_1{display:flex;list-style:none;gap:var(--stack-gap-spacious)}._Trigger_qfshf_7{text-decoration:none}._Root_qfshf_11{width:100%;border-bottom:var(--borderWith-thin) #efefef;background-color:#fff;display:flex}._Root_qfshf_11[data-position=fixed]{position:fixed;top:0;left:0}._List_qfshf_1[data-justify=flex-start]{justify-content:flex-start}._List_qfshf_1[data-justify=center]{justify-content:center}._List_qfshf_1[data-justify=flex-end]{justify-content:flex-end}._title-large_1esiv_1{font:var(--text-title-shorthand-large)}._title-medium_1esiv_5{font:var(--text-title-shorthand-medium)}._title-small_1esiv_9{font:var(--text-title-shorthand-small)}._display_1esiv_13{font:var(--text-display-shorthand)}._subtitle_1esiv_17{font:var(--text-subtitle-shorthand)}._caption_1esiv_21{font:var(--text-caption-shorthand)}._body-small_1esiv_25{font:var(--text-body-shorthand-small)}._body-medium_1esiv_29{font:var(--text-body-shorthand-medium)}._body-large_1esiv_33{font:var(--text-body-shorthand-large)}._Table_ctnkc_1{border:var(--borderWith-thin);border-color:var(--table-default-border-color);border-radius:var(--borderRadius-large);font:var(--text-body-shorthand-medium);border-spacing:0px;overflow:hidden;width:100%}._Table_ctnkc_1 td{padding:var(--table-cell-padding-normal)}._Table_ctnkc_1[data-density=condensed] td{padding:var(--table-cell-padding-condensed)}._Table_ctnkc_1[data-density=spacious] td{padding:var(--table-cell-padding-spacious)}._TableHead_1tmgh_1{font:var(--text-body-shorthand-medium);font-weight:var(--base-text-weight-medium);background-color:var(--table-default-header-bgColor);color:var(--table-default-header-fgColor)}tbody ._TableRow_ety2u_1:hover{background-color:var(--tableRow-bgColor-hover)}._TableCell_1win9_1{border-bottom:1px solid var(--table-default-border-color)}._card_ifldm_1{width:400px;border:var(--borderWith-thin);border-color:#d3d3d3;border-radius:var(--borderRadius-large)}._title_ifldm_8,._body_ifldm_8,._footer_ifldm_8{padding:0 20px}._List_bq40j_1{display:flex;flex-direction:column;list-style:none;width:100%;padding:0}._List_bq40j_1[data-justify=flex-start] a{display:flex;justify-content:flex-start}._List_bq40j_1[data-justify=flex-end] a{display:flex;justify-content:flex-end}._List_bq40j_1[data-justify=center] a{display:flex;justify-content:center}._Trigger_bq40j_25{text-decoration:none}._Root_bq40j_29{display:flex;flex-direction:column;height:100%}._Root_bq40j_29 ul{list-style:none;padding:0}._SectionTitle_bq40j_39{color:var(--base-color-neutral-8)}._SectionContainer_bq40j_43:not(:last-child){margin-bottom:var(--stack-padding-normal)}._container_1tmtl_1{width:100%;box-sizing:border-box;margin:0;position:relative}._header_1tmtl_8{position:absolute;top:4px;right:4px;left:10px;z-index:1;display:flex;align-items:center;justify-content:space-between}._language_1tmtl_19{color:var(--base-color-neutral-10);font:var(--text-body-shorthand-small);-webkit-user-select:none;user-select:none}._container_1tmtl_1[data-theme=dark] ._copybtn_1tmtl_25{color:#e5e5e5;background-color:#1a1a1a}._container_1tmtl_1[data-theme=dark] ._copybtn_1tmtl_25:hover{color:#fff;background-color:#262626}._container_1tmtl_1[data-theme=dark] ._copybtn_1tmtl_25:active{background-color:#333}._container_1tmtl_1[data-theme=dark] ._language_1tmtl_19{color:#a3a3a3}._Root_9qd7q_1{display:flex;flex-direction:column;border-radius:var(--borderRadius-large)}._List_9qd7q_7{display:flex;position:relative;border-bottom:1px solid var(--base-color-neutral-2)}._Panel_9qd7q_16{overflow-y:auto;background-color:var(--base-color-neutral-0)}._Panel_9qd7q_16[hidden]{display:none}._Preview_1w6r6_1{margin-top:10px;padding:10px;border:1px solid var(--base-color-neutral-6);border-radius:var(--borderRadius-large)}._Code_1w6r6_8{margin-top:10px}._Code_1w6r6_8{position:relative}._Preview_1w6r6_1{display:flex;justify-content:center;align-items:center;min-height:calc(var(--base-size-64) * 2)}._spinner_1245j_1{width:1em;height:1em;border:var(--borderWith-thick) var(--base-color-neutral-1);border-top:var(--borderWith-thick) var(--base-color-neutral-10);border-radius:var(--borderRadius-circle);animation:_spin_1245j_1 1s linear infinite}@keyframes _spin_1245j_1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._container_1rjul_1{display:flex;flex-direction:row;justify-content:space-between;align-items:center}._separator_1y95p_1[data-orientation=horizontal]{border-bottom:var(--borderWith-thin) var(--base-color-neutral-7)}._separator_1y95p_1[data-orientation=horizontal][data-variant=middle]{margin-left:var(--base-size-4);margin-right:var(--base-size-4)}._separator_1y95p_1[data-orientation=vertical]{margin-left:var(--base-size-4);margin-right:var(--base-size-4);border-right:var(--borderWith-thin) var(--base-color-neutral-7);display:inline-block;align-items:stretch}._separator_1y95p_1[data-orientation=vertical][data-variant=middle]{margin-top:var(--base-size-2);margin-bottom:var(--base-size-2)}._shape_r5sgl_1{display:block;height:200px;width:200px;background:var(--base-color-neutral-2);border-radius:var(--borderRadius-large);margin-top:0;margin-bottom:var(--base-size-4);animation:_mui-pulse_r5sgl_1 1.5s infinite ease-in-out}._text_r5sgl_14{height:1rem;width:100%}._circle_r5sgl_19{border-radius:50%}@keyframes _mui-pulse_r5sgl_1{0%{opacity:1}50%{opacity:.4}to{opacity:1}}._Chip_9ei99_1{display:inline-flex;align-items:center;justify-content:center;gap:var(--base-size-4);border:var(--borderWith-thin);border-color:var(--base-color-neutral-6);background-color:transparent;color:var(--base-color-neutral-12);border-radius:var(--borderRadius-large);box-sizing:border-box;white-space:nowrap;-webkit-user-select:none;user-select:none}._icon_9ei99_16{display:inline-flex;align-items:center;justify-content:center}._small_9ei99_23{height:var(--base-size-20);padding:0 var(--base-size-8);font:var(--text-caption-shorthand)}._medium_9ei99_29{height:var(--base-size-24);padding:0 var(--base-size-8);font:var(--text-body-shorthand-small)}._large_9ei99_35{height:var(--control-small-size);padding:0 var(--base-size-12);font:var(--text-body-shorthand-medium)}._disabled_9ei99_42{opacity:.5;cursor:not-allowed;background-color:var(--base-color-neutral-2);border-color:var(--base-color-neutral-4);color:var(--base-color-neutral-8)}:root{color-scheme:light;--fontStack-sansSerif: "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;--space-xxs: 2px;--space-xs: 4px;--space-small: 8px;--space-medium: 16px;--space-large: 24px;--space-xl: 32px;--space-xxl: 40px;--color-bg-page: #ffffff;--color-bg-card: #ffffff;--color-text-primary: #111827;--color-text-secondary: #4b5563;--color-text-muted: #70767e;--color-border: #e5e7eb;--color-border-subtle: #f3f4f6;--color-bg-hover: #f9fafb;--color-breadcrumb: #6b7280;--color-breadcrumb-active: #111827;--color-nav-bg: rgba(255, 255, 255, .85);--color-link-accent: #4f46e5;--color-link-active-bg: rgba(79, 70, 229, .1)}:root[data-theme=dark]{color-scheme:dark;--color-bg-page: #09090b;--color-bg-card: #18181b;--color-bg-hover: #27272a;--color-text-primary: #f4f4f5;--color-text-secondary: #d4d4d8;--color-text-muted: #a1a1aa;--color-border: #27272a;--color-border-subtle: #202023;--color-breadcrumb: #a1a1aa;--color-breadcrumb-active: #f4f4f5;--color-nav-bg: rgba(9, 9, 11, .85);--color-link-accent: #818cf8;--color-link-active-bg: rgba(129, 140, 248, .14);--button-invisble-bgColor-rest: transparent;--button-invisble-bgColor-hover: #27272a;--button-invisble-bgColor-active: #3f3f46;--button-invisble-fgColor-rest: #d4d4d8;--button-invisble-fgColor-hover: #ffffff;--table-default-border-color: #3f3f46;--table-default-header-bgColor: #18181b;--table-default-header-fgColor: #f4f4f5;--tableRow-bgColor-hover: #27272a}html{box-sizing:border-box;height:100vh;scrollbar-gutter:stable}*,*:before,*:after{box-sizing:inherit}body{margin:0;font-family:var(--fontStack-sansSerif),sans-serif;background-color:var(--color-bg-page);color:var(--color-text-primary);transition:background-color .2s ease,color .2s ease}body.is-scroll-locked{overflow:hidden}code[data-line-numbers]{counter-reset:line}code[data-line-numbers]>[data-line]:before{counter-increment:line;content:counter(line);display:inline-block;width:.75rem;margin-right:1.5rem;text-align:right;color:#73737380;font-size:.8rem}.nomargin,.smallmargin{margin:0}.toc-level-2 a{padding-left:2rem}.app-container{display:flex;justify-content:center;min-height:100vh;background-color:var(--color-bg-page)}.app-content{width:100%;display:flex;flex-direction:column;min-height:100vh}.app-main{flex:1}.page-screen-container{--layout-content-half-width: 560px;display:flex;justify-content:center}.page-screen-aside{position:fixed;left:calc(50% - var(--layout-content-half-width) - 220px);width:220px;max-height:calc(100vh - 32px);overflow-y:auto}.page-screen-main{width:1120px;max-width:100%;min-height:calc(100vh - 100px);padding-block:var(--space-large);padding-inline:clamp(32px,5vw,72px)}.page-screen-list{margin-top:var(--space-medium)}.home-section-margin{margin-top:var(--space-small);margin-bottom:var(--space-large)}.home-list-margin{margin-top:var(--space-small)}.link-reset{color:inherit;text-decoration:none}.footer-container{width:100%;height:50px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-small);padding:var(--space-medium) clamp(32px,5vw,72px);border-top:1px solid var(--color-border)}.footer-links{display:flex;gap:var(--space-small)}.nav-header{position:sticky;top:0;z-index:1000;width:100%;height:50px;display:flex;justify-content:center;background-color:var(--color-nav-bg);border-bottom:1px solid var(--color-border);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background-color .2s ease,border-color .2s ease}.nav-bar{width:100%;display:flex;align-items:center;justify-content:space-between;padding-inline:clamp(32px,5vw,72px)}.nav-links-main,.nav-links-external{display:flex;align-items:center}.nav-links-main{gap:20px}.nav-links-external{gap:var(--space-medium)}.nav-external-link{display:inline-flex;align-items:center;justify-content:center}.theme-menu{position:relative;display:inline-flex}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-xs);border:0;background:transparent;color:var(--color-text-secondary);cursor:pointer}.theme-toggle:hover{color:var(--color-text-primary)}.theme-menu-options{position:absolute;z-index:20;top:calc(100% + 10px);right:0;min-width:160px;padding:6px;overflow:hidden;border:1px solid var(--color-border);border-radius:8px;background:#ffffffeb;box-shadow:0 10px 30px #0000001a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}:root[data-theme=dark] .theme-menu-options{background:#18181bf0}.theme-menu-option{width:100%;display:flex;align-items:center;gap:10px;padding:var(--space-small) 10px;border:0;border-radius:5px;background:transparent;color:var(--color-text-secondary);font:inherit;font-size:14px;text-align:left;cursor:pointer}.theme-menu-option:hover,.theme-menu-option:focus-visible{background:var(--color-border);color:var(--color-text-primary);outline:none}.nav-link{position:relative;padding:var(--space-xs) 0;color:var(--color-text-secondary);font-size:14px;text-decoration:none;transition:color .2s ease,background-color .2s ease}.nav-link:hover{color:var(--color-text-primary)}.nav-link.active{color:inherit}.section-item{border-block:1px solid var(--color-border-subtle)}.section-item+.section-item{margin-top:-1px}.section-item-link{display:block;padding:10px 5px;color:inherit;text-decoration:none}.section-item.is-selected,.section-item:hover,.section-item-link:hover{opacity:1}.section-item-wrapper{display:flex;align-items:center;gap:12px;width:100%}.section-item-image{width:36px;height:36px;flex-shrink:0;object-fit:cover;border:1px solid var(--color-border);border-radius:8px}.section-item-content{flex:1;min-width:0}.section-item-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small)}.section-item-header p{margin:0}.section-item-header>p:first-child{transition:color .1s ease}.section-item-link:hover .section-item-header>p:first-child{color:var(--color-link-accent)}.section-item-date{margin-left:1em;color:var(--color-text-muted);white-space:nowrap}.section-item-description{margin-top:var(--space-xxs);color:var(--color-text-muted)}.section-item-status{padding:1px 6px;border:1px solid #e5e7eb;border-radius:9999px;background:#f3f4f6;color:#6b7280;font-size:10px;font-weight:500;line-height:1.4;white-space:nowrap}.page-screen-aside .section-item{border:0;border-left:2px solid transparent}.page-screen-aside .section-item+.section-item{margin-top:0}.page-screen-aside .section-item.is-selected{color:var(--color-link-accent);border-left-color:var(--color-link-accent)}.page-screen-aside .section-item-link{padding:6px 5px}.page-screen-aside .section-item-wrapper{gap:var(--space-small)}.page-screen-aside .section-item-image{width:28px;height:28px;border-radius:6px}.page-screen-aside .section-item-header p{font-size:12px}.breadcrumb-nav,.breadcrumb-item{display:flex;align-items:center;gap:6px}.breadcrumb-nav{margin:var(--space-medium) 0}.breadcrumb-link{color:var(--color-breadcrumb);font-size:13px;font-weight:500;text-decoration:none;text-underline-offset:3px}.breadcrumb-link:hover{color:var(--color-link-accent);text-decoration:underline}.breadcrumb-link:focus-visible{outline:2px solid var(--color-link-accent);outline-offset:3px}.breadcrumb-active{color:var(--color-link-accent);font-weight:500}.breadcrumb-separator{color:var(--color-border)}.links-container{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.links-button{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);color:var(--color-text-primary);text-decoration:none;cursor:pointer}.links-button:hover{background:var(--color-bg-hover);transform:translateY(-1px)}.contacts-container{display:flex;justify-content:space-between;gap:var(--space-large);flex-wrap:wrap}.stack-row{display:grid;grid-template-columns:180px 1fr;align-items:center;padding:var(--space-medium) 0;border-bottom:1px solid var(--color-border-subtle)}.stack-badge{display:inline-flex;align-items:center;gap:var(--space-small);padding:6px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-card);color:var(--color-text-primary);font-size:13px;font-weight:500}.stack-badge:hover{background:var(--color-bg-hover)}:root[data-theme=dark] .section-item{border-color:var(--color-border-subtle)}:root[data-theme=dark] [role=tabpanel]{background:transparent}:root[data-theme=dark] [role=tablist],:root[data-theme=dark] table th,:root[data-theme=dark] table td{border-color:var(--table-default-border-color)}:root[data-theme=dark] [role=tab]{color:var(--color-text-secondary)}:root[data-theme=dark] [role=tab]:hover,:root[data-theme=dark] [role=tab][aria-selected=true]{color:var(--color-text-primary)}:root[data-theme=dark] table{color:var(--color-text-primary);border-color:var(--table-default-border-color)}:root[data-theme=dark] table thead{background:var(--table-default-header-bgColor);color:var(--table-default-header-fgColor)}:root[data-theme=dark] table tbody tr:hover{background:var(--tableRow-bgColor-hover)}:root[data-theme=dark] [class*=_Chip_]{color:var(--color-text-primary);border-color:#52525b;background:#27272a}:root[data-theme=dark] .article-layout-toc-link:not(.is-active),:root[data-theme=dark] .article-meta-dates,:root[data-theme=dark] .article-meta-dates-blog,:root[data-theme=dark] .section-item-date,:root[data-theme=dark] .section-item-description{color:var(--color-text-muted)}.article-layout-container{--layout-content-half-width: 560px;display:flex;justify-content:center}.article-layout-main{width:1120px;max-width:100%;min-height:calc(100vh - 100px)}.article-layout-main a:not([class]),.page-screen-main a:not([class]),.footer-container a:not([class]){display:inline-flex;align-items:center;gap:5px;color:var(--color-text-primary);font-weight:500;text-decoration-color:var(--color-text-muted);text-underline-offset:3px}.article-layout-main a:not([class]):hover,.page-screen-main a:not([class]):hover,.footer-container a:not([class]):hover{color:var(--color-link-accent)}.article-layout-toc{position:fixed;right:calc(50% - var(--layout-content-half-width) - 200px);width:200px;max-height:calc(100vh - 32px);padding-left:var(--space-medium);overflow-y:auto}.article-layout-toc-title{font-weight:600}.article-layout-toc-list{margin-top:var(--space-small);padding:0;list-style:none}.article-layout-toc-link{display:block;padding:var(--space-xxs) var(--space-small);border-left:2px solid var(--color-border);color:#6b7280;font-size:13px;text-decoration:none}.article-layout-toc-link.is-active{border-left-color:var(--color-link-accent);color:var(--color-link-accent)}.toc-item-level-3{padding-left:0}.toc-item-level-3 .article-layout-toc-link{padding-left:var(--space-large)}.article-header-title-row{display:flex;align-items:center;gap:10px}.article-status-badge{padding:2px var(--space-small);border:1px solid #e5e7eb;border-radius:9999px;background:#f3f4f6;color:#6b7280;font-size:11px}.article-meta-dates,.article-meta-dates-blog{display:flex;gap:12px;margin-top:var(--space-xs);color:#6b7280;font-size:13px}.article-meta-dates{margin-bottom:var(--space-small)}.article-meta-dates-blog{margin-bottom:var(--space-medium)}.article-section-spacing{margin-top:var(--space-medium)}.article-section-title-spacing{margin-top:var(--space-small)}.article-margin-zero{margin:0}.article-list-padding{margin-top:var(--space-small);padding-left:20px}.screenshots-container{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-medium);margin-top:var(--space-medium)}.screenshot-image{width:200px;border-radius:16px;object-fit:cover}.lightbox-thumb-wrapper{position:relative;display:inline-block;width:100%;margin-top:10px;overflow:hidden;cursor:pointer}.lightbox-thumb-img{display:block;width:100%;height:auto;border:1px solid #efefef}.lightbox-hover-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0000004d;color:#fff;font-size:14px;pointer-events:none;transition:opacity .2s ease}.lightbox-hover-overlay-visible{opacity:1}.lightbox-hover-overlay-hidden{opacity:0}.lightbox-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;background:#000000d9}.lightbox-close-btn{position:absolute;top:20px;right:20px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:#ffffff26;color:#fff;font-size:28px;cursor:pointer}.lightbox-modal-img{max-width:100%;max-height:100%;border-radius:4px;object-fit:contain;-webkit-user-select:none;user-select:none;box-shadow:0 10px 25px #00000080}.banner-cover{width:100%;height:300px;display:flex;align-items:flex-end;padding:var(--space-large);border-radius:16px;background-image:url(../assets/ae861.png);background-size:cover;background-position:center}.article-layout-banner{width:100%;max-height:100px;margin-bottom:var(--space-xl);overflow:hidden;border:1px solid var(--color-border);border-radius:16px}.article-layout-banner-img{width:100%;height:100%;object-fit:cover}@media(max-width:1400px){.page-screen-aside,.article-layout-toc{display:none!important}}@media(max-width:1730px){.page-screen-container,.article-layout-container{--layout-content-half-width: 420px}.nav-bar,.page-screen-main,.article-layout-main,.footer-container{width:100%}}@media(max-width:1400px){.page-screen-main{padding-block:var(--space-large);padding-inline:clamp(32px,7vw,72px)}.nav-bar,.footer-container{padding-inline:clamp(32px,7vw,72px)}.banner-cover{height:200px;padding:var(--space-medium)}}@media(max-width:768px){.nav-bar,.footer-container{padding-inline:var(--space-large)}.page-screen-main{padding:20px var(--space-large)}.article-layout-main,.article-layout-main img,.article-layout-main pre,.article-layout-main table{max-width:100%}.article-layout-main pre,.article-layout-main table{overflow-x:auto}}@media(max-width:640px){.stack-row{grid-template-columns:1fr;gap:12px}}@media(max-width:480px){.nav-bar,.footer-container,.page-screen-main{padding-inline:var(--space-medium)}.page-screen-main{padding-block:var(--space-medium)}}.static-layout{display:flex;justify-content:center}.static-sidebar{position:sticky;top:0;width:200px;height:calc(100vh - 70px);overflow-y:auto;padding:0 1em}.mdx-layout{display:flex;justify-content:center;width:100%}.mdx-content{width:100%;max-width:1240px;background-color:var(--color-bg-card);border-radius:10px}.doc-content{display:flex;flex-direction:column}.doc-nav{display:flex;justify-content:space-between;width:100%}.next,.prev{display:flex;flex-direction:column}.prev{margin-right:auto}.next{margin-left:auto}.mdx-toc{position:fixed;top:var(--space-medium);left:calc(50% + 640px);width:200px;max-height:calc(100vh - 32px);overflow-y:auto;border-left:1px solid var(--color-border)}.toc-level-1{margin-left:10px}@media(max-width:1700px){.static-sidebar,.mdx-toc{display:none!important}}@media(max-width:1280px){.mdx-content{max-width:900px}}.resume-container{padding-bottom:var(--space-xxl)}.resume-page{min-height:100vh;padding:var(--space-large);box-sizing:border-box;background:#fff}.resume-print-btn{display:inline-flex;align-items:center;padding:var(--space-small) var(--space-medium);background-color:var(--color-text-primary, #111827);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease,transform .1s ease}.resume-print-btn:hover{background-color:#374151;transform:translateY(-1px)}.resume-title{font-size:20px;font-weight:700;margin:0 0 var(--space-xs);color:#111827}.resume-subtitle{font-size:13px;color:#4b5563;margin:0 0 var(--space-small);font-weight:500}.resume-contact-info{display:flex;flex-wrap:wrap;gap:var(--space-small) var(--space-medium);font-size:12px;color:#4b5563;justify-content:space-between}.resume-contact-item{display:inline-flex;align-items:center;gap:var(--space-xs)}.resume-contact-icon{font-size:13px;color:#4b5563}.resume-contact-item a{color:#0366d6;text-decoration:none}.resume-section{margin-top:var(--space-small);padding-top:var(--space-small);border-top:1px solid #e5e7eb;page-break-inside:avoid;break-inside:avoid}.resume-section-title{font-size:14px;font-weight:600;margin:0 0 var(--space-small);color:#111827;letter-spacing:-.01em}.resume-stack-grid{display:flex;flex-direction:column;gap:var(--space-xs)}.resume-stack-category{display:flex;flex-direction:column;gap:var(--space-xxs)}.resume-stack-label{font-size:12px;font-weight:600;color:#374151}.resume-badges{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.resume-badge{display:inline-block;padding:var(--space-xxs) var(--space-small);background-color:#e0f2fe;color:#1e293b;border:none;border-radius:8px;font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-weight:500;print-color-adjust:exact;-webkit-print-color-adjust:exact}.resume-experience-list,.resume-projects-list{display:flex;flex-direction:column;gap:0}.resume-experience-list+.resume-experience-list{margin-top:var(--space-medium)}.resume-project-header{display:flex;flex-direction:column;gap:var(--space-xxs)}.resume-item{display:flex;flex-direction:column;gap:var(--space-xxs);page-break-inside:avoid;break-inside:avoid}.resume-item ul{padding-left:18px;margin:var(--space-xxs) 0 0}.resume-item-header{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:var(--space-small)}.resume-item-title{font-size:13px;font-weight:600;margin:0;color:#111827;display:inline}.resume-item-company{font-size:12px;font-weight:500;color:#0366d6;text-decoration:none}.resume-project-description-inline{font-size:12px;font-weight:400;color:#4b5563}.resume-project-description{margin:0;font-size:12px;line-height:1.25;color:#24292f}.resume-company-description{font-style:italic;color:#4b5563;font-size:12px}.resume-items-skills{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:2px}.smallmargin{margin:0}.resume-item-tech{font-size:12px;font-weight:500;color:#6b7280;margin-left:var(--space-small)}.resume-item-date{font-size:12px;color:#4b5563;margin:0}.resume-item-description{font-size:12px;line-height:1.35;color:#000;margin:var(--space-xxs) 0 0}.print-target{align-self:center;border:1px solid #e5e7eb;width:210mm;max-width:100%;min-height:297mm;padding:10mm 12mm;box-sizing:border-box;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;justify-self:center;background-color:#fff;color:#111827;margin:0 auto}@media(max-width:640px){.resume-page{padding:0}}.print-target a{color:#0366d6;text-decoration:none}:root[data-theme=dark] .print-target{background-color:var(--color-bg-card);color:var(--color-text-primary);border-color:var(--color-border);box-shadow:0 10px 25px -5px #00000073}:root[data-theme=dark] .resume-title,:root[data-theme=dark] .resume-section-title,:root[data-theme=dark] .resume-item-title{color:var(--color-text-primary)}:root[data-theme=dark] .resume-subtitle,:root[data-theme=dark] .resume-contact-info,:root[data-theme=dark] .resume-contact-icon,:root[data-theme=dark] .resume-company-description,:root[data-theme=dark] .resume-stack-label,:root[data-theme=dark] .resume-item-tech,:root[data-theme=dark] .resume-item-date,:root[data-theme=dark] .resume-item-description{color:#000}:root[data-theme=dark] .resume-section{border-color:var(--color-border)}:root[data-theme=dark] .resume-badge{background-color:#1e3a5f;color:#dbeafe}:root[data-theme=dark] .resume-page,:root[data-theme=dark] .resume-page .print-target{background-color:#fff;color:#111827}:root[data-theme=dark] .resume-page .print-target{border-color:#e5e7eb;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a}:root[data-theme=dark] .resume-page .resume-title,:root[data-theme=dark] .resume-page .resume-section-title,:root[data-theme=dark] .resume-page .resume-item-title{color:#111827}:root[data-theme=dark] .resume-page .resume-subtitle,:root[data-theme=dark] .resume-page .resume-contact-info,:root[data-theme=dark] .resume-page .resume-contact-icon,:root[data-theme=dark] .resume-page .resume-company-description,:root[data-theme=dark] .resume-page .resume-stack-label,:root[data-theme=dark] .resume-page .resume-item-tech,:root[data-theme=dark] .resume-page .resume-item-date{color:#4b5563}:root[data-theme=dark] .resume-page .resume-item-description{color:#24292f}:root[data-theme=dark] .resume-page .resume-section{border-color:#e5e7eb}:root[data-theme=dark] .resume-page .resume-badge{background-color:#e0f2fe;color:#1e293b}@media print{:root,:root[data-theme=dark]{color-scheme:light!important;--color-bg-page: #ffffff;--color-bg-card: #ffffff;--color-text-primary: #111827;--color-text-secondary: #4b5563;--color-text-muted: #6b7280;--color-border: #e5e7eb;--color-border-subtle: #f3f4f6}.no-print{display:none!important}body,html,.app-container,.app-content,.app-main,.page-screen-container{background:#fff!important;color:#000!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;box-shadow:none!important}.page-screen-main{width:100%!important;max-width:100%!important;padding:0!important;margin:0!important}.resume-container{box-sizing:border-box!important;padding:10mm 12mm!important;width:100%!important;max-width:100%!important;margin:0!important}.print-target{padding:unset!important;border:unset!important;width:100%!important;max-width:100%!important;min-height:unset!important;box-shadow:unset!important;background:#fff!important;color:#111827!important;margin:0!important}.resume-title,.resume-section-title,.resume-item-title{color:#111827!important}.resume-subtitle,.resume-contact-info,.resume-contact-icon,.resume-company-description,.resume-stack-label,.resume-item-tech,.resume-item-date{color:#4b5563!important}.resume-item-description{color:#24292f!important}.resume-section{border-color:#e5e7eb!important}.resume-badge{background-color:#e0f2fe!important;color:#1e293b!important}@page{size:A4 portrait;margin:0}}
