material-components-web.css.map 1.3 MB

1
  1. {"version":3,"sources":["webpack:///./packages/material-components-web/material-components-web.scss","webpack:///./packages/material-components-web/node_modules/@material/theme/_css.scss","webpack:///./packages/material-components-web/node_modules/@material/theme/_gss.scss","webpack:///./packages/material-components-web/node_modules/@material/banner/_banner.scss","webpack:///./packages/material-components-web/node_modules/@material/rtl/_rtl.scss","webpack:///./packages/material-components-web/node_modules/@material/typography/_typography.scss","webpack:///./packages/material-components-web/node_modules/@material/button/_button-shared-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/ripple/_ripple-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/touch-target/_touch-target.scss","webpack:///./packages/material-components-web/node_modules/@material/elevation/_elevation.scss","webpack:///./packages/material-components-web/node_modules/@material/button/_button-base.scss","webpack:///./packages/material-components-web/node_modules/@material/elevation/_elevation-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/ripple/_ripple.scss","webpack:///./packages/material-components-web/node_modules/@material/animation/_animation.scss","webpack:///./packages/material-components-web/node_modules/@material/button/_button-ripple.scss","webpack:///./packages/material-components-web/node_modules/@material/button/_button-protected.scss","webpack:///./packages/material-components-web/node_modules/@material/button/_button-outlined.scss","webpack:///./packages/material-components-web/node_modules/@material/button/_button-text.scss","webpack:///./packages/material-components-web/node_modules/@material/button/_button-filled.scss","webpack:///./packages/material-components-web/node_modules/@material/button/_button-outlined-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/card/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/dom/_dom.scss","webpack:///./packages/material-components-web/node_modules/@material/card/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/checkbox/_checkbox.scss","webpack:///./packages/material-components-web/node_modules/@material/checkbox/_checkbox-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/chips/trailingaction/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/chips/trailingaction/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/chips/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/chips/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/circular-progress/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/circular-progress/_keyframes.scss","webpack:///./packages/material-components-web/node_modules/@material/floating-label/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/line-ripple/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/notched-outline/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/notched-outline/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/select/_select.scss","webpack:///./packages/material-components-web/node_modules/@material/select/_select-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/select/_select-helper-text-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/select/_select-icon-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/list/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/menu-surface/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/select/_select-filled.scss","webpack:///./packages/material-components-web/node_modules/@material/select/_select-outlined.scss","webpack:///./packages/material-components-web/node_modules/@material/select/_select-ripple.scss","webpack:///./packages/material-components-web/node_modules/@material/select/_select-helper-text.scss","webpack:///./packages/material-components-web/node_modules/@material/select/_select-icon.scss","webpack:///./packages/material-components-web/node_modules/@material/data-table/_data-table.scss","webpack:///./packages/material-components-web/node_modules/@material/data-table/_data-table-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/data-table/_data-table-cell.scss","webpack:///./packages/material-components-web/node_modules/@material/data-table/_data-table-header-cell.scss","webpack:///./packages/material-components-web/node_modules/@material/icon-button/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/data-table/_data-table-progress-indicator.scss","webpack:///./packages/material-components-web/node_modules/@material/data-table/_data-table-pagination.scss","webpack:///./packages/material-components-web/node_modules/@material/dialog/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/dialog/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/drawer/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/drawer/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/fab/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/fab/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/form-field/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/icon-button/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/image-list/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/image-list/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/layout-grid/mdc-layout-grid.scss","webpack:///./packages/material-components-web/node_modules/@material/layout-grid/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/linear-progress/_keyframes.scss","webpack:///./packages/material-components-web/node_modules/@material/linear-progress/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/linear-progress/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/list/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/list/_evolution-mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/list/_evolution-variables.scss","webpack:///./packages/material-components-web/node_modules/@material/menu/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/menu-surface/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/radio/_radio.scss","webpack:///./packages/material-components-web/node_modules/@material/radio/_radio-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/segmented-button/segmented-button/_segmented-button.scss","webpack:///./packages/material-components-web/node_modules/@material/segmented-button/segment/_segment-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/segmented-button/segment/_segment.scss","webpack:///./packages/material-components-web/node_modules/@material/segmented-button/segment/_segment-ripple.scss","webpack:///./packages/material-components-web/node_modules/@material/slider/_slider.scss","webpack:///./packages/material-components-web/node_modules/@material/slider/_slider-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/snackbar/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/snackbar/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/switch/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/switch/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/tab/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/tab/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/tab-indicator/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/tab-bar/mdc-tab-bar.scss","webpack:///./packages/material-components-web/node_modules/@material/tab-bar/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/tab-indicator/mdc-tab-indicator.scss","webpack:///./packages/material-components-web/node_modules/@material/tab-scroller/mdc-tab-scroller.scss","webpack:///./packages/material-components-web/node_modules/@material/tab-scroller/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/textfield/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/textfield/helper-text/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/textfield/character-counter/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/textfield/icon/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/textfield/_variables.scss","webpack:///./packages/material-components-web/node_modules/@material/theme/_theme.scss","webpack:///./packages/material-components-web/node_modules/@material/tooltip/_tooltip-theme.scss","webpack:///./packages/material-components-web/node_modules/@material/tooltip/_tooltip.scss","webpack:///./packages/material-components-web/node_modules/@material/top-app-bar/mdc-top-app-bar.scss","webpack:///./packages/material-components-web/node_modules/@material/top-app-bar/_mixins.scss","webpack:///./packages/material-components-web/node_modules/@material/top-app-bar/_variables.scss"],"names":[],"mappings":";;;;;;;AAAA,iBAAiB;AAmEf;ECDI;ECjCF;ED6CA;CDzEH;;AAgGC;ECnCI;ECjCF;ED6CA;CDnEH;;AAyGC;EClDI;ECjCF;ED6CA;CD7DH;;AA+GC;EClDE;CDzDH;;AA2HC;;EAGI,iBGrHO;CHJZ;AA+HK;EATJ;;IAUM;GA3HL;CACF;;AAuIC;EAEI,iBG1IO;CHKZ;;AGwBC;EFMI;ECjCF;ED6CA;EAAA;EDkJA,WA1LM;EG4CJ;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CHrCL;AAAC;ECcI;ECjCF;ED6CA;CDrBH;AA6BC;ECRE;CDlBH;AGUK;EAEE;IACE;IACA;GHTP;EGYK;IDvCJ;IDwCA;ICxCA;IDwCA;GDPD;EIgBG;IFjDF;IDwCA;ICxCA;IDwCA;GDDD;CACF;AAuHG;EACE;IACE;GArHL;EAwHG;IACE;GAtHL;EAyHG;IExKF;IDwCA;ICxCA;IDwCA;IDkII;GApHL;EILG;IFjDF;IDwCA;ICxCA;IDwCA;GDoBD;EAiHG;IACE;GA/GL;CACF;;AGLC;;;EAII;CHOL;;AGHC;EAEI;CHKL;AGFG;EAEI;EAAA;EAAA;EAIA;UAAA;CHAP;;AGKC;EAEI;CHHL;AGMG;EAEI;EAAA;EAAA;CHLP;;AAyDC;EAEI;EACA;EACA;EACA;CAvDL;;AGOC;EAEI;EACA;EACA;EACA;EACA;EACA;CHLL;;AGSC;EAEI;EACA;EACA;EACA;UAAA;EACA;CHPL;;AGWC;EAEI;EACA;CHTL;;AGaC;ED/HE;EDwCA;ECxCA;EDwCA;EE2FE;EACA;EACA;EACA;EACA;EACA;CHTL;AI9EK;EFjDF;EDwCA;ECxCA;EDwCA;CD6FH;;AGOC;EAEI;EACA;EACA;UAAA;CHLL;;AGSC;EE0FE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;ECxCA;EDwCA;ECxCA;EDwCA;EEkHE;EACA;EAEA,kBAjKqB;EAkKrB,qBAlKqB;CHiL1B;AI5HK;EFjDF;EDwCA;ECxCA;EDwCA;CD2IH;;AGjBC;EDlKE;EDwCA;ECxCA;EDwCA;EE8HE;EACA;EACA;EACA;EACA;CHqBL;AI9IK;EFjDF;EDwCA;ECxCA;EDwCA;CD6JH;;AM0CC;ELnNI;ECjCF;ED6CA;CDmKH;AOhKC;ENfI;ECjCF;ED6CA;CDwKH;AOtGG;EN9EE;ECjCF;ED6CA;CD6KH;AOjEK;EAiBF;ENzIE;ECjCF;ED6CA;CDmLH;AO/BG;EAEI;CPgCP;AO3BK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD4LH;AOjBC;EAEI;CPkBL;;AG9CC;EDzLE;EDwCA;ECxCA;EDwCA;CDsMH;AMCC;ELnNI;ECjCF;ED6CA;CD2MH;AOxMC;ENfI;ECjCF;ED6CA;CDgNH;AO9IG;EN9EE;ECjCF;ED6CA;CDqNH;AOzGK;EAiBF;ENzIE;ECjCF;ED6CA;CD2NH;AOvEG;EAEI;CPwEP;AOnEK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDoOH;AOzDC;EAEI;CP0DL;AI9NK;EFjDF;EDwCA;ECxCA;EDwCA;CD6OH;;AQxRC;EAOM;CRqRP;;ASnQC;EAGM;EACA;EACA;ERCF;ECjCF;ED6CA;EQFI;ERVF;ECjCF;ED6CA;CD8PH;;AU7RC;ELqOE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EUsJA;EACA;EDhHA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA;EAGA;EACA;CViPH;AW7HC;EV1KE;EAAA;EUgLI;EACA;EACA;CX4HP;AUrPC;EAEI;EACA;CVsPL;AUjPC;EAEI;CVkPL;AU9OC;EAEI;CV+OL;AU3OC;EAEI;EACA;CV4OL;AUrVG;ERfA;EDwCA;ECxCA;EDwCA;ESwFF;EACA;EACA;EACA;EACA;CV2OD;AI9TK;EFjDF;EDwCA;ECxCA;EDwCA;CD6UH;AUhWG;EFFA;EACA;EACA;EACA,aAhCK;EA4CH;EACA;UAAA;CR0VL;;AUnWC;ER1BE;EDwCA;ECxCA;EDwCA;CD4VH;AInVK;EFjDF;EDwCA;ECxCA;EDwCA;CDkWH;;AU1WC;EA4GA;CVkQD;;AUpWG;;;ER1CA;EDwCA;ECxCA;EDwCA;CD+WH;AItWK;;;;;EFjDF;EDwCA;ECxCA;EDwCA;CDyXH;AUhXG;;;ERjDA;EDwCA;ECxCA;EDwCA;CDiYH;AIxXK;;;;;EFjDF;EDwCA;ECxCA;EDwCA;CD2YH;;AU3XC;EFFE,gBAHsB;EAItB,mBAJsB;CRqYzB;;AYtLC;EACE;IACE,gECnR2B;YDmR3B,wDCnR2B;IDwR3B;YAAA;GZqLH;EYlLC;IACE;YAAA;GZoLH;CACF;;AYhMC;EACE;IACE,gECnR2B;YDmR3B,wDCnR2B;IDwR3B;YAAA;GZqLH;EYlLC;IACE;YAAA;GZoLH;CACF;AYhLC;EACE;IACE;YAAA;IACA;GZkLH;EY/KC;IACE;GZiLH;CACF;AYzLC;EACE;IACE;YAAA;IACA;GZkLH;EY/KC;IACE;GZiLH;CACF;AY9KC;EACE;IACE;YAAA;IACA;GZgLH;EY7KC;IACE;GZ+KH;CACF;AYvLC;EACE;IACE;YAAA;IACA;GZgLH;EY7KC;IACE;GZ+KH;CACF;AcvdC;EFuEE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZgZL;AY5YC;;EAGI;EACA;EACA;EACA;EACA;CZ6YL;AYzYC;EAGI;EXpEA;ECjCF;ED6CA;CDocH;AY/XC;EXjFI;ECjCF;ED6CA;CDycH;AYxXG;EAEI;UAAA;CZyXP;AYrXG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZsXP;AYhXG;EAEI;EACA;EACA;CZiXP;AY3WG;EAEI;UAAA;CZ4WP;AYpWG;EAEI;UAAA;EAKA;UAAA;CZiWP;AYnVC;;EAGI;EACA;EACA;EACA;EACA;CZoVL;AY/UG;EAEI;EACA;CZgVP;Ac/gBG;EAEI;EAGA;EACA;EACA;EACA;Cd8gBP;AcxgBG;EAEI;EACA;CdygBP;;Ae5gBC;EJgKE;EACA,0HA0FW;EI9NX;CfqfH;AengBC;EJiJE;EACA,2HA0FW;CX2Rd;AelgBC;EJ4IE;EACA,4HA0FW;CX+Rd;AelgBC;EJwIE;EACA,yHA0FW;CXmSd;;AgBpiBC;EAyBE;ChB+gBH;;AiBnjBC;EX0UE,aA1CO;ELrQL;ECjCF;ED6CA;EK6UA;CNuMH;AMjcC;ELnFE;CDuhBH;AMxaC;EL/GE;CD0hBH;AMnVC;ELnNI;ECjCF;ED6CA;CD+hBH;AMrUC;EL1NE;CDkiBH;AO/hBC;ENfI;ECjCF;ED6CA;CDuiBH;AOreG;EN9EE;ECjCF;ED6CA;CD4iBH;AOhcK;EAiBF;ENzIE;ECjCF;ED6CA;CDkjBH;AO9ZG;EAEI;CP+ZP;AO1ZK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD2jBH;AOhZC;EAEI;CPiZL;AMpQC;ELtUI;ECjCF;ED6CA;CDmkBH;;AkBnmBC;EZ6WE;EA1CA,aA1CO;ELrQL;ECjCF;ED6CA;CD2kBH;AMxfC;EL/FI;ECjCF;ED6CA;CDglBH;AMjeC;EL/GE;CDmlBH;AM5YC;ELnNI;ECjCF;ED6CA;CDwlBH;AM9XC;EL1NE;CD2lBH;AOxlBC;ENfI;ECjCF;ED6CA;CDgmBH;AO9hBG;EN9EE;ECjCF;ED6CA;CDqmBH;AOzfK;EAiBF;ENzIE;ECjCF;ED6CA;CD2mBH;AOvdG;EAEI;CPwdP;AOndK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDonBH;AOzcC;EAEI;CP0cL;AM7TC;ELtUI;ECjCF;ED6CA;CD4nBH;;Ae7pBC;ET8WE;EA1CA,aA1CO;ELrQL;ECjCF;ED6CA;CDooBH;AMjjBC;EL/FI;ECjCF;ED6CA;CDyoBH;AM1hBC;EL/GE;CD4oBH;AMrcC;ELnNI;ECjCF;ED6CA;CDipBH;AMvbC;EL1NE;CDopBH;AOjpBC;ENfI;ECjCF;ED6CA;CDypBH;AOvlBG;EN9EE;ECjCF;ED6CA;CD8pBH;AOljBK;EAiBF;ENzIE;ECjCF;ED6CA;CDoqBH;AOhhBG;EAEI;CPihBP;AO5gBK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD6qBH;AOlgBC;EAEI;CPmgBL;AMtXC;ELtUI;ECjCF;ED6CA;CDqrBH;;AgBvtBC;EVqUE,aA1CO;ELrQL;ECjCF;ED6CA;EK6UA;EahQE,kBAzEmB;CnB0rBxB;AM3mBC;ELnFE;CDisBH;AMllBC;EL/GE;CDosBH;AM7fC;ELnNI;ECjCF;ED6CA;CDysBH;AM/eC;EL1NE;CD4sBH;AOzsBC;ENfI;ECjCF;ED6CA;CDitBH;AO/oBG;EN9EE;ECjCF;ED6CA;CDstBH;AO1mBK;EAiBF;ENzIE;ECjCF;ED6CA;CD4tBH;AOxkBG;EAEI;CPykBP;AOpkBK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDquBH;AO1jBC;EAEI;CP2jBL;AM9aC;ELtUI;ECjCF;ED6CA;CD6uBH;AmB/tBC;ElBdE;CDgvBH;AmBtsBC;ElB1CE;CDmvBH;AmBnqBG;EAEI;EACA;EACA;CnBoqBP;AmBhqBG;EAEI;EACA;CnBiqBP;;AoBjxBC;EnBSI;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EUsJA;EACA;EAbA;EACA,0HA0FW;ES+Db;EACA;EACA;CpBseD;AWlmBC;EV1KE;EAAA;EUgLI;EACA;EACA;CXimBP;AoB5xBG;EnBHE;ECjCF;ED6CA;EoBxCA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;ED2BI;CpBuyBP;;AoBlyBC;ET0IE;EACA,yHA0FW;ES8BX,kBE9SY;EF+SZ;EAIA;CpBkiBH;AoBpyBG;EAEI;CpBqyBP;;AoBhyBC;EAEI;EACA;CpBkyBL;;AoB1xBC;EAEI;EACA;EACA;EACA;EACA;CpB4xBL;AoBzxBG;EAEI;EACA;CpB0xBP;;AoBrxBC;EAEI;EACA;CpBuxBL;;AoBnxBC;EAEI;EACA;CpBqxBL;;AoBjjBC;EAGI;CpBkjBL;;AoBrjBC;EAGI;CpBsjBL;;AoBjxBC;EAEI;EACA;EACA;EACA;EACA;EACA;CpBmxBL;;AoB3wBC;EAsNA;EACA;EACA;EApNI;EACA;EACA;EACA;EACA;EACA;CpB8wBL;;AoB1wBC;EAEI;EACA;CpB4wBL;;AoBxwBC;EAEI;EACA;CpB0wBL;;AoBlwBC;EA6LA,cAD+B;EAE/B;EACA;EACA;EA5LI;EACA;CpBswBL;;AoBlwBC;EAEI;CpBowBL;;AoBhwBC;;EA8KA,cAD+B;EAE/B;EACA;EACA;CpBulBD;;AoBjwBC;EnBnIE;EmByIE;EACA;CpBgwBL;;AoB5vBC;ElBtLE;EDwCA;ECxCA;EDwCA;CDi5BH;AIx4BK;EFjDF;EDwCA;ECxCA;EDwCA;CDu5BH;;AoB/vBC;EAkJA,qBAhJ6B;EAiJ7B;EACA;EACA;EAjJI;EACA;EACA;KAAA;MAAA;UAAA;CpBmwBL;AoBhwBG;EAEI;CpBiwBP;;AoBxvBC;ElBpNE;EDwCA;ECxCA;EDwCA;EmBgLE;CpB4vBL;AIn6BK;EFjDF;EDwCA;ECxCA;EDwCA;CDk7BH;AoB/vBG;ElB3NA;EDwCA;ECxCA;EDwCA;CDw7BH;AI/6BK;EFjDF;EDwCA;ECxCA;EDwCA;CD87BH;;AoBpwBC;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CpBswBL;AIh8BK;EgB+LE;EACA;CpBowBP;;AoB3vBC;EAII;EAGA;CpByvBL;;AoBrvBC;EnB7NE;CDs9BH;;AoB3uBC;ER/ME;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZ27BL;AYv7BC;EAGI;EACA;EACA;EACA;EACA;CZu7BL;AYn7BC;EAGI;EXpEA;ECjCF;ED6CA;CD8+BH;AYz6BC;EXjFI;ECjCF;ED6CA;CDm/BH;AYl6BG;EAEI;UAAA;CZm6BP;AY/5BG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZg6BP;AY15BG;EAEI;EACA;EACA;CZ25BP;AYr5BG;EAEI;UAAA;CZs5BP;AY94BG;EAEI;UAAA;EAKA;UAAA;CZ24BP;AY73BC;EAGI;EACA;EACA;EACA;EACA;CZ63BL;AYx3BG;EAEI;EACA;CZy3BP;AOjhCC;ENfI;ECjCF;ED6CA;CDyhCH;AOv9BG;EN9EE;ECjCF;ED6CA;CD8hCH;AOl7BK;EAiBF;ENzIE;ECjCF;ED6CA;CDoiCH;AOh5BG;EAEI;CPi5BP;AO54BK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD6iCH;AOl4BC;EAEI;CPm4BL;;AuB/6BC;EtB7II;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;CDyjCH;AOtjCC;ENfI;ECjCF;ED6CA;CD8jCH;AO5/BG;EN9EE;ECjCF;ED6CA;CDmkCH;AOv9BK;EAiBF;ENzIE;ECjCF;ED6CA;CDykCH;AOr7BG;EAEI;CPs7BP;AOj7BK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDklCH;AOv6BC;EAEI;CPw6BL;AOllCC;ENfI;ECjCF;ED6CA;CD0lCH;AOxhCG;EN9EE;ECjCF;ED6CA;CD+lCH;AOn/BK;EAiBF;ENzIE;ECjCF;ED6CA;CDqmCH;AOj9BG;EAEI;CPk9BP;AO78BK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD8mCH;AOn8BC;EAEI;CPo8BL;AO9mCC;;ENfI;ECjCF;ED6CA;CDunCH;AwBh+BC;EvBnKI;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;CD+nCH;AwBttBG;EvBrbE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;CDgpCH;AwB1nBC;EvBliBI;ECjCF;ED6CA;EAAA;CDspCH;AwBhoBC;;;EvBliBI;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;CDgqCH;AwBnmBC;EACE;IvB1kBE;ICjCF;ID6CA;IAAA;GDuqCD;EwBpmBC;IvB/kBE;ICjCF;ID6CA;IAZE;ICjCF;ID6CA;GD+qCD;CACF;AwBnnBC;EACE;IvB1kBE;ICjCF;ID6CA;IAAA;GDuqCD;EwBpmBC;IvB/kBE;ICjCF;ID6CA;IAZE;ICjCF;ID6CA;GD+qCD;CACF;AwBvmBC;EACE;IvBtlBE;ICjCF;ID6CA;IAZE;ICjCF;ID6CA;GDyrCD;EwBzmBC;IvB5lBE;ICjCF;ID6CA;IAAA;GD+rCD;CACF;AwBvnBC;EACE;IvBtlBE;ICjCF;ID6CA;IAZE;ICjCF;ID6CA;GDyrCD;EwBzmBC;IvB5lBE;ICjCF;ID6CA;IAAA;GD+rCD;CACF;AwB37BO;EAEI;UAAA;CxB47BX;AwBr7BO;EAEI;UAAA;CxBs7BX;AwBhrBC;EvBliBI;ECjCF;ED6CA;EAAA;CD4sCH;AwBtrBC;;;EvBthBE;EAZE;ECjCF;ED6CA;CDotCH;AwB5qBG;EvBpjBE;ECjCF;ED6CA;CDytCH;AwB3qBG;EvB1jBE;ECjCF;ED6CA;CD8tCH;AwBtrBG;EvBpjBE;ECjCF;ED6CA;CDmuCH;AwBrrBG;EvB1jBE;ECjCF;ED6CA;CDwuCH;;AuB5xBC;EACE;IAEE,8BAPc;GvBqyBjB;EuB3xBC;IACE,8DV3gB+B;YU2gB/B,sDV3gB+B;GbwyClC;EuB1xBC;IACE;GvB4xBH;CACF;;AuBxyBC;EACE;IAEE,8BAPc;GvBqyBjB;EuB3xBC;IACE,8DV3gB+B;YU2gB/B,sDV3gB+B;GbwyClC;EuB1xBC;IACE;GvB4xBH;CACF;AuBzxBC;EACE;IAEE;YAAA;GvB0xBH;EuBvxBC;IACE;YAAA;GvByxBH;EuBtxBC;IACE;YAAA;GvBwxBH;CACF;AuBpyBC;EACE;IAEE;YAAA;GvB0xBH;EuBvxBC;IACE;YAAA;GvByxBH;EuBtxBC;IACE;YAAA;GvBwxBH;CACF;AuBrxBC;EACE;IACE,8DVliB+B;YUkiB/B,sDVliB+B;IUmiB/B;IACA;GvBuxBH;EuBpxBC;IACE;IACA;GvBsxBH;CACF;AuBhyBC;EACE;IACE,8DVliB+B;YUkiB/B,sDVliB+B;IUmiB/B;IACA;GvBuxBH;EuBpxBC;IACE;IACA;GvBsxBH;CACF;AuBnxBC;EACE;IACE,8DVjjB+B;YUijB/B,sDVjjB+B;IUkjB/B;YAAA;IACA;GvBqxBH;EuBlxBC;IACE;YAAA;IACA;GvBoxBH;CACF;AuB9xBC;EACE;IACE,8DVjjB+B;YUijB/B,sDVjjB+B;IUkjB/B;YAAA;IACA;GvBqxBH;EuBlxBC;IACE;YAAA;IACA;GvBoxBH;CACF;AuBjxBC;EACE;IACE,+DA7DmC;YA6DnC,uDA7DmC;IA8DnC;YAAA;IACA;GvBmxBH;EuBhxBC;IACE;YAAA;IACA;GvBkxBH;CACF;AuB5xBC;EACE;IACE,+DA7DmC;YA6DnC,uDA7DmC;IA8DnC;YAAA;IACA;GvBmxBH;EuBhxBC;IACE;YAAA;IACA;GvBkxBH;CACF;AuB/wBC;EACE;IACE;YAAA;IACA;YAAA;IACA;GvBixBH;EuB9wBC;IACE;YAAA;IACA;GvBgxBH;CACF;AuB1xBC;EACE;IACE;YAAA;IACA;YAAA;IACA;GvBixBH;EuB9wBC;IACE;YAAA;IACA;GvBgxBH;CACF;AuB7wBC;EACE;IACE,+DAvFmC;YAuFnC,uDAvFmC;IAwFnC;YAAA;IACA;GvB+wBH;EuB5wBC;IACE;YAAA;IACA;GvB8wBH;CACF;AuBxxBC;EACE;IACE,+DAvFmC;YAuFnC,uDAvFmC;IAwFnC;YAAA;IACA;GvB+wBH;EuB5wBC;IACE;YAAA;IACA;GvB8wBH;CACF;AuB3wBC;EACE;IACE;YAAA;IACA;YAAA;IACA;GvB6wBH;EuB1wBC;IAEE;YAAA;IACA;GvB2wBH;CACF;AuBtxBC;EACE;IACE;YAAA;IACA;YAAA;IACA;GvB6wBH;EuB1wBC;IAEE;YAAA;IACA;GvB2wBH;CACF;AuBt0CC;EAyKA;EACA;EACA;EACA;EACA,YCxMU;EDyMV,aCzMU;ED0MV;EACA;EACA;EACA;CvBgqCD;;AuB50CC;ECqhBA;IvBliBI;ICjCF;ID6CA;IAAA;GDq1CD;;EwB/zBD;;;IvBthBE;IAZE;ICjCF;ID6CA;GD81CD;;EwBtzBC;IvBpjBE;ICjCF;ID6CA;GDo2CD;EwBtzBC;IvB1jBE;ICjCF;ID6CA;GDy2CD;;EuB91CC;IAEI;GvBg2CL;CACF;AuB31CC;EA8JA;EACA;CvBgsCD;;AuBz1CC;EA0PE;EACA;EACA;EACA;EACA;EACA,YCxTQ;EDyTR,aCzTQ;ED2TR;EACA;EACA;EACA;EACA;EAIA;CvB+lCH;;AuBr2CC;EAsSE;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;CvBgkCH;AuBzjCC;EAEI;CvB0jCL;;AuB/2CC;EAsWE;EAQA;EACA;EACA,8BAuDgB;EAtDhB,6BAsDgB;CvBg9BnB;;AuBn3CC;EA4XE;EACA;EACA;UAAA;EACA;EACA;EACA;EAIA;EAAA;EAAA;CvBw/BH;;AuB9tCG;EACE;UAAA;EACA;UAAA;CvBiuCL;AuB5tCG;EAIE;UAAA;EAEA;CvB0tCL;AuBrtCG;EACE;UAAA;EAEA;CvBstCL;AuBjtCG;EACE;UAAA;EAEA;CvBktCL;AuB7sCG;EACE;UAAA;EAEA;CvB8sCL;AuB3sCG;EACE;UAAA;EAEA;CvB4sCL;AuBvsCG;EACE;UAAA;EAEA;CvBwsCL;AuBrsCG;EACE;UAAA;EAEA;CvBssCL;AuBjsCG;EAEE;UAAA;EAEA;CvBisCL;;AuBx5CC;;;EAyPA;CvBqqCD;AuBt5CG;;;EAgWF;CvB2jCD;;AuBp5CC;EAuPA;EACA;EACA;EACA;EACA;CvBiqCD;AuBv5CG;EA8GF;EACA;CvB4yCD;;AuBp5CC;EtBtFI;ECjCF;ED6CA;CDo+CH;AwB3jCG;EvBrbE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;CDq/CH;;AuB55CG;EAuQA;EAAA;EAAA;EASA;CvBipCH;AuB75CG;EAkVF;UAAA;CvB8kCD;;AuBv5CG;;EA4QA;UAAA;EACA;EAIA;EAAA;EAAA;CvB6oCH;AuB15CG;;EAyUF;UAAA;EACA;CvBqlCD;;AuBt5CG;;;;EAmEF;CvB01CD;;AuBj4CC;EXnHE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZq/CL;AYj/CC;;EAGI;EACA;EACA;EACA;EACA;CZk/CL;AY9+CC;EAGI;EXpEA;ECjCF;ED6CA;CDyiDH;AYp+CC;EXjFI;ECjCF;ED6CA;CD8iDH;AY79CG;EAEI;UAAA;CZ89CP;AY19CG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZ29CP;AYr9CG;EAEI;EACA;EACA;CZs9CP;AYh9CG;EAEI;UAAA;CZi9CP;AYz8CG;EAEI;UAAA;EAKA;UAAA;CZs8CP;AY55CC;;EAGI;EACA;EACA;EACA,YAZK;EAaL,aAbK;CZ06CV;AYx5CG;;EAGI;EACA;EACA;EACA;EACA;CZy5CP;AYr5CG;EAEI;EACA;CZs5CP;AOhxCC;EAEI;CPixCL;AO7wCC;;EN1VI;ECjCF;ED6CA;CDimDH;;AuBn8CC;EXgDE;EACA;EACA;EACA;EACA;EAGA;CZq5CH;;AyBnhDC;EjB5GE;EACA;EACA;EACA,aAhCK;EAqCH;EACA;EACA,YAvCG;EAwCH;UAAA;CR+nDL;;AyBppDC;EAMI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;CzB+oDL;AyBjlDC;EAEI,aC5GC;ED6GD,YC7GC;ED8GD,gBC9GC;C1BgsDN;AyBlmDC;ExBlDI;ECjCF;ED6CA;CD6oDH;AyBhkDC;EAEI,YCpIe;C1BqsDpB;AyBtpDG;EAEI;EACA;CzBupDP;;AyB7oDC;EbqBE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZynDL;AYrnDC;;EAGI;EACA;EACA;EACA;EACA;CZsnDL;AYlnDC;EAGI;EXpEA;ECjCF;ED6CA;CD6qDH;AYxmDC;EXjFI;ECjCF;ED6CA;CDkrDH;AYjmDG;EAEI;UAAA;CZkmDP;AY9lDG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZ+lDP;AYzlDG;EAEI;EACA;EACA;CZ0lDP;AYplDG;EAEI;UAAA;CZqlDP;AY7kDG;EAEI;UAAA;EAKA;UAAA;CZ0kDP;AYhiDC;;EAGI;EACA;EACA;EACA,YAZK;EAaL,aAbK;CZ8iDV;AY5hDG;;EAGI;EACA;EACA;EACA;EACA;CZ6hDP;AYzhDG;EAEI;EACA;CZ0hDP;AOztDC;ENfI;ECjCF;ED6CA;CDiuDH;AO/pDG;EN9EE;ECjCF;ED6CA;CDsuDH;AO1nDK;EAiBF;ENzIE;ECjCF;ED6CA;CD4uDH;AOxlDG;EAEI;CPylDP;AOplDK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDqvDH;AO1kDC;EAEI;CP2kDL;AyBruDG;EAEI;EAGA;EACA;EACA;EACA;CzBouDP;;A2BlxCC;EAEI;C3BoxCL;;AyB7tDC;ExBtCE;CDuwDH;;A2BvwCC;EAEI;C3BywCL;A2BtwCG;EAEI;C3BuwCP;A2BnwCG;EAEI;C3BowCP;;A2BzvCC;EAkBE,YCpkBgB;EDqkBhB,aCrkBgB;EDskBhB,gBCtkBgB;C5BizDnB;;AyBruDC;EAEI,aG7Ee;EH8Ef,YG9Ee;EH+Ef,gBG/Ee;C5BszDpB;;A2B5vCC;EASE,YCnkBiB;EDokBjB,aCpkBiB;EDqkBjB,gBCrkBiB;C5B4zDpB;;AyBluDC;EvBzGE;EDwCA;ECxCA;EDwCA;CD0yDH;AIjyDK;EFjDF;EDwCA;ECxCA;EDwCA;CDgzDH;;A2B/tCC;EzBznBE;EDwCA;ECxCA;EDwCA;CDuzDH;AI9yDK;EFjDF;EDwCA;ECxCA;EDwCA;CD6zDH;;A2Bx0DC;E1BWE;EAAA;EAAA;EIsMA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;E0B6cA,aAqKO;EhB5dP;EACA;EgBpJE;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;C3B01DL;A2BjkDC;E1BpSE;CDw2DH;A2BphDC;E1BpVE;CD22DH;A2BpzCC;;EzB/lBE;EDwCA;ECxCA;EDwCA;CDk3DH;AIz2DK;;;EFjDF;EDwCA;ECxCA;EDwCA;CD03DH;AWhtDC;EV1KE;EAAA;EUgLI;EACA;EACA;CX+sDP;A2Bp3DK;EACE;EACA;C3Bs3DP;A2Bl3DG;E1B/BE;ECjCF;ED6CA;CD04DH;A2Bj3DG;EnB9CA;EACA;EACA;EACA,aAhCK;EA4CH;EACA;UAAA;CRu5DL;;A2Bp3DC;EAEI,yICzCY;ED6CZ;C3Bm3DL;;A2B/2DC;EAEI;EACA;C3Bi3DL;;A2B72DC;EAEI;C3B+2DL;;A2B32DC;EAEI;EACA;EACA;C3B62DL;;A2Bz2DC;EAEI,aCzFc;C5Bo8DnB;;A2Bv2DC;EAEI;EAQA;EACA,8BJ0Xc;EIzXd,6BJyXc;CvBy+CnB;;A2B91DC;EAEI;C3Bg2DL;;A2B51DC;EAEI;C3B81DL;;A2B11DC;;EAMI;C3By1DL;;A2BllDC;E1BxXI;ECjCF;ED6CA;CDo8DH;A2Bv9CC;EAEI;C3Bw9CL;A2BplDG;E1B/XE;ECjCF;ED6CA;CD48DH;A2BllDC;E1BtYI;ECjCF;ED6CA;CDi9DH;A2Bj2DG;E1B5HE;ECjCF;ED6CA;CDs9DH;;A2B71DC;EAEI;EACA,aCtJc;ED0Jd;C3B41DL;;A2Bv1DC;EAEI,YCjKc;C5B0/DnB;;A2Bl1DG;EAEI;EACA,wBCxKa;ED4Kb;C3Bi1DP;A2B90DK;EAEI;EAGA,uBCnL0B;EDuL1B;C3B00DT;A2Bv0DO;EAII;C3Bs0DX;A2B9zDG;EAEI;C3B+zDP;A2B5zDK;EAGI;EACA;C3B4zDT;A2BvzDG;EAEI;EAKA;C3BozDP;A2BjzDK;EAEI,YCpOU;C5BshEnB;;A2BvyDC;EfzLE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZi+DL;AY79DC;;EAGI;EACA;EACA;EACA;EACA;CZ89DL;AY19DC;EAGI;EXpEA;ECjCF;ED6CA;CDqhEH;AYh9DC;EXjFI;ECjCF;ED6CA;CD0hEH;AYz8DG;EAEI;UAAA;CZ08DP;AYt8DG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZu8DP;AYj8DG;EAEI;EACA;EACA;CZk8DP;AY57DG;EAEI;UAAA;CZ67DP;AYr7DG;EAEI;UAAA;EAKA;UAAA;CZk7DP;AYp6DC;;EAGI;EACA;EACA;EACA;EACA;CZq6DL;AYh6DG;EAEI;EACA;CZi6DP;AOzjEC;ENfI;ECjCF;ED6CA;CDikEH;AO//DG;EN9EE;ECjCF;ED6CA;CDskEH;AOt+DK;EA6BF;ENzIE;ECjCF;ED6CA;CD4kEH;AOx7DG;EAEI;CPy7DP;AOp7DK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDqlEH;AO16DC;EAEI;CP26DL;A2B33DG;EffA;EACA;EACA;EACA;EACA;EAGA;EeYI;C3Bg4DP;;AO32DG;ENlQE;ECjCF;ED6CA;CDumEH;AOpmEC;ENfI;ECjCF;ED6CA;CD4mEH;AO1iEG;EN9EE;ECjCF;ED6CA;CDinEH;AOjhEK;EA6BF;ENzIE;ECjCF;ED6CA;CDunEH;AOn+DG;EAEI;CPo+DP;AO/9DK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDgoEH;AOr9DC;EAEI;CPs9DL;;A2Bj5DG;EACE;IACE;YAAA;IACA;G3Bo5DL;E2Bj5DG;IACE;YAAA;IACA;G3Bm5DL;CACF;;A2B55DG;EACE;IACE;YAAA;IACA;G3Bo5DL;E2Bj5DG;IACE;YAAA;IACA;G3Bm5DL;CACF;A2B/4DC;EAsNE;EAlNE;EACA;EACA;C3B+4DL;A2B5rDC;EAEI;C3B6rDL;A2BzrDC;EnBhdE,gBAHsB;EAItB,mBAJsB;CRgpEzB;;A2Bl5DC;EAEI;UAAA;C3Bo5DL;;A6BtjEC;;E5BrHI;ECjCF;ED6CA;CDsqEH;;A6B/iEC;E5BvHE;CD0qEH;;A8B7tEC;EACE;IACE;YAAA;G9BguEH;CACF;;A8BnuEC;EACE;IACE;YAAA;G9BguEH;CACF;A8BztEC;EAEI;IACE;YAAA;G9B0tEL;E8B3tEG;IACE;YAAA;G9B6tEL;E8B9tEG;IACE;YAAA;G9BguEL;E8BjuEG;IACE;YAAA;G9BmuEL;E8BpuEG;IACE;YAAA;G9BsuEL;E8BvuEG;IACE;YAAA;G9ByuEL;E8B1uEG;IACE;YAAA;G9B4uEL;E8B7uEG;IACE;YAAA;G9B+uEL;CACF;A8BnvEC;EAEI;IACE;YAAA;G9B0tEL;E8B3tEG;IACE;YAAA;G9B6tEL;E8B9tEG;IACE;YAAA;G9BguEL;E8BjuEG;IACE;YAAA;G9BmuEL;E8BpuEG;IACE;YAAA;G9BsuEL;E8BvuEG;IACE;YAAA;G9ByuEL;E8B1uEG;IACE;YAAA;G9B4uEL;E8B7uEG;IACE;YAAA;G9B+uEL;CACF;A8BtuEC;EACE;IACE;G9BwuEH;E8BtuEC;IACE;G9BwuEH;E8BtuEC;IACE;G9BwuEH;E8BtuEC;IACE;G9BwuEH;E8BtuEC;IACE;G9BwuEH;E8BtuEC;IACE;G9BwuEH;CACF;A8B1vEC;EACE;IACE;G9BwuEH;E8BtuEC;IACE;G9BwuEH;E8BtuEC;IACE;G9BwuEH;E8BtuEC;IACE;G9BwuEH;E8BtuEC;IACE;G9BwuEH;E8BtuEC;IACE;G9BwuEH;CACF;A8BhuEC;EACE;IACE;G9BkuEH;E8BhuEC;IACE;G9BkuEH;E8BhuEC;IACE;G9BkuEH;E8BhuEC;IACE;G9BkuEH;E8BhuEC;IACE;G9BkuEH;E8BhuEC;IACE;G9BkuEH;CACF;A8BpvEC;EACE;IACE;G9BkuEH;E8BhuEC;IACE;G9BkuEH;E8BhuEC;IACE;G9BkuEH;E8BhuEC;IACE;G9BkuEH;E8BhuEC;IACE;G9BkuEH;E8BhuEC;IACE;G9BkuEH;CACF;A8B1tEC;EACE;IACE;G9B4tEH;E8B1tEC;IACE;G9B4tEH;E8B1tEC;IACE;G9B4tEH;E8B1tEC;IACE;G9B4tEH;E8B1tEC;IACE;G9B4tEH;E8B1tEC;IACE;G9B4tEH;CACF;A8B9uEC;EACE;IACE;G9B4tEH;E8B1tEC;IACE;G9B4tEH;E8B1tEC;IACE;G9B4tEH;E8B1tEC;IACE;G9B4tEH;E8B1tEC;IACE;G9B4tEH;E8B1tEC;IACE;G9B4tEH;CACF;A8BptEC;EACE;IACE;G9BstEH;E8BptEC;IACE;G9BstEH;E8BptEC;IACE;G9BstEH;E8BptEC;IACE;G9BstEH;E8BptEC;IACE;G9BstEH;CACF;A8BruEC;EACE;IACE;G9BstEH;E8BptEC;IACE;G9BstEH;E8BptEC;IACE;G9BstEH;E8BptEC;IACE;G9BstEH;E8BptEC;IACE;G9BstEH;CACF;A8B9sEC;EACE;IACE;YAAA;G9BgtEH;E8B9sEC;IACE;YAAA;G9BgtEH;E8B9sEC;IACE;YAAA;G9BgtEH;CACF;A8BztEC;EACE;IACE;YAAA;G9BgtEH;E8B9sEC;IACE;YAAA;G9BgtEH;E8B9sEC;IACE;YAAA;G9BgtEH;CACF;A8BxsEC;EACE;IACE;YAAA;G9B0sEH;E8BxsEC;IACE;YAAA;G9B0sEH;E8BxsEC;IACE;YAAA;G9B0sEH;CACF;A8BntEC;EACE;IACE;YAAA;G9B0sEH;E8BxsEC;IACE;YAAA;G9B0sEH;E8BxsEC;IACE;YAAA;G9B0sEH;CACF;A6B10EC;EAEI;EACA;EACA;EACA;EAIA;C7Bw0EL;;A6Bp0EC;;;;EAKI;EACA;EACA;C7Bs0EL;;A6Bl0EC;EAEI;UAAA;C7Bo0EL;;A6Bh0EC;EAII;EACA;EACA;EACA;C7Bg0EL;;A6B5zEC;;EAGI;C7B8zEL;;A6B1zEC;EAEI;C7B4zEL;;A6BxzEC;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;C7B0zEL;A6BvzEG;EAEI;EACA;EACA;EACA;UAAA;C7BwzEP;;A6BnzEC;EAEI;EACA;EACA;EACA;EACA;C7BqzEL;A6BlzEG;EAEI;C7BmzEP;;A6B7yEG;EAEI;EACA;C7B+yEP;;A6BzyEG;EAEI;C7B2yEP;A6BvyEG;EAEI;C7BwyEP;A6B9tEC;EAKI;UAAA;C7B4tEL;A6BptEC;EAEI,gHALuB;UAKvB,wGALuB;C7B0tE5B;A6BzsEG;EAEI;UAAA;C7B0sEP;A6B5sEG;EAEI;UAAA;C7B6sEP;A6B/sEG;EAEI;UAAA;C7BgtEP;A6BltEG;EAEI;UAAA;C7BmtEP;A6B9sEC;EAGI;UAAA;C7B8sEL;A6BzsEC;EAGI;UAAA;C7BysEL;;A6BzzEC;EAEI;C7B2zEL;;A+B77EC;E1B8OE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;E8BhCE;EACA;EACA;EACA;EACA;UAAA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EAGA;EAeA;EAAA;EAAA;C/B47EL;AIj7EK;E2BvBE;EACA;EACA;EACA;EACA;EACA;UAAA;EACA;EACA;C/B28EP;;A+B/7EC;EAEI;C/Bi8EL;;A+B57EG;EAgJA;EACA;EACA;EACA;EACA;C/BgzEH;A+B/7EK;EAyJF;EACA;EACA;EACA;C/ByyEH;;A+Br3EC;EAYM;UAAA;C/B62EP;;A+Bp2EC;EAEI;UAAA;C/Bs2EL;;A+Bp6EG;EACE;IACE;YAAA;G/Bu6EL;E+Bn6EG;IACE;YAAA;IACA;YAAA;G/Bq6EL;E+Bj6EG;IACE;YAAA;IAMA;YAAA;G/B85EL;E+B15EG;IACE;YAAA;G/B45EL;CACF;;A+Br7EG;EACE;IACE;YAAA;G/Bu6EL;E+Bn6EG;IACE;YAAA;IACA;YAAA;G/Bq6EL;E+Bj6EG;IACE;YAAA;IAMA;YAAA;G/B85EL;E+B15EG;IACE;YAAA;G/B45EL;CACF;AgCvhFK;EAEE;EACA;EACA;EACA;EACA;EACA;ChCwhFP;AgCrhFK;EACE;EACA;ChCuhFP;AgCphFK;EACE;UAAA;EACA;EACA;EACA;ChCshFP;AgCjhFK;EACE;EAAA;EAAA;ChCmhFP;;AgC7gFC;EAEI;UAAA;EACA;ChC+gFL;;AgC3gFC;EAEI;ChC6gFL;;AiCrjFC;EA0UE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CjC+uEH;AInhFK;E6BuSA;EACA;CjC+uEL;AiCrkFG;EAII;EACA;EACA;EACA;EACA;CjCokFP;AiChkFG;E/BfA;EDwCA;ECxCA;EDwCA;EgCjBI,YCjCQ;ClCgmFf;AIriFK;EFjDF;EDwCA;ECxCA;EDwCA;CDojFH;AiCjkFG;E/B3BA;EDwCA;ECxCA;EDwCA;EgCLI;CjCgkFP;AIljFK;EFjDF;EDwCA;ECxCA;EDwCA;CDikFH;AiClkFG;EAEI;EACA;EACA;CjCmkFP;AiC/jFG;EAEI;EACA;EACA;CjCgkFP;AiC5jFG;EAEI;CjC6jFP;AiCzjFG;EAEI;CjC0jFP;;AiCpjFG;E/BrEA;EDwCA;ECxCA;EDwCA;EgCiCI;CjCwjFP;AIhlFK;EFjDF;EDwCA;ECxCA;EDwCA;CD+lFH;;AiCxjFG;EAEI;CjC0jFP;;AmCnoFC;EAwFI;EACA;CnC+iFL;AoCtnDG;EnCl/BA;CD2mFH;AoCznDG;EnCl/BA;CD8mFH;AoC5jDG;EnCljCA;CDinFH;AoC/jDG;EnCljCA;CDonFH;AoClkDG;EnCljCA;CDunFH;AoC9iDK;EnCzkCF;CD0nFH;AoCjjDK;EnCrlCA;ECjCF;ED6CA;CD+nFH;AoCtjDK;EnCzkCF;CDkoFH;AqCtoFG;EpCIA;CDqoFH;AqCzoFG;EpCIA;CDwoFH;AsCnoFG;ErCLA;CD2oFH;AsCtoFG;ErCLA;CD8oFH;AqBnpFC;Eeu/BE;InCl/BA;GDkpFD;EoCzkDG;InCzkCF;GDqpFD;EoCnmDC;InCljCA;GDwpFD;EgCroFC;I/BnBA;GD2pFD;EiCzmFD;;;IhClDE;GDgqFD;EsC3pFC;IrCLA;GDmqFD;EqCvqFC;IpCIA;GDsqFD;CACF;AmCx5EC;EAEI;EACA;UAAA;EACA;CnCy5EL;AmCl1EC;EjClYE;EDwCA;ECxCA;EDwCA;CDkrFH;AIzqFK;EFjDF;EDwCA;ECxCA;EDwCA;CDwrFH;AmCx1EC;EjCxYE;EDwCA;ECxCA;EDwCA;CD8rFH;AIrrFK;EFjDF;EDwCA;ECxCA;EDwCA;CDosFH;AsCpuFG;EACE,YAnBM;EAoBN,aApBM;EAqBN,gBArBM;CtC2vFX;AoCt7EC;EAEI,YEvUM;EFwUN,aExUM;CtC+vFX;AmC79EC;EjCxRE;EDwCA;ECxCA;EDwCA;CDmtFH;AI1sFK;EFjDF;EDwCA;ECxCA;EDwCA;CDytFH;AmCp9EC;EjC7SE;EDwCA;ECxCA;EDwCA;CD+tFH;AIttFK;EFjDF;EDwCA;ECxCA;EDwCA;CDquFH;AmCzqFG;EjCpGA;EDwCA;ECxCA;EDwCA;EkCsEI;EACA;EACA;EACA;EACA;EACA;EACA;CnCsqFP;AmCzlFC;;EAGI;EACA;EACA;CnC0lFL;AmCtlFC;EAKI;EACA;CnColFL;AmCvkFC;EAEI;EAIA;CnCqkFL;AmChkFC;EAEI;EAIA;CnC8jFL;AI3vFK;EFjDF;EDwCA;ECxCA;EDwCA;CD0wFH;AmCvjFC;EAEI;EAIA;CnCqjFL;AmCjjFC;EAEI;EAIA;CnC+iFL;;AmC7rFC;EAOI,aC5GU;ED6GV;EACA;EACA;EACA;EACA;EACA;EACA;CnC0rFL;A+B5rFC;EAYM;UAAA;C/BmrFP;;AmCpgFC;EAEI;EACA;KAAA;UAAA;EACA;EACA;EACA;EACA;EACA;EACA,aC1TiB;ED2TjB;EACA;EACA;EAIA;EACA;CnCmgFL;;AmC//EC;E9B3GE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EIgNA;EACA;EACA;E8BoGE;EACA;EACA;EACA;CnCwhFL;AIx0FK;E+BkTE;EACA;CnCyhFP;;AoCnyDG;EnC9jCE;ECjCF;ED6CA;CD21FH;AoCzyDG;EnC9jCE;ECjCF;ED6CA;CDg2FH;AqCx1FG;EpCpBE;ECjCF;ED6CA;CDq2FH;AoC5xDK;EnCrlCA;ECjCF;ED6CA;CD02FH;AoCjyDK;EnCrlCA;ECjCF;ED6CA;CD+2FH;AmCjvFC;EAwME;EACA;CnC4iFH;;AmCnoFC;EjCxRE;EDwCA;ECxCA;EDwCA;CD03FH;AIj3FK;EFjDF;EDwCA;ECxCA;EDwCA;CDg4FH;;AsCt4FC;EpClCE;EDwCA;ECxCA;EDwCA;CDu4FH;AI93FK;EFjDF;EDwCA;ECxCA;EDwCA;CD64FH;AuCt8EC;;EtCndI;ECjCF;ED6CA;CDm5FH;AuCt6EC;;EtCzfI;ECjCF;ED6CA;CDy5FH;;AoCz5EC;EAEI,aA1hBG;E/B0QL,c+BsRY;E/BnRV;CL0qFL;AK3lFC;EAyCA;EACA;EACA,a+BrYoB;E/BsYpB;EAxCI;CL8lFL;AKjkFC;EAEI;CLkkFL;AoCvnEG;EACE;EACA;EACA;CpCynEL;AoCtnEG;EACE;CpCwnEL;AoCpoFC;EnCzTI;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAAA;EAAA;CD27FH;AoC77DG;EnC9/BA;CD87FH;AoCh8DG;EnC9/BA;CDi8FH;AgC96FG;E/BnBA;CDo8FH;AgCj7FG;E/BnBA;CDu8FH;AgC97FG;E/BrBE;ECjCF;ED6CA;CD48FH;AgCz7FG;E/BnBA;CD+8FH;AoCriEC;ELzyBE,6BK2yBE;CpCsiEL;AoCjiEC;ELhzBE,2CKmzBE;CpCiiEL;AwCx7FC;EAII;EACA;CxCu7FL;AyCv+FG;EAEI;UAAA;EACA;CzCw+FP;AyCp+FG;EvCjCA;EDwCA;ECxCA;EDwCA;CDm+FH;AI19FK;EFjDF;EDwCA;ECxCA;EDwCA;CDy+FH;AoChqEC;ElCj3BE;EDwCA;ECxCA;EDwCA;CD++FH;AIt+FK;EFjDF;EDwCA;ECxCA;EDwCA;CDq/FH;AoC3kEC;ELzyBE,6BK2yBE;CpC4kEL;AoCvkEC;ELhzBE,2CKmzBE;CpCukEL;;AgCx+FG;E/B/BE;ECjCF;ED6CA;CDigGH;AgC9+FG;E/B/BE;ECjCF;ED6CA;CDsgGH;AgC7/FG;E/BrBE;ECjCF;ED6CA;CD2gGH;A0C1jGC;EAmCI;C1C0hGL;AoC95EC;EAqBI,aA7pBG;CpCyiGR;A+Bh7FC;EAYM;UAAA;C/Bu6FP;AiCjyFC;EAEI;CjCkyFL;A+Bt7FC;;EAYM;UAAA;C/B86FP;AiCvxFG;;EAEI;CjCyxFP;A+Bz6FC;EAEI;UAAA;C/B06FL;A+Bx+FG;EACE;IACE;YAAA;G/B0+FL;E+Bt+FG;IACE;YAAA;IACA;YAAA;G/Bw+FL;E+Bp+FG;IACE;YAAA;IAMA;YAAA;G/Bi+FL;E+B79FG;IACE;YAAA;G/B+9FL;CACF;A+Bx/FG;EACE;IACE;YAAA;G/B0+FL;E+Bt+FG;IACE;YAAA;IACA;YAAA;G/Bw+FL;E+Bp+FG;IACE;YAAA;IAMA;YAAA;G/Bi+FL;E+B79FG;IACE;YAAA;G/B+9FL;CACF;AiCh8FC;E/B1JE;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;CDkkGH;AIzjGK;EFjDF;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;EDwCA;CDklGH;AiCt8FO;EA1BN;IA2BQ;GjCy8FP;CACF;AiCv7FO;EAXN;IAYQ;GjC07FP;CACF;AiCr7FC;E/B/ME;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;EDwCA;CD4mGH;AInmGK;EFjDF;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;CD4nGH;AoCv3EK;EAtaF;IA0aI;IACA;GpCu3EL;CACF;AIznGK;EgCgWI;EACA;CpC4xFT;AoCj4EK;EhC5vBA;IgCgwBE;IACA;GpCi4EL;CACF;AoCv4EK;EAhZF;IAoZI;IACA;GpCu4EL;CACF;AIzoGK;EgCsXI;EACA;CpCsxFT;AoCj5EK;EhC5vBA;IgCgwBE;IACA;GpCi5EL;CACF;AoC9pEG;EnC9/BA;CD+pGH;AoCjqEG;EnC9/BA;CDkqGH;AiChnGC;;;EhClDE;CDuqGH;AiCrnGC;;;EhClDE;CD4qGH;AiC9mGC;;;EAII,kBGnFkB;CpCksGvB;AiC/nGC;;;EhC9DI;ECjCF;ED6CA;CDwrGH;AiCtoGC;;;EhClDE;CD6rGH;AiCz6FC;EAEI,6BG0rBA;CpCgvEL;A0CzsGG;EAgBI;EAEA;EACA;C1C2rGP;A+B/kGC;EAEI;UAAA;C/BglGL;A+BvmGC;EAYM;UAAA;C/B8lGP;AiCx9FC;EAEI;CjCy9FL;A+B7mGC;;EAYM;UAAA;C/BqmGP;AiC98FG;;EAEI;CjCg9FP;AiCvoGC;EAEI,iBCpIS;ClC4wGd;AKp3FC;EAEI;CLq3FL;AoC16EG;EACE;EACA;EACA;CpC46EL;AoCz6EG;EACE;CpC26EL;A0CttGG;EAEI;EACA;EACA;EAIA;C1CotGP;A0ChtGG;EAEI;C1CitGP;A0C7sGG;EAEI;ExC1EJ;EDwCA;ECxCA;EDwCA;CDovGH;AI3uGK;EFjDF;EDwCA;ECxCA;EDwCA;CD0vGH;AiC3qGC;EAEI,iBGlGkB;CpC8wGvB;AiC3sGC;;;EhC9DI;ECjCF;ED6CA;CDowGH;AiCltGC;;;EhC9DI;ECjCF;ED6CA;CD2wGH;AiC7sGC;;;EAII,kBGnFkB;CpCiyGvB;AiC9tGC;;;EhC9DI;ECjCF;ED6CA;CDuxGH;AoCj7EC;ElC94BE;EDwCA;ECxCA;EDwCA;CD6xGH;AIpxGK;EFjDF;EDwCA;ECxCA;EDwCA;CDmyGH;A+BlsGC;EAGM;UAAA;C/BksGP;AI7xGK;E2BgGI;UAAA;C/BgsGT;AiCtjGC;EAEI;CjCujGL;A+B3sGC;;EAGM;UAAA;C/B4sGP;AIvyGK;;;E2BgGI;UAAA;C/B4sGT;AiCjjGG;;EAEI;CjCmjGP;A+BnsGC;EAEI;UAAA;C/BosGL;A+BlwGG;EACE;IACE;YAAA;G/BowGL;E+BhwGG;IACE;YAAA;IACA;YAAA;G/BkwGL;E+B9vGG;IACE;YAAA;IAMA;YAAA;G/B2vGL;E+BvvGG;IACE;YAAA;G/ByvGL;CACF;A+BlxGG;EACE;IACE;YAAA;G/BowGL;E+BhwGG;IACE;YAAA;IACA;YAAA;G/BkwGL;E+B9vGG;IACE;YAAA;IAMA;YAAA;G/B2vGL;E+BvvGG;IACE;YAAA;G/ByvGL;CACF;A+BttGC;EAEI;UAAA;C/ButGL;A+BrxGG;EACE;IACE;YAAA;G/BuxGL;E+BnxGG;IACE;YAAA;IACA;YAAA;G/BqxGL;E+BjxGG;IACE;YAAA;IAMA;YAAA;G/B8wGL;E+B1wGG;IACE;YAAA;G/B4wGL;CACF;A+BryGG;EACE;IACE;YAAA;G/BuxGL;E+BnxGG;IACE;YAAA;IACA;YAAA;G/BqxGL;E+BjxGG;IACE;YAAA;IAMA;YAAA;G/B8wGL;E+B1wGG;IACE;YAAA;G/B4wGL;CACF;AiC3kGC;EAEI,6BG0rBA;CpCk5EL;A0CxxGG;EAEI;C1CyxGP;A0CrxGG;;EAGI;C1CsxGP;;A2C15GC;E/B6EE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZ80GL;AY10GC;;EAGI;EACA;EACA;EACA;EACA;CZ20GL;AYv0GC;EAGI;EXpEA;ECjCF;ED6CA;CDk4GH;AY7zGC;EXjFI;ECjCF;ED6CA;CDu4GH;AYtzGG;EAEI;UAAA;CZuzGP;AYnzGG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZozGP;AY9yGG;EAEI;EACA;EACA;CZ+yGP;AYzyGG;EAEI;UAAA;CZ0yGP;AYlyGG;EAEI;UAAA;EAKA;UAAA;CZ+xGP;AYjxGC;;EAGI;EACA;EACA;EACA;EACA;CZkxGL;AY7wGG;EAEI;EACA;CZ8wGP;AOt6GC;;ENfI;ECjCF;ED6CA;CD+6GH;AO72GG;EN9EE;ECjCF;ED6CA;CDo7GH;AOx0GK;EAiBF;ENzIE;ECjCF;ED6CA;CD07GH;A2Cp9GG;E/BwOA;EACA;EACA;EACA;EACA;EAGA;CZ6uGH;;AO/7GC;ENfI;ECjCF;ED6CA;CDw8GH;AOt4GG;EN9EE;ECjCF;ED6CA;CD68GH;AOj2GK;EAiBF;ENzIE;ECjCF;ED6CA;CDm9GH;AO/zGG;EAEI;CPg0GP;AO3zGK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD49GH;AOjzGC;EAEI;CPkzGL;;A4C9gHC;EAEI;E1CKF;EDwCA;ECxCA;EDwCA;EIsMA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EIkPA,eA2CQ;EAoBN;EACA;EACA;CL+sGL;AIz/GK;EFjDF;EDwCA;ECxCA;EDwCA;CDwgHH;AKpsGC;EAyCA;EACA;EACA,auCxZ2C;EvCyZ3C;EAxCI;CLusGL;;A4CrjHC;EAEI;EAIA;C5CojHL;;A4ChjHC;;EAGI;C5CkjHL;;A6CrjHC;EAEI;EACA;EACA;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA;EACA;EAIA;EACA;C7CojHL;AsC5iHC;EpClCE;EDwCA;ECxCA;EDwCA;CD4iHH;AIniHK;EFjDF;EDwCA;ECxCA;EDwCA;CDkjHH;;A6C3lHC;;EAGI;EACA;C7C6lHL;;A8CllHC;EzCgOE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CDklHH;;A8CxmHC;E7CUI;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;E8C6NA,kBA3OU;EA4OV;EAQA,kCAnPW;EDaT;EACA;EACA;EACA;EACA;C9C+lHL;A+Cz6GC;E9CtMI;ECjCF;ED6CA;CDwmHH;AI/lHK;EHrBA;ECjCF;ED6CA;E8CoMI;C/C06GP;A+Cr6GC;E9CrNI;ECjCF;ED6CA;CDmnHH;AI1mHK;EHrBA;ECjCF;ED6CA;E8CmNI;C/Cs6GP;;A+CpkHC;E9CrDE;CD6nHH;;A+CllHC;E9CvDI;ECjCF;ED6CA;CDmoHH;;A+CpkHC;E9C/DE;CDuoHH;;A+C7iHC;EAEI,yCAzHU;C/CwqHf;;AiCzlHC;;;EhClDE;CDipHH;A+C9iHC;;EAGI,sCAnIU;C/CkrHf;;A+CviHC;EAEI;EACA,yBA7IS;C/CsrHd;;A+CriHC;;EAGI,sBApJS;EAqJT;C/CuiHL;;A+C/hHC;E9CjIE;CDoqHH;;A+CzhHC;E9C3IE;CDwqHH;;A+C/gHC;;;E9CzJE;CD8qHH;;A+Cv7GC;EAEI,aAkHK;C/Cu0GV;;A+Cr7GC;EAEI,iBA4GK;C/C20GV;;A+Cz8GC;EAEI,aAmIwB;C/Cw0G7B;;A+Cj6GC;;EAGI,oBApSkB;EAqSlB,mBAtSiB;C/CysHtB;;A+Cr4GC;;E7CnWE;EDwCA;ECxCA;EDwCA;CDwsHH;AI/rHK;;;EFjDF;EDwCA;ECxCA;EDwCA;CDgtHH;;A+ChsHC;E9ChBE;CDotHH;AOjtHC;ENfI;ECjCF;ED6CA;CDytHH;AOvpHG;EN9EE;ECjCF;ED6CA;CD8tHH;AOlnHK;EAiBF;ENzIE;ECjCF;ED6CA;CDouHH;AOhlHG;EAEI;CPilHP;AO5kHK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD6uHH;AOlkHC;EAEI;CPmkHL;;A+CttHC;E9C1BE;CDovHH;AOjvHC;ENfI;ECjCF;ED6CA;CDyvHH;AOvrHG;EN9EE;ECjCF;ED6CA;CD8vHH;AOlpHK;EAiBF;ENzIE;ECjCF;ED6CA;CDowHH;AOhnHG;EAEI;CPinHP;AO5mHK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD6wHH;AOlmHC;EAEI;CPmmHL;;A8CntHC;EAGI;EACA;EACA;C9CotHL;;A8ChtHC;EAEI;EACA;EACA;EACA;EACA;;;;;KAAA;EAMA;C9CktHL;;AgD90HC;E3CgPE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;E+CtCE;EACA;EACA;EACA;ChDq2HL;AIzzHK;E4CzCE;EACA;ChDq2HP;;AgDh2HC;EAEI;ChDk2HL;AIj0HK;E4C5BE;EACA;ChDg2HP;;AgD31HC;EAYE;ChDm1HH;;AiDv3HC;E5C2OE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EgDjCE;EACA;EACA;EACA;EAEA;EACA;CjD64HL;AIz2HK;E6CjCE;EACA;CjD64HP;;AiDx4HC;EDiBE;ChD23HH;;AiDx4HC;EAEI;CjD04HL;AIr3HK;E6ChBE;EACA;CjDw4HP;;AiDn4HC;ECqCE,YAnBK;EAoBL,aApBK;EAqBL;ED/BE;UAAA;E/C/CF;EDwCA;ECxCA;EDwCA;EgDqBE;EAAA;EAAA;EAUA;CjDg3HL;AIt4HK;EFjDF;EDwCA;ECxCA;EDwCA;CDq5HH;AiDv4HG;E/CtDA;EDwCA;ECxCA;EDwCA;CD25HH;AIl5HK;EFjDF;EDwCA;ECxCA;EDwCA;CDi6HH;AiDz4HG;EAEI;UAAA;CjD04HP;AiDl4HG;EAII;CjDi4HP;;AiD53HC;EAEI;EACA;EACA;CjD83HL;;AiD13HC;EAEI;CjD43HL;;AiDx3HC;E5B5EE;EACA;EACA;EACA;EACA;EAAqB;EACrB;CrBy8HH;;AmDx+HC;EAEI;EACA;EACA;CnD0+HL;AmDv+HG;EAEI;CnDw+HP;;AmDn+HC;ElDmBI;ECjCF;ED6CA;EkD3BE;EAGA;EACA;EACA;EACA;CnDo+HL;;AiD74HC;EAEI;EAAA;EACA;EACA;CjD+4HL;AiDv4HC;EAEI;EACA;EACA;EACA;EACA;CjDw4HL;A8C92HC;EAEI;C9C+2HL;;AoD5hIC;E/CmQE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EmDzDE;EACA;EACA;CpDmjIL;;AoD/iIC;ElDWE;EDwCA;ECxCA;EDwCA;EmD/CE;EACA;EACA;EACA;CpDmjIL;AI9/HK;EFjDF;EDwCA;ECxCA;EDwCA;CD6gIH;;AoDrjIC;EAEI;EACA;CpDujIL;;AoDnjIC;ElDPE;EDwCA;ECxCA;EDwCA;CDyhIH;AIhhIK;E8CuFE;EACA;UAAA;ClD47HP;AIphIK;EFjDF;EDwCA;ECxCA;EDwCA;CDmiIH;;AoD7jIC;ElDdE;EDwCA;ECxCA;EDwCA;EmDlBE;CpD6jIL;AIliIK;EFjDF;EDwCA;ECxCA;EDwCA;CDijIH;;AoD/jIC;ElD1BE;EDwCA;ECxCA;EDwCA;EmDVE;EACA;CpDmkIL;AIjjIK;EFjDF;EDwCA;ECxCA;EDwCA;CDgkIH;;AoDrkIC;ElDnCE;EDwCA;ECxCA;EDwCA;EmDDE;CpDykIL;AI/jIK;EFjDF;EDwCA;ECxCA;EDwCA;CD8kIH;;AoD3kIC;EnDfI;ECjCF;ED6CA;EmDQE;CpD6kIL;AoCt/HC;EAEI;EACA,gBgB9F+C;CpDqlIpD;AoCz+GC;EAqBI,aWjoBmC;C/CwlIxC;A+B3/HC;EAYM;UAAA;C/Bk/HP;AiC52HC;EAEI;CjC62HL;A+BjgIC;;EAYM;UAAA;C/By/HP;AiCl2HG;;EAEI;CjCo2HP;A+Bp/HC;EAEI;UAAA;C/Bq/HL;A+BnjIG;EACE;IACE;YAAA;G/BqjIL;E+BjjIG;IACE;YAAA;IACA;YAAA;G/BmjIL;E+B/iIG;IACE;YAAA;IAMA;YAAA;G/B4iIL;E+BxiIG;IACE;YAAA;G/B0iIL;CACF;A+BnkIG;EACE;IACE;YAAA;G/BqjIL;E+BjjIG;IACE;YAAA;IACA;YAAA;G/BmjIL;E+B/iIG;IACE;YAAA;IAMA;YAAA;G/B4iIL;E+BxiIG;IACE;YAAA;G/B0iIL;CACF;AoC12HC;EAEI,YEtUY;EFuUZ,aEvUY;CtCkrIjB;AiC72HC;EAEI,6BG0rBA;CpCorGL;AoDnnIG;Eby1BA,aQt2BqC;C/CmoIxC;;AOpoIC;;;ENfI;ECjCF;ED6CA;CD+oIH;AO7kIG;;;EN9EE;ECjCF;ED6CA;CDspIH;AO1iIK;;;EAiBF;ENzIE;ECjCF;ED6CA;CD8pIH;AO1gIG;;EAEI;CP4gIP;AOvgIK;;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDyqIH;AO9/HC;;EAEI;CPggIL;AO1qIC;;;;ENfI;ECjCF;ED6CA;CDqrIH;AwB/pHC;;EvBliBI;ECjCF;ED6CA;EAAA;CD4rIH;AwBtqHC;;;;;;EvBliBI;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;CDysIH;AwB5oHC;EACE;IvB1kBE;ICjCF;ID6CA;IAAA;GDgtID;EwB7oHC;IvB/kBE;ICjCF;ID6CA;IAZE;ICjCF;ID6CA;GDwtID;CACF;AwB5pHC;EACE;IvB1kBE;ICjCF;ID6CA;IAAA;GDgtID;EwB7oHC;IvB/kBE;ICjCF;ID6CA;IAZE;ICjCF;ID6CA;GDwtID;CACF;AwBhpHC;EACE;IvBtlBE;ICjCF;ID6CA;IAZE;ICjCF;ID6CA;GDkuID;EwBlpHC;IvB5lBE;ICjCF;ID6CA;IAAA;GDwuID;CACF;AwBhqHC;EACE;IvBtlBE;ICjCF;ID6CA;IAZE;ICjCF;ID6CA;GDkuID;EwBlpHC;IvB5lBE;ICjCF;ID6CA;IAAA;GDwuID;CACF;AwBp+HO;;;EAEI;UAAA;CxBu+HX;AwBh+HO;;;EAEI;UAAA;CxBm+HX;;AqD9wIC;;EAGI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CrDgxIL;;AqD5wIC;EAkBI;EpDjBA;ECjCF;ED6CA;CDswIH;AqDz8HC;EpDzUI;ECjCF;ED6CA;CD2wIH;AqDh8HC;EAEI;CrDi8HL;AqDr7HC;EAEI;CrDs7HL;AqD16HC;EAEI;CrD26HL;AqD/4HC;EAKI;CrD64HL;AqDz4HC;E1CpQE;EACA,0HA0FW;CXsjId;AqDp6HC;EAEI;CrDq6HL;AqD33HC;EAEI,iBCndM;CtD+0IX;AqD72HO;EANN;IAOQ,8BATa;GrDy3HpB;CACF;AqD72HO;EAXN;IAYQ,iBCveE;GtDu1IT;CACF;AqDp2HC;EAeM,8BAjBe;CrDy2HtB;AqDl1HC;EAIE;IAEI;IAWA;GrDs0HL;CACF;AqDz5HC;EpDvaI;ECjCF;ED6CA;CDyzIH;AqDtyHG;EAFF;IAIM;IACA;GrDwyHL;CACF;AqDtuHC;EAxEA;IAyEE,+BAJoB;GrD6uHrB;CACF;AqDxuHC;EA3EA;IA4EE,iBA/DsB;GrD0yHvB;CACF;AqDtuHC;EAlFA;IAmFE,gCAJqB;GrD6uHtB;CACF;AqDxuHC;EArFA;IAsFE,kBA1EuB;GrDqzHxB;CACF;AqDxyHG;EA1BF;IA4BM;IACA;IACA;IACA;IpDhjBJ;GD21ID;CACF;AqDtyHG;EArCF;IAuCM;IACA;IACA;IACA;IpD3jBJ;GDo2ID;CACF;AqDpyHG;EAhDF;IAmDM;GrDqyHL;CACF;;AqDx1IC;EAEI;EACA;CrD01IL;;AqDp1IC;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;UAAA;EACA;EAGA;CrDo1IL;;AqDh1IC;E1C2GE;EACA;EAbA;EACA,+HA0FW;E0CpLT;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;CrDi1IL;AWjuIC;EV1KE;EAAA;EUgLI;EACA;EACA;CXguIP;AI/4IO;EiD0DA;EACA;CrDw1IP;;AqDn1IC;EhD+KE,egD5KY;EhD2OV;EACA;EACA;EA7GF;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EoD4EE;EACA;EACA;EACA;EACA;EACA;CrDy2IL;AKtnIC;EAyCA;EACA;EACA,agD1SU;EhD2SV;EAxCI;CLynIL;AI97IO;EiDiFA;EACA;CrDg3IP;;AqD12IC;EAII;CrD02IL;;AqDr2IG;EAEI;EACA;EAEA;EACA;EACA;CrDs2IP;AqDl2IG;EAEI;EACA;CrDm2IP;AqD/1IG;EHlFA,YGmFyC;EHlFzC,aGkFyC;EHjFzC;ClDo7IH;AqDh2IG;EAQI;CrD21IP;;AqDt1IC;EhD+DE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EoD2IE;EACA;EACA;EACA;EACA;CrD62IL;AqDz2IG;EAEI;CrD02IP;AqDr2IG;EAEI;CrDs2IP;;AqDh2IC;EAII;CrDg2IL;;AqD31IC;EAII;EACA;CrD21IL;;AqDt1IC;EAGI;CrDu1IL;;AqDl1IC;EAKI;CrDi1IL;;AqD70IC;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,aC1PY;ED2PZ;CrD+0IL;AqD50IG;EAEI;EACA;CrD60IP;;AqDx0IC;EnDrQE;EDwCA;ECxCA;EDwCA;EoDyOE;EACA;EACA;CrDo0IL;AItiJK;EFjDF;EDwCA;ECxCA;EDwCA;CDqjJH;AqDn1IG;EnD1QA;EDwCA;ECxCA;EDwCA;CD2jJH;AIljJK;EFjDF;EDwCA;ECxCA;EDwCA;CDikJH;AI9jJO;EiD2OA;EACA;CrDs1IP;;AqDl1IG;EAEI;CrDo1IP;;AqD/0IC;;;EAII;CrDi1IL;;AqD50IG;EAEI;CrD80IP;AqD10IG;EAEI;EAAA;EAAA;CrD20IP;;AqDp0IG;;EAGI;CrDs0IP;AqDl0IG;EAGI;UAAA;CrDk0IP;;AqD5zIG;EAEI;CrD8zIP;AqD1zIG;EAEI;UAAA;EACA;CrD2zIP;;AqDnzIC;EAEI;CrDqzIL;;AuDvoJC;EtD6BE;EAZE;ECjCF;ED6CA;ECxCA;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;EDwCA;EsDgWA,WCtXM;EvDsBN;EsDFE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAeA;EAAA;EAAA;EACA,yD1C9E2B;CbosJhC;AuD54IC;EtDjQE;CDgpJH;AuCpmIC;EtC5iBE;CDmpJH;AuDr4IC;EtD9QE;CDspJH;AuCzqIC;EtC7eE;CDypJH;AuDr1IC;EtDpUE;CD4pJH;AuC/qIC;EtC7eE;CD+pJH;AuDt2IC;EtDzTE;CDkqJH;AIzpJK;EFjDF;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;CDkrJH;AuC7pIC;EtCjiBI;ECjCF;ED6CA;CDurJH;AuD50IC;ErDnZE;EDwCA;ECxCA;EDwCA;CD6rJH;AIprJK;EFjDF;EDwCA;ECxCA;EDwCA;CDmsJH;AI1rJK;EmDCE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CvD4rJP;AuDp1IC;ElDnLE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EsD6XE;EAEA;EACA;CvDy2IL;AuDp2IC;EAEI;CvDq2IL;AuDh2IC;EAEI;CvDi2IL;AuD51IC;ElD7ME;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EIkPA,eA2CQ;EAoBN;EACA;EACA;EkDqGA;EACA;CvDq3IL;AK18IC;EAyCA;EACA;EACA,akDsC0C;ElDrC1C;EAxCI;CL68IL;AuDv3IC;EAEI;CvDw3IL;AuDl3IC;;EAGI;CvDm3IL;;AuD/vJC;EAEI;UAAA;CvDiwJL;AIvxJK;EmDyBE;UAAA;CvDiwJP;;AuD5vJC;EAEI;UAAA;EASA,2BC/EY;CxDq0JjB;AI/xJK;EmDoCE;UAAA;CvD8vJP;;AuDrvJC;EAEI;UAAA;EAQA,2BC5FW;CxD40JhB;AIvyJK;EmDkDE;UAAA;CvDwvJP;;AuD/uJC;EAEI;EACA;EACA;EACA;CvDivJL;;AuD7uJC;ElDyHE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EIkPA,eA2CQ;EAoBN;EACA;EACA;EAIA;CLkiJL;AKrhJC;EAyCA;EACA;EACA,akD/RU;ElDgSV;EAxCI;CLwhJL;AK3gJC;EAwBA;EACA;EACA,akD9Ra;ElD+Rb;EAvBI;CL8gJL;;AuDjxJC;ElDgHE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EIkPA,eA2CQ;EAoBN;EACA;EACA;EkDxNA;CvD2yJL;AKlkJC;EAyCA;EACA;EACA,akDvR0C;ElDwR1C;EAxCI;CLqkJL;;AuD9yJC;EAEI;EACA;EACA;CvDgzJL;;AuDtyJC;ErDrJE;EDwCA;ECxCA;EDwCA;EsDiHE;EACA;CvD0yJL;AIn5JK;EFjDF;EDwCA;ECxCA;EDwCA;CDk6JH;AuD9yJK;EACE;CvDgzJP;;AuD3yJC;ErDlKE;EDwCA;ECxCA;EDwCA;EsD8HE;CvD+yJL;AIp6JK;EFjDF;EDwCA;ECxCA;EDwCA;CDm7JH;;AuD5yJC;E5CGE;EACA,8HA0FW;ET7QX;EDwCA;ECxCA;EDwCA;EsDiJE;EACA;CvD4yJL;AuDzmJC;EtDrVE;CDi8JH;AIx7JK;EFjDF;EDwCA;ECxCA;EDwCA;CDu8JH;AuDlzJG;EAEI;CvDmzJP;;AuD9yJC;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;EACA,yD1ChO2B;Cb6gKhC;AuD1yJG;EAEI;CvD2yJP;AuDvyJG;EAEI;CvDwyJP;AuDpyJG;EAEI,2BCvNU;ED2NV;CvDkyJP;AuD9xJG;EAEI,2BChOS;EDoOT;CvD4xJP;;AS7gKG;EEmLA;EACA,yHA0FW;CXowJd;;ASlhKG;EEmLA;EACA,0HA0FW;CXywJd;;ASvhKG;EEmLA;EACA,0HA0FW;CX8wJd;;AS5hKG;EEmLA;EACA,0HA0FW;CXmxJd;;ASjiKG;EEmLA;EACA,2HA0FW;CXwxJd;;AStiKG;EEmLA;EACA,2HA0FW;CX6xJd;;AS3iKG;EEmLA;EACA,4HA0FW;CXkyJd;;AShjKG;EEmLA;EACA,4HA0FW;CXuyJd;;ASrjKG;EEmLA;EACA,4HA0FW;CX4yJd;;AS1jKG;EEmLA;EACA,4HA0FW;CXizJd;;AS/jKG;EEmLA;EACA,6HA0FW;CXszJd;;ASpkKG;EEmLA;EACA,6HA0FW;CX2zJd;;ASzkKG;EEmLA;EACA,6HA0FW;CXg0Jd;;AS9kKG;EEmLA;EACA,6HA0FW;CXq0Jd;;ASnlKG;EEmLA;EACA,6HA0FW;CX00Jd;;ASxlKG;EEmLA;EACA,6HA0FW;CX+0Jd;;AS7lKG;EEmLA;EACA,8HA0FW;CXo1Jd;;ASlmKG;EEmLA;EACA,8HA0FW;CXy1Jd;;ASvmKG;EEmLA;EACA,8HA0FW;CX81Jd;;AS5mKG;EEmLA;EACA,8HA0FW;CXm2Jd;;ASjnKG;EEmLA;EACA,+HA0FW;CXw2Jd;;AStnKG;EEmLA;EACA,+HA0FW;CX62Jd;;AS3nKG;EEmLA;EACA,+HA0FW;CXk3Jd;;AShoKG;EEmLA;EACA,+HA0FW;CXu3Jd;;ASroKG;EEmLA;EACA,+HA0FW;CX43Jd;;ASroKC;EAEI;EAIA,wBE+EK;CXqjKV;;AyD7nKC;E9C6KE;EACA;EAbA;EACA,4HA0FW;E8C2DX;EACA;EACA;EACA;EACA;EACA,YC3VK;ED4VL,aC5VK;ED6VL;EACA;EACA;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA;EACA;EAGA;EAIA;EAAA;EAAA;ExDjUE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;CDooKH;AW19JC;EV1KE;EAAA;EUgLI;EACA;EACA;CXy9JP;AyD55JC;ExD/OE;CD8oKH;AyDz5JG;ExDrPA;CDipKH;AyDn1JC;EAEI;EACA;CzDo1JL;AyDh1JC;E9C3LE;EACA,4HA0FW;CXo7Jd;AyD/0JC;E9ChME;EACA,6HA0FW;CXw7Jd;AyD/0JC;EAOI;CzD20JL;AyDv0JC;EAEI;CzDw0JL;AyD/zJC;EAEI;CzDg0JL;AyDtkKC;EAEI,YAtHiB;EAuHjB,aAvHiB;EAwHjB,gBAxHiB;CzD+rKtB;;AyD3rKC;EAgYE,YCraU;EDsaV,aCtaU;C1DquKb;;AyD5rKC;EpDkNE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EAAA;ECxCA;EDwCA;ECxCA;EDwCA;EwDiYA;EACA;EACA,aCvbc;EDybd;EACA;CzD80JH;AyD38JC;ExDzQE;CDutKH;AyDjiKC;EvD9NE;EDwCA;ECxCA;EDwCA;CD6tKH;AIptKK;EFjDF;EDwCA;ECxCA;EDwCA;CDmuKH;AyDtiKC;EvDrOE;EDwCA;ECxCA;EDwCA;CDyuKH;AIhuKK;EFjDF;EDwCA;ECxCA;EDwCA;CD+uKH;;AyDvvKC;EjDsBE,gBAHsB;EAItB,mBAJsB;EAWpB,kBAHwB;EAIxB,iBAJwB;CRmuK7B;AyDvvKG;EjDpBA;EACA;EACA;EACA,aAhCK;EAqCH;EACA;EACA,YAvCG;EAwCH;UAAA;CR0wKL;;AyDzvKC;EpC/CE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CrB4yKH;;AyDjwKC;EAqZE;EACA;EACA;EACA;EACA;CzDg3JH;;AyDrwKC;EAgYE;EAAA;EAAA;EAQA;EACA;CzDk4JH;;AyDrwKC;EAuZE;EACA;EACA;CzDk3JH;;AyDvwKC;EA8ZE;UAAA;EACA;EAIA;EAAA;EAAA;CzD02JH;AyDt2JC;EAEI;UAAA;EAIA;EAAA;EAAA;CzDo2JL;;AyDrwKC;E7CTE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZ+wKL;AY3wKC;;EAGI;EACA;EACA;EACA;EACA;CZ4wKL;AYxwKC;EAGI;EXpEA;ECjCF;ED6CA;CDm0KH;AY9vKC;EXjFI;ECjCF;ED6CA;CDw0KH;AYvvKG;EAEI;UAAA;CZwvKP;AYpvKG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZqvKP;AY/uKG;EAEI;EACA;EACA;CZgvKP;AY1uKG;EAEI;UAAA;CZ2uKP;AYnuKG;EAEI;UAAA;EAKA;UAAA;CZguKP;AYltKC;;EAGI;EACA;EACA;EACA;EACA;CZmtKL;AY9sKG;EAEI;EACA;CZ+sKP;AOv2KC;ENfI;ECjCF;ED6CA;CD+2KH;AO7yKG;EN9EE;ECjCF;ED6CA;CDo3KH;AOxwKK;EAiBF;ENzIE;ECjCF;ED6CA;CD03KH;AOtuKG;EAEI;CPuuKP;AOluKK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDm4KH;AOxtKC;EAEI;CPytKL;AyDr1KG;E7C6JA;EACA;EACA;EACA;EACA;EAGA;E6ChKI;EAIA;CzDu1KP;;A2D37KC;EtDiPE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;E0DnCE;EACA;EACA;C3Di9KL;A2D78KG;EzDXA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;E0DpBI;C3D+8KP;AIl7KK;EFjDF;EDwCA;ECxCA;EDwCA;CDi8KH;AIx7KK;EFjDF;EDwCA;ECxCA;EDwCA;CDu8KH;;A2Dr9KG;EAEI;EACA;EACA;C3Du9KP;;A2Dh9KG;EzDrCA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;E0DMI;C3Dm9KP;AIh9KK;EFjDF;EDwCA;ECxCA;EDwCA;CD+9KH;AIt9KK;EFjDF;EDwCA;ECxCA;EDwCA;CDq+KH;;A2D19KC;EAEI;C3D49KL;A2Dx9KG;EAEI;C3Dy9KP;AIn+KK;EuDcI;C3Dw9KT;;AkDlhLC;EAyKE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,gBUpMQ;EVqMR;EACA;EACA;KAAA;MAAA;UAAA;EA7GA,YAnBK;EAoBL,aApBK;EAqBL;ClD29KH;AkD52KC;;EAGI,YU9MM;EV+MN,aU/MM;C5D4jLX;AkD70KC;EjDrMI;ECjCF;ED6CA;CD2gLH;AkDl1KC;EAxBI;EACA;ClD62KL;;AkD7iLC;EAEI;ClD+iLL;AkD3iLG;EAEI;ClD4iLP;;AkDtiLG;EAEI;ClDwiLP;AkDpiLK;EAEI;ClDqiLT;;AkD1hLC;EtCyBE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZkgLL;AY9/KC;EAGI;EACA;EACA;EACA;EACA;CZ8/KL;AY1/KC;EAGI;EXpEA;ECjCF;ED6CA;CDqjLH;AYh/KC;EXjFI;ECjCF;ED6CA;CD0jLH;AYz+KG;EAEI;UAAA;CZ0+KP;AYt+KG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZu+KP;AYj+KG;EAEI;EACA;EACA;CZk+KP;AY59KG;EAEI;UAAA;CZ69KP;AYr9KG;EAEI;UAAA;EAKA;UAAA;CZk9KP;AYx6KC;EAGI;EACA;EACA;EACA,YAZK;EAaL,aAbK;CZq7KV;AYn6KG;EAGI;EACA;EACA;EACA;EACA;CZm6KP;AY/5KG;EAEI;EACA;CZg6KP;AO/lLC;ENfI;ECjCF;ED6CA;CDumLH;AOriLG;EN9EE;ECjCF;ED6CA;CD4mLH;AOhgLK;EAiBF;ENzIE;ECjCF;ED6CA;CDknLH;AO99KG;EAEI;CP+9KP;AO19KK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD2nLH;AOh9KC;EAEI;CPi9KL;;A6D5qLC;EAEI;EACA;EAEA;EACA;C7D6qLL;;A6DzqLC;;EAII;EACA;C7D0qLL;;A6DtqLC;EAEI;C7DwqLL;;A6DpqLC;EAEI;C7DsqLL;;A6DjqLC;EAEI;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;C7DkqLL;;A6D5lLC;EAEI;C7D8lLL;;A6DplLC;E5D/EE;CDuqLH;;A6D9kLC;E5DzFE;EAAA;EAAA;EAAA;CD8qLH;;A6D1qLC;E5DhBI;ECjCF;ED6CA;E4DUE;EACA;EACA;EACA;EACA;EACA,kBCvEM;C9DkvLX;;A6DvqLC;ExDmLE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EIgNA;EACA;EACA;CLqgLH;;A6D7rLC;EAEI;EACA;EACA;EACA,aCrFmB;EDsFnB;EAIA,+BC3F6B;ED4F7B;C7D4rLL;;A6DtrLC;EAEI;C7DwrLL;A6DrrLG;EAEI;UAAA;C7DsrLP;A6DlrLG;EAEI;EACA;C7DmrLP;;A+DjyLD;EAEI;EAIA;EAIA;EARA;EAIA;EAIA;EARA;EAIA;EAIA;C/DmyLH;;AgElwLG;EDzBJ;IC6DE;IACA;IACA,cD5Da;IC8Db;GhEkuLC;CACF;AgEhxLG;EDpBJ;IC6DE;IACA;IACA,cD5Da;IC8Db;GhE0uLC;CACF;AgE7xLG;EDfJ;IC6DE;IACA;IACA,cD5Da;IC8Db;GhEkvLC;CACF;;AgE3xLG;EDfJ;ICmEE;IACA;IACA;IACA;IAEA;GhE2uLC;EgEzuLD;ID1EF;MC2EI;MACA;MACA,eDzEW;MC2EX;MACA;KhE2uLC;GACF;CACF;AgEnzLG;EDVJ;ICmEE;IACA;IACA;IACA;IAEA;GhE6vLC;EgE3vLD;ID1EF;MC2EI;MACA;MACA,eDzEW;MC2EX;MACA;KhE6vLC;GACF;CACF;AgE10LG;EDLJ;ICmEE;IACA;IACA;IACA;IAEA;GhE+wLC;EgE7wLD;ID1EF;MC2EI;MACA;MACA,eDzEW;MC2EX;MACA;KhE+wLC;GACF;CACF;;AgEl1LG;EDJJ;ICwBE;IAEA;IAyDA;IACA;IAEA;GhEywLC;EgEn0LD;ID5BF;MC6BI;MACA;KhEs0LC;GACF;EgE7wLD;IDxFF;MCyFI;KhEgxLC;GACF;E+D71Lc;;ICWf;IAEA;GhEq1LC;EgEn1LD;IDfe;;MCgBb;MACA;KhEu1LC;GACF;;E+Dz2Lc;;ICWf;IAEA;GhEk2LC;EgEh2LD;IDfe;;MCgBb;MACA;KhEo2LC;GACF;;E+Dt3Lc;;ICWf;IAEA;GhE+2LC;EgE72LD;IDfe;;MCgBb;MACA;KhEi3LC;GACF;;E+Dn4Lc;;ICWf;IAEA;GhE43LC;EgE13LD;IDfe;;MCgBb;MACA;KhE83LC;GACF;;E+Dh5Lc;;ICWf;IAEA;GhEy4LC;EgEv4LD;IDfe;;MCgBb;MACA;KhE24LC;GACF;;E+D75Lc;;ICWf;IAEA;GhEs5LC;EgEp5LD;IDfe;;MCgBb;MACA;KhEw5LC;GACF;;E+D16Lc;;ICWf;IAEA;GhEm6LC;EgEj6LD;IDfe;;MCgBb;MACA;KhEq6LC;GACF;;E+Dv7Lc;;ICWf;IAEA;GhEg7LC;EgE96LD;IDfe;;MCgBb;MACA;KhEk7LC;GACF;;E+Dp8Lc;;ICWf;IAEA;GhE67LC;EgE37LD;IDfe;;MCgBb;MACA;KhE+7LC;GACF;;E+Dj9Lc;;ICWf;IAEA;GhE08LC;EgEx8LD;IDfe;;MCgBb;MACA;KhE48LC;GACF;;E+D99Lc;;ICWf;IAEA;GhEu9LC;EgEr9LD;IDfe;;MCgBb;MACA;KhEy9LC;GACF;;E+D3+Lc;;ICWf;IAEA;GhEo+LC;EgEl+LD;IDfe;;MCgBb;MACA;KhEs+LC;GACF;CACF;AgEvgMG;EDCJ;ICwBE;IAEA;IAyDA;IACA;IAEA;GhEw7LC;EgEl/LD;ID5BF;MC6BI;MACA;KhEq/LC;GACF;EgE57LD;IDxFF;MCyFI;KhE+7LC;GACF;E+D5gMc;;ICWf;IAEA;GhEogMC;EgElgMD;IDfe;;MCgBb;MACA;KhEsgMC;GACF;;E+DxhMc;;ICWf;IAEA;GhEihMC;EgE/gMD;IDfe;;MCgBb;MACA;KhEmhMC;GACF;;E+DriMc;;ICWf;IAEA;GhE8hMC;EgE5hMD;IDfe;;MCgBb;MACA;KhEgiMC;GACF;;E+DljMc;;ICWf;IAEA;GhE2iMC;EgEziMD;IDfe;;MCgBb;MACA;KhE6iMC;GACF;;E+D/jMc;;ICWf;IAEA;GhEwjMC;EgEtjMD;IDfe;;MCgBb;MACA;KhE0jMC;GACF;;E+D5kMc;;ICWf;IAEA;GhEqkMC;EgEnkMD;IDfe;;MCgBb;MACA;KhEukMC;GACF;;E+DzlMc;;ICWf;IAEA;GhEklMC;EgEhlMD;IDfe;;MCgBb;MACA;KhEolMC;GACF;;E+DtmMc;;ICWf;IAEA;GhE+lMC;EgE7lMD;IDfe;;MCgBb;MACA;KhEimMC;GACF;;E+DnnMc;;ICWf;IAEA;GhE4mMC;EgE1mMD;IDfe;;MCgBb;MACA;KhE8mMC;GACF;;E+DhoMc;;ICWf;IAEA;GhEynMC;EgEvnMD;IDfe;;MCgBb;MACA;KhE2nMC;GACF;;E+D7oMc;;ICWf;IAEA;GhEsoMC;EgEpoMD;IDfe;;MCgBb;MACA;KhEwoMC;GACF;;E+D1pMc;;ICWf;IAEA;GhEmpMC;EgEjpMD;IDfe;;MCgBb;MACA;KhEqpMC;GACF;CACF;AgE3rMG;EDMJ;ICwBE;IAEA;IAyDA;IACA;IAEA;GhEumMC;EgEjqMD;ID5BF;MC6BI;MACA;KhEoqMC;GACF;EgE3mMD;IDxFF;MCyFI;KhE8mMC;GACF;E+D3rMc;;ICWf;IAEA;GhEmrMC;EgEjrMD;IDfe;;MCgBb;MACA;KhEqrMC;GACF;;E+DvsMc;;ICWf;IAEA;GhEgsMC;EgE9rMD;IDfe;;MCgBb;MACA;KhEksMC;GACF;;E+DptMc;;ICWf;IAEA;GhE6sMC;EgE3sMD;IDfe;;MCgBb;MACA;KhE+sMC;GACF;;E+DjuMc;;ICWf;IAEA;GhE0tMC;EgExtMD;IDfe;;MCgBb;MACA;KhE4tMC;GACF;;E+D9uMc;;ICWf;IAEA;GhEuuMC;EgEruMD;IDfe;;MCgBb;MACA;KhEyuMC;GACF;;E+D3vMc;;ICWf;IAEA;GhEovMC;EgElvMD;IDfe;;MCgBb;MACA;KhEsvMC;GACF;;E+DxwMc;;ICWf;IAEA;GhEiwMC;EgE/vMD;IDfe;;MCgBb;MACA;KhEmwMC;GACF;;E+DrxMc;;ICWf;IAEA;GhE8wMC;EgE5wMD;IDfe;;MCgBb;MACA;KhEgxMC;GACF;;E+DlyMc;;ICWf;IAEA;GhE2xMC;EgEzxMD;IDfe;;MCgBb;MACA;KhE6xMC;GACF;;E+D/yMc;;ICWf;IAEA;GhEwyMC;EgEtyMD;IDfe;;MCgBb;MACA;KhE0yMC;GACF;;E+D5zMc;;ICWf;IAEA;GhEqzMC;EgEnzMD;IDfe;;MCgBb;MACA;KhEuzMC;GACF;;E+Dz0Mc;;ICWf;IAEA;GhEk0MC;EgEh0MD;IDfe;;MCgBb;MACA;KhEo0MC;GACF;CACF;A+D50MG;ECsEF,SDvEa;C/Dg1Md;A+D/0MG;ECsEF,SDvEa;C/Dm1Md;A+Dl1MG;ECsEF,SDvEa;C/Ds1Md;A+Dr1MG;ECsEF,SDvEa;C/Dy1Md;A+Dx1MG;ECsEF,SDvEa;C/D41Md;A+D31MG;ECsEF,SDvEa;C/D+1Md;A+D91MG;ECsEF,SDvEa;C/Dk2Md;A+Dj2MG;ECsEF,SDvEa;C/Dq2Md;A+Dp2MG;ECsEF,SDvEa;C/Dw2Md;A+Dv2MG;ECsEF,UDvEa;C/D22Md;A+D12MG;ECsEF,UDvEa;C/D82Md;A+D72MG;ECsEF,UDvEa;C/Di3Md;A+D12MC;ECqEE;ChEwyMH;AgEtyMG;EDvEF;ICwEI;GhEyyMH;CACF;A+D92MC;ECyEE;ChEwyMH;A+D72MC;ECyEE;ChEuyMH;AgEryMG;ED3EF;IC4EI;GhEwyMH;CACF;;AgEv5MG;EDuCJ;ICyFE;IAGA;GhE0xMC;CACF;AgEn6MG;ED4CJ;ICyFE;IAGA;GhEgyMC;CACF;AgE96MG;EDiDJ;ICyFE;IAGA;GhEsyMC;CACF;;A+Dl3MD;EACE;EACA;C/Dq3MD;;A+Dl3MD;EACE;EACA;C/Dq3MD;;AiE/9MC;EACE;IACE;YAAA;GjEk+MH;EiE/9MC;IACE;YAAA;IACA;YAAA;GjEi+MH;EiE99MC;IACE;YAAA;IhE8BA;YAAA;ICjCF;ID6CA;YAAA;GDy7MD;EiEr9MC;IhEgBE;YAAA;ICjCF;ID6CA;YAAA;GD87MD;CACF;;AiEp/MC;EACE;IACE;YAAA;GjEk+MH;EiE/9MC;IACE;YAAA;IACA;YAAA;GjEi+MH;EiE99MC;IACE;YAAA;IhE8BA;YAAA;ICjCF;ID6CA;YAAA;GDy7MD;EiEr9MC;IhEgBE;YAAA;ICjCF;ID6CA;YAAA;GD87MD;CACF;AiEh9MC;EACE;IACE;YAAA;GjEk9MH;EiE/8MC;IACE;YAAA;IACA;YAAA;GjEi9MH;EiE98MC;IACE;YAAA;IACA;YAAA;GjEg9MH;EiE78MC;IACE;YAAA;GjE+8MH;CACF;AiEh+MC;EACE;IACE;YAAA;GjEk9MH;EiE/8MC;IACE;YAAA;IACA;YAAA;GjEi9MH;EiE98MC;IACE;YAAA;IACA;YAAA;GjEg9MH;EiE78MC;IACE;YAAA;GjE+8MH;CACF;AiE18MC;EACE;IACE;YAAA;IACA;YAAA;GjE48MH;EiEz8MC;IACE;YAAA;IhExBA;YAAA;ICjCF;ID6CA;YAAA;GD09MD;EiEt8MC;IACE;YAAA;IhEjCA;YAAA;ICjCF;ID6CA;YAAA;GDg+MD;EiEn8MC;IhEzCE;YAAA;ICjCF;ID6CA;YAAA;GDq+MD;CACF;AiEj+MC;EACE;IACE;YAAA;IACA;YAAA;GjE48MH;EiEz8MC;IACE;YAAA;IhExBA;YAAA;ICjCF;ID6CA;YAAA;GD09MD;EiEt8MC;IACE;YAAA;IhEjCA;YAAA;ICjCF;ID6CA;YAAA;GDg+MD;EiEn8MC;IhEzCE;YAAA;ICjCF;ID6CA;YAAA;GDq+MD;CACF;AiE97MC;EACE;IACE;YAAA;IAMA;YAAA;GjE27MH;EiEx7MC;IACE;YAAA;IAMA;YAAA;GjEq7MH;EiEl7MC;IACE;YAAA;IAMA;YAAA;GjE+6MH;EiE56MC;IACE;YAAA;GjE86MH;CACF;AiE/8MC;EACE;IACE;YAAA;IAMA;YAAA;GjE27MH;EiEx7MC;IACE;YAAA;IAMA;YAAA;GjEq7MH;EiEl7MC;IACE;YAAA;IAMA;YAAA;GjE+6MH;EiE56MC;IACE;YAAA;GjE86MH;CACF;AiEz6MC;EACE;IAIE;YAAA;GjEw6MH;CACF;AiE96MC;EACE;IAIE;YAAA;GjEw6MH;CACF;AiEn6MC;EACE;IACE;YAAA;GjEq6MH;EiEl6MC;IACE;YAAA;IACA;YAAA;GjEo6MH;EiEj6MC;IACE;YAAA;IhEhHA;YAAA;ICjCF;ID6CA;YAAA;GD0gND;EiEz5MC;IhE7HE;YAAA;ICjCF;ID6CA;YAAA;GD+gND;CACF;AiEv7MC;EACE;IACE;YAAA;GjEq6MH;EiEl6MC;IACE;YAAA;IACA;YAAA;GjEo6MH;EiEj6MC;IACE;YAAA;IhEhHA;YAAA;ICjCF;ID6CA;YAAA;GD0gND;EiEz5MC;IhE7HE;YAAA;ICjCF;ID6CA;YAAA;GD+gND;CACF;AiEp5MC;EACE;IACE;YAAA;IACA;YAAA;GjEs5MH;EiEn5MC;IACE;YAAA;IhE/IA;YAAA;ICjCF;ID6CA;YAAA;GD2hND;EiEh5MC;IACE;YAAA;IhExJA;YAAA;ICjCF;ID6CA;YAAA;GDiiND;EiE74MC;IhEhKE;YAAA;ICjCF;ID6CA;YAAA;GDsiND;CACF;AiE36MC;EACE;IACE;YAAA;IACA;YAAA;GjEs5MH;EiEn5MC;IACE;YAAA;IhE/IA;YAAA;ICjCF;ID6CA;YAAA;GD2hND;EiEh5MC;IACE;YAAA;IhExJA;YAAA;ICjCF;ID6CA;YAAA;GDiiND;EiE74MC;IhEhKE;YAAA;ICjCF;ID6CA;YAAA;GDsiND;CACF;AiEx4MC;EACE;IACE;YAAA;GjE04MH;CACF;AiE74MC;EACE;IACE;YAAA;GjE04MH;CACF;AkErkNC;EAEI;EACA;EACA,YCpCG;EDqCH;UAAA;EAEA;EACA;EAIA;ClEkkNL;AkE/jNG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;EAIA;EAAA;EAAA;ClE6jNP;AkEzjNG;EAEI;EACA;EACA;EACA;UAAA;EAGA;ClEwjNP;AkEpjNG;EAEI;EACA;EACA;EACA;ClEqjNP;AkEjjNG;EAEI;EACA;EACA;EACA;UAAA;EAIA;UAAA;ClE+iNP;AkE3iNG;EAEI;EAIA;ClEyiNP;AkEriNG;EAEI;UAAA;ClEsiNP;AkEliNG;EAEI;ClEmiNP;AkEz8MG;EAEI;ClE08MP;AkEt8MG;EAEI;ClEu8MP;AkEn8MG;EAEI;EACA;ClEo8MP;AkE/7MK;EAEI;UAAA;ClEg8MT;AkE57MO;EAEI;UAAA;ClE67MX;AkEv7MK;EAEI;UAAA;ClEw7MT;AkEp7MO;EAEI;UAAA;ClEq7MX;AkEx6MC;EAEI;EACA;EACA;EACA;UAAA;ClEy6ML;AkEp6MG;EAEI;UAAA;ClEq6MP;AkEj6MG;EAEI;UAAA;ClEk6MP;AkE75MC;EAEI;UAAA;EAIA;UAAA;ClE25ML;AkEt5MG;EAEI;EACA;EACA;EACA;ClEu5MP;AkEn5MG;EAEI;EACA;EACA;EACA;ClEo5MP;AkEvkNG;EAEI;ClEwkNP;AkEnkNK;EAEI;UAAA;ClEokNT;AkE/jNO;;EAGI;UAAA;ClEgkNX;;AkEhjNC;EjEnHI;ECjCF;ED6CA;CD6pNH;;AkEniNC;EAII;ClEmiNL;;AkE/hNC;EAEI,0BAlBkB;ClEmjNvB;;AuCzrNC;ElC0NE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EsC43BA;EACA;EAIA;EACA;EACA;EtC/4BE;ECjCF;ED6CA;CDusNH;AuCl0LG;EACE;CvCo0LL;;AuCh3LC;EAgBE,aAtBO;CvC03LV;;AuCrvMC;EtCreI;ECjCF;ED6CA;CDotNH;;AuCjvMC;EtCneE;CDwtNH;;AuC3uMC;EtCzfI;ECjCF;ED6CA;CD8tNH;;AuCvuMC;EtCngBI;ECjCF;ED6CA;CDouNH;;AuCxrMC;EtCxjBI;ECjCF;ED6CA;CD0uNH;;AuCprMC;EAEI,c6BxmBkB;CpE8xNvB;;AuC7qMG;;;EtC7kBE;ECjCF;ED6CA;CDsvNH;;AuC/yMC;;EtCndI;ECjCF;ED6CA;CD6vNH;AuChxMC;;EtCzfI;ECjCF;ED6CA;CDmwNH;;AuCtwNC;EAEI;EACA;EACA;CvCwwNL;;AuCpwNC;EAy4BA;EACA;EACA;EACA;EACA;EACA;ErC37BE;EDwCA;ECxCA;EDwCA;EsCuoBA,aAfmB;CvC+pMtB;AuCl4LC;EACE;CvCo4LH;AuC9wNG;ElBpDA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CrBq0NH;AuCpxNG;ElBzDA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CrBg1NH;AIvyNK;EFjDF;EDwCA;ECxCA;EDwCA;CDszNH;AuCpxNG;ErC1EA;EDwCA;ECxCA;EDwCA;EsCuoBA,aAfmB;CvCqsMtB;AIpzNK;EFjDF;EDwCA;ECxCA;EDwCA;CDm0NH;AuCzxNG;ErClFA;EDwCA;ECxCA;EDwCA;EsCuoBA,aAfmB;CvCktMtB;AIj0NK;EFjDF;EDwCA;ECxCA;EDwCA;CDg1NH;AuC3xNG;ErC7FA;EDwCA;ECxCA;EDwCA;EsCuoBA,aAfmB;CvC+tMtB;AI90NK;EFjDF;EDwCA;ECxCA;EDwCA;CD61NH;AuC7xNG;ErCxGA;EDwCA;ECxCA;EDwCA;EsCuoBA,aAfmB;CvC4uMtB;AI31NK;EFjDF;EDwCA;ECxCA;EDwCA;CD02NH;AuC/xNG;ErCnHA;EDwCA;ECxCA;EDwCA;EsCuoBA,aAfmB;CvCyvMtB;AIx2NK;EFjDF;EDwCA;ECxCA;EDwCA;CDu3NH;;AuC7xNC;ErClIE;EDwCA;ECxCA;EDwCA;EsCswBA,YA3qB6B;EA4qB7B,aA5qB6B;CvCqyNhC;AIv3NK;EFjDF;EDwCA;ECxCA;EDwCA;CDs4NH;;AuCxyNC;EAEI;EACA;EACA;EACA;EACA;KAAA;ErC5IF;EDwCA;ECxCA;EDwCA;EsCswBA,YA/BM;EAgCN,aA/BO;CvC4qMV;AI34NK;EFjDF;EDwCA;ECxCA;EDwCA;CD05NH;AuChzNG;ErClJA;EDwCA;ECxCA;EDwCA;EsCswBA,YA/BM;EAgCN,aA/BO;CvC0rMV;AIz5NK;EFjDF;EDwCA;ECxCA;EDwCA;CDw6NH;AuC1zNG;ErCtJA;EDwCA;ECxCA;EDwCA;EsCswBA,YA/BM;EAgCN,aA/BO;EAvnBH;CvCg0NP;AIx6NK;EFjDF;EDwCA;ECxCA;EDwCA;CDu7NH;AuCl0NG;ErC7JA;EDwCA;ECxCA;EDwCA;EsCswBA,YA/BM;EAgCN,aA/BO;CvCutMV;AIt7NK;EFjDF;EDwCA;ECxCA;EDwCA;CDq8NH;AuCz0NG;ErCpKA;EDwCA;ECxCA;EDwCA;EsCswBA,YA/BM;EAgCN,aA/BO;CvCquMV;AIp8NK;EFjDF;EDwCA;ECxCA;EDwCA;CDm9NH;AuCn1NG;ErCxKA;EDwCA;ECxCA;EDwCA;EsCswBA,aA/BM;EAgCN,aA/BO;CvCmvMV;AIl9NK;EFjDF;EDwCA;ECxCA;EDwCA;CDi+NH;;AuCz1NC;EAEI;CvC21NL;;AuCt1NC;ErCvLE;EDwCA;ECxCA;EDwCA;CD4+NH;AuC31NG;ElCqDA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CDqgOH;AIlgOO;EF3CJ;EDwCA;ECxCA;EDwCA;CD2gOH;;AuCh3NC;ElCqDE;EACA;EACA;CL+zNH;;AuCh3NC;EAEI;CvCk3NL;;AuC92NC;ElCyCE;EACA;EACA;EAgCA,ekCtEY;ElCqIV;EACA;EACA;EAIA;CLyuNL;AK5tNC;EAyCA;EACA;EACA,a+D/YkC;E/DgZlC;EAxCI;CL+tNL;AKltNC;EAwBA;EACA;EACA,a+D7YoC;E/D8YpC;EAvBI;CLqtNL;AuC93NG;ElCkEA,eA2CQ;EAoBN;EACA;EACA;EAIA;CL8vNL;AKjvNC;EAyCA;EACA;EACA,a+D9Y+C;E/D+Y/C;EAxCI;CLovNL;AKvuNC;EAwBA;EACA;EACA,a+D7YoC;E/D8YpC;EAvBI;CL0uNL;AuCt4NG;ElCqDA,eA2CQ;EAoBN;EACA;EACA;EAIA;CLmxNL;AKtwNC;EAyCA;EACA;EACA,a+D5YwC;E/D6YxC;EAxCI;CLywNL;AK5vNC;EAwBA;EACA;EACA,a+D7YoC;E/D8YpC;EAvBI;CL+vNL;;AuCj5NC;ElCDE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EIgNA;EACA;EACA;EAgCA,ekCtCY;ElCqGV;EACA;EACA;CLs0NL;AKrzNC;EAyCA;EACA;EACA,a+D7YoC;E/D8YpC;EAxCI;CLwzNL;AuC/6NG;EAEI;CvCg7NP;;AuCz6NC;EAEI;CvC26NL;;AuCv6NC;EAEI;CvCy6NL;;AuCp6NG;EAEI,a6BpQU;CpE0qOjB;AuCl6NG;EAMI,a6B7QkB;CpE4qOzB;AuC15NG;EAEI;EACA,iB6BpRmB;CpE+qO1B;;AuCt5NC;;EAGI;CvCw5NL;;AuCp5NC;ErC/SE;EDwCA;ECxCA;EDwCA;EsCswBA,YA9f6B;EA+f7B,aA/f6B;CvC45NhC;AI3pOK;EFjDF;EDwCA;ECxCA;EDwCA;CD0qOH;;AuC95NC;EAEI;CvCg6NL;;AuC15NC;EAEI;EACA;CvC45NL;;AuCv5NC;EAEI;EACA;EACA;EACA;EACA;CvCy5NL;;AuCzpNC;EtCliBE;CD+rOH;;AuCn5NC;ErCpVE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvC+3MH;AI9rOK;EFjDF;EDwCA;ECxCA;EDwCA;CD6sOH;;AuCt5NC;ErC/VE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvC64MH;AI5sOK;EFjDF;EDwCA;ECxCA;EDwCA;CD2tOH;;AuC15NC;ErCzWE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvC25MH;AI1tOK;EFjDF;EDwCA;ECxCA;EDwCA;CDyuOH;;AuChjNC;ErCjuBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCy6MH;AIxuOK;EFjDF;EDwCA;ECxCA;EDwCA;CDuvOH;AuCrjNC;EAsIE;CvCk7MH;AuC/iNC;ErCnvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCy7MH;AIxvOK;EFjDF;EDwCA;ECxCA;EDwCA;CDuwOH;AuCxjNC;ErCvvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCs8MH;AIrwOK;EFjDF;EDwCA;ECxCA;EDwCA;CDoxOH;AuC3jNC;ErCjwBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCm9MH;AIlxOK;EFjDF;EDwCA;ECxCA;EDwCA;CDiyOH;;AuCxmNC;ErCjuBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCi+MH;AIhyOK;EFjDF;EDwCA;ECxCA;EDwCA;CD+yOH;AuC7mNC;EAsIE;CvC0+MH;AuCvmNC;ErCnvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCi/MH;AIhzOK;EFjDF;EDwCA;ECxCA;EDwCA;CD+zOH;AuChnNC;ErCvvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvC8/MH;AI7zOK;EFjDF;EDwCA;ECxCA;EDwCA;CD40OH;AuCnnNC;ErCjwBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvC2gNH;AI10OK;EFjDF;EDwCA;ECxCA;EDwCA;CDy1OH;;AuChqNC;ErCjuBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCyhNH;AIx1OK;EFjDF;EDwCA;ECxCA;EDwCA;CDu2OH;AuCrqNC;EAsIE;CvCkiNH;AuC/pNC;ErCnvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCyiNH;AIx2OK;EFjDF;EDwCA;ECxCA;EDwCA;CDu3OH;AuCxqNC;ErCvvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCsjNH;AIr3OK;EFjDF;EDwCA;ECxCA;EDwCA;CDo4OH;AuC3qNC;ErCjwBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCmkNH;AIl4OK;EFjDF;EDwCA;ECxCA;EDwCA;CDi5OH;;AuCxtNC;ErCjuBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCilNH;AIh5OK;EFjDF;EDwCA;ECxCA;EDwCA;CD+5OH;AuC7tNC;EAsIE;CvC0lNH;AuCvtNC;ErCnvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCimNH;AIh6OK;EFjDF;EDwCA;ECxCA;EDwCA;CD+6OH;AuChuNC;ErCvvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvC8mNH;AI76OK;EFjDF;EDwCA;ECxCA;EDwCA;CD47OH;AuCnuNC;ErCjwBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvC2nNH;AI17OK;EFjDF;EDwCA;ECxCA;EDwCA;CDy8OH;;AuChxNC;ErCjuBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCyoNH;AIx8OK;EFjDF;EDwCA;ECxCA;EDwCA;CDu9OH;AuCrxNC;EAsIE;CvCkpNH;AuC/wNC;ErCnvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCypNH;AIx9OK;EFjDF;EDwCA;ECxCA;EDwCA;CDu+OH;AuCxxNC;ErCvvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCsqNH;AIr+OK;EFjDF;EDwCA;ECxCA;EDwCA;CDo/OH;AuC3xNC;ErCjwBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCmrNH;AIl/OK;EFjDF;EDwCA;ECxCA;EDwCA;CDigPH;;AuCx0NC;ErCjuBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCisNH;AIhgPK;EFjDF;EDwCA;ECxCA;EDwCA;CD+gPH;AuC70NC;EAsIE;CvC0sNH;AuCv0NC;ErCnvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvCitNH;AIhhPK;EFjDF;EDwCA;ECxCA;EDwCA;CD+hPH;AuCh1NC;ErCvvBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvC8tNH;AI7hPK;EFjDF;EDwCA;ECxCA;EDwCA;CD4iPH;AuCn1NC;ErCjwBE;EDwCA;ECxCA;EDwCA;EsCw0BA;CvC2uNH;AI1iPK;EFjDF;EDwCA;ECxCA;EDwCA;CDyjPH;;AuCpsOK;EACE;CvCusOP;;AuClsOC;ElCrLE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EsCyYE;CvC+sOL;;AqE71NC;EpEvwBI;ECjCF;ED6CA;CD8lPH;;AqEt1NC;EpEpxBI;ECjCF;ED6CA;CDomPH;;AqExzNC;;EpE5yBE;CDymPH;;AqEx0NC;;EpE7yBI;ECjCF;ED6CA;CDgnPH;;AqE11NG;EpElyBE;ECjCF;ED6CA;CDsnPH;;AqE5xNG;;;EAII,cCt6BmB;CtEosP1B;;AqEj4NC;EpEvwBI;ECjCF;ED6CA;CDkoPH;AqE13NC;EpEpxBI;ECjCF;ED6CA;CDuoPH;AqE57MG;EpEvtCE;ECjCF;ED6CA;CD4oPH;AqEx7MK;EpEhuCA;ECjCF;ED6CA;CDipPH;AqEt9MG;EpEvsCE;ECjCF;ED6CA;CDspPH;;AqE35NC;;EpEvwBI;ECjCF;ED6CA;CD6pPH;AqEl9MG;;EpEvtCE;ECjCF;ED6CA;CDmqPH;;AqEzzNC;EpEt3BI;ECjCF;ED6CA;CDyqPH;;AqB9qPC;EgDuuCE;IAEI;IACA;IACA;IACA;IpEvuCJ;GDkrPD;CACF;AqE5sPC;EhE+NE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EoEsjCA;EACA;EAGA;EACA;EACA;CrEqpNH;AqEnpNG;EACE;CrEqpNL;;AqEzuPC;EA4lCE;EACA;EACA;EACA;EACA;EACA;EnEpnCA;EDwCA;ECxCA;EDwCA;EoEiBE;EACA;CrEitPL;AqErpNG;EACE;CrEupNL;AI7tPK;EFjDF;EDwCA;ECxCA;EDwCA;CD4uPH;AqElsOC;EAEI,aAubK;CrE4wNV;AqEzrOC;EAEI,aAkdK;CrEwuNV;AqEjrOC;EAEI,aAieK;CrEitNV;AqE3pOG;EAEI,mBAhmB6C;EAimB7C,cARG;CrEoqOV;AqE/oOG;EAEI,uBA9mBU;EA+mBV,iBA9mBO;CrE8vPd;AqEnoOG;EAEI,uBAznBU;EA0nBV,iBAznBO;CrE6vPd;AqEvnOG;EAEI,mBApoB2C;EAqoB3C,cARG;CrEgoOV;AqE3mOG;EAEI,mBAnpB2C;EAopB3C,cARG;CrEonOV;AqE/lOG;EAEI,uBAjqBU;EAkqBV,iBAjqBO;CrEiwPd;AqEvvPG;EAGI;CrEuvPP;AqEjvPG;EhDvEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CrB2zPH;AqEvvPG;EhD5EA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CrBs0PH;;AqEvvPC;EAEI;EACA;CrEyvPL;;AqEpvPC;EAEI;EACA;CrEsvPL;;AqElvPC;EAEI;CrEovPL;;AqEhvPC;EhE4IE;EACA;EACA;EgE3IE;EACA;CrEovPL;AqEjvPG;EAGI;CrEivPP;AqE3uPG;EAEI;CrE4uPP;;AqEvuPC;EhE2GE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EIgNA;EACA;EACA;CL6oPH;AqEhwPG;EhEmJA,eA2CQ;EAoBN;EACA;EACA;EAIA;CL+iPL;AKliPC;EAyCA;EACA;EACA,agE7QY;EhE8QZ;EAxCI;CLqiPL;AKxhPC;EAwBA;EACA;EACA,agE5Qe;EhE6Qf;EAvBI;CL2hPL;;AqE3wPC;EhE6FE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EIgNA;EACA;EACA;EAgCA,egEnIY;EhEkMV;EACA;EACA;CLkmPL;AKjlPC;EAyCA;EACA;EACA,agEjQU;EhEkQV;EAxCI;CLolPL;;AqExyPC;EhE4FE;EACA;EACA;CLgtPH;AqE1yPG;EhE0HA,eA2CQ;EAoBN;EACA;EACA;EAIA;CLknPL;AKrmPC;EAyCA;EACA;EACA,agEpPY;EhEqPZ;EAxCI;CLwmPL;AK3lPC;EAwBA;EACA;EACA,agEnPe;EhEoPf;EAvBI;CL8lPL;;AqE5vOG;EnEnuBA;EDwCA;ECxCA;EDwCA;CD87PH;AIr7PK;EFjDF;EDwCA;ECxCA;EDwCA;CDo8PH;AqEpwOG;EnExuBA;EDwCA;ECxCA;EDwCA;CD08PH;AIj8PK;EFjDF;EDwCA;ECxCA;EDwCA;CDg9PH;AqEhvOG;EACE,YA7lBiC;EA8lBjC,aA9lBiC;CrEg1PtC;AqEz1NG;EhEz4BA,eA2CQ;EAoBN;EACA;EACA;EAIA;CLoqPL;AKvpPC;EAyCA;EACA;EACA,agEzOI;EhE0OJ;EAxCI;CL0pPL;AK7oPC;EAwBA;EACA;EACA,agExOI;EhEyOJ;EAvBI;CLgpPL;AqEh0NK;EhEv7BF,egEy7BgB;EhE13Bd;EACA;EACA;CL4rPL;AK3qPC;EAyCA;EACA;EACA,agErOwD;EhEsOxD;EAxCI;CL8qPL;AqE58OC;EAEI,aAocK;CrEygOV;AqEn8OC;EAEI,aA+dK;CrEq+NV;AqEx2PG;EAEI;CrEy2PP;;AqE/xOG;EACE,YArkBiC;EAskBjC,aAtkBiC;CrEw2PtC;AqEz0OG;EnEnuBA;EDwCA;ECxCA;EDwCA;CD0gQH;AIjgQK;EFjDF;EDwCA;ECxCA;EDwCA;CDghQH;AqEh1OG;EnExuBA;EDwCA;ECxCA;EDwCA;CDshQH;AI7gQK;EFjDF;EDwCA;ECxCA;EDwCA;CD4hQH;AqEj6NG;EhEz4BA,eA2CQ;EAoBN;EACA;EACA;EAIA;CL4uPL;AK/tPC;EAyCA;EACA;EACA,agE5MI;EhE6MJ;EAxCI;CLkuPL;AKrtPC;EAwBA;EACA;EACA,agE3MI;EhE4MJ;EAvBI;CLwtPL;AqEx4NK;EhEv7BF,egEy7BgB;EhE13Bd;EACA;EACA;CLowPL;AKnvPC;EAyCA;EACA;EACA,agExMwD;EhEyMxD;EAxCI;CLsvPL;AqEphPC;EAEI,aAocK;CrEilOV;AqE3gPC;EAEI,aA+dK;CrE6iOV;;AqEz4OG;EnEnuBA;EDwCA;ECxCA;EDwCA;CD2kQH;AIlkQK;EFjDF;EDwCA;ECxCA;EDwCA;CDilQH;AqEj5OG;EnExuBA;EDwCA;ECxCA;EDwCA;CDulQH;AI9kQK;EFjDF;EDwCA;ECxCA;EDwCA;CD6lQH;AqE73OG;EACE,YA7iBiC;EA8iBjC,aA9iBiC;CrE66PtC;AqEt+NG;EhEz4BA,eA2CQ;EAoBN;EACA;EACA;EAIA;CLizPL;AKpyPC;EAyCA;EACA;EACA,agEzLI;EhE0LJ;EAxCI;CLuyPL;AK1xPC;EAwBA;EACA;EACA,agExLI;EhEyLJ;EAvBI;CL6xPL;AqE78NK;EhEv7BF,egEy7BgB;EhE13Bd;EACA;EACA;CLy0PL;AKxzPC;EAyCA;EACA;EACA,agErLwD;EhEsLxD;EAxCI;CL2zPL;AqEzlPC;EAEI,aAocK;CrEspOV;AqEhlPC;EAEI,aA+dK;CrEknOV;;AqE98OG;EnEnuBA;EDwCA;ECxCA;EDwCA;CDgpQH;AIvoQK;EFjDF;EDwCA;ECxCA;EDwCA;CDspQH;AqEt9OG;EnExuBA;EDwCA;ECxCA;EDwCA;CD4pQH;AInpQK;EFjDF;EDwCA;ECxCA;EDwCA;CDkqQH;AqEl8OG;EACE,YA1hBiC;EA2hBjC,aA3hBiC;CrE+9PtC;AqE3iOG;EhEz4BA,eA2CQ;EAoBN;EACA;EACA;EAIA;CLs3PL;AKz2PC;EAyCA;EACA;EACA,agEtKI;EhEuKJ;EAxCI;CL42PL;AK/1PC;EAwBA;EACA;EACA,agErKI;EhEsKJ;EAvBI;CLk2PL;AqElhOK;EhEv7BF,egEy7BgB;EhE13Bd;EACA;EACA;CL84PL;AK73PC;EAyCA;EACA;EACA,agElKwD;EhEmKxD;EAxCI;CLg4PL;AqE9pPC;EAEI,aAidK;CrE8sOV;AqErpPC;EAEI,aA+dK;CrEurOV;;AqEpmPG;EAEI,uBAlZU;EAmZV,gBAlZO;CrEw/Pd;AqExhPG;EnEnuBA;EDwCA;ECxCA;EDwCA;CDytQH;AIhtQK;EFjDF;EDwCA;ECxCA;EDwCA;CD+tQH;AqE/hPG;EnExuBA;EDwCA;ECxCA;EDwCA;CDquQH;AI5tQK;EFjDF;EDwCA;ECxCA;EDwCA;CD2uQH;AqE3gPG;EACE,aA7fQ;EA8fR,aA7fS;CrE0gQd;AqEpnOG;EhEz4BA,eA2CQ;EAoBN;EACA;EACA;EAIA;CL+7PL;AKl7PC;EAyCA;EACA;EACA,agEtII;EhEuIJ;EAxCI;CLq7PL;AKx6PC;EAwBA;EACA;EACA,agErII;EhEsIJ;EAvBI;CL26PL;AqE3lOK;EhEv7BF,egEy7BgB;EhE13Bd;EACA;EACA;CLu9PL;AKt8PC;EAyCA;EACA;EACA,agElIwD;EhEmIxD;EAxCI;CLy8PL;AqEvuPC;EAEI,aAidK;CrEuxOV;AqE9tPC;EAEI,aA+dK;CrEgwOV;;AqE5lPG;EnEnuBA;EDwCA;ECxCA;EDwCA;CD8xQH;AIrxQK;EFjDF;EDwCA;ECxCA;EDwCA;CDoyQH;AqEpmPG;EnExuBA;EDwCA;ECxCA;EDwCA;CD0yQH;AIjyQK;EFjDF;EDwCA;ECxCA;EDwCA;CDgzQH;AqEhlPG;EACE,YAneiC;EAoejC,aApeiC;CrEsjQtC;AqE1sPG;EAEI,uBA5WU;EA6WV,gBAlXE;CrE6jQT;AqE7rOG;EhEz4BA,eA2CQ;EAoBN;EACA;EACA;EAIA;CLwgQL;AK3/PC;EAyCA;EACA;EACA,agE1GI;EhE2GJ;EAxCI;CL8/PL;AKj/PC;EAwBA;EACA;EACA,agEzGI;EhE0GJ;EAvBI;CLo/PL;AqEpqOK;EhEv7BF,egEy7BgB;EhE13Bd;EACA;EACA;CLgiQL;AK/gQC;EAyCA;EACA;EACA,agEtGwD;EhEuGxD;EAxCI;CLkhQL;AqEhzPC;EAEI,aAocK;CrE62OV;AqEvyPC;EAEI,aA+dK;CrEy0OV;;AqErqPG;EnEnuBA;EDwCA;ECxCA;EDwCA;CDu2QH;AI91QK;EFjDF;EDwCA;ECxCA;EDwCA;CD62QH;AqE7qPG;EnExuBA;EDwCA;ECxCA;EDwCA;CDm3QH;AI12QK;EFjDF;EDwCA;ECxCA;EDwCA;CDy3QH;AqEzpPG;EACE,YAvciC;EAwcjC,aAxciC;CrEmmQtC;AqEnxPG;EAEI,uBAhVU;EAiVV,gBAtVE;CrE0mQT;AqEtwOG;EhEz4BA,eA2CQ;EAoBN;EACA;EACA;EAIA;CLilQL;AKpkQC;EAyCA;EACA;EACA,agE9EI;EhE+EJ;EAxCI;CLukQL;AK1jQC;EAwBA;EACA;EACA,agE7EI;EhE8EJ;EAvBI;CL6jQL;AqE7uOK;EhEv7BF,egEy7BgB;EhE13Bd;EACA;EACA;CLymQL;AKxlQC;EAyCA;EACA;EACA,agE1EwD;EhE2ExD;EAxCI;CL2lQL;AqEz3PC;EAEI,aAocK;CrEs7OV;AqEh3PC;EAEI,aA+dK;CrEk5OV;;AqE9uPG;EnEnuBA;EDwCA;ECxCA;EDwCA;CDg7QH;AIv6QK;EFjDF;EDwCA;ECxCA;EDwCA;CDs7QH;AqEtvPG;EnExuBA;EDwCA;ECxCA;EDwCA;CD47QH;AIn7QK;EFjDF;EDwCA;ECxCA;EDwCA;CDk8QH;AqEluPG;EACE,YA9aQ;EA+aR,aA9aS;CrEkpQd;AqE51PG;EAEI,uBApTU;EAqTV,iBApTO;CrEipQd;AqE/0OG;EhEz4BA,eA2CQ;EAoBN;EACA;EACA;EAIA;CL0pQL;AK7oQC;EAyCA;EACA;EACA,agElDI;EhEmDJ;EAxCI;CLgpQL;AKnoQC;EAwBA;EACA;EACA,agEjDI;EhEkDJ;EAvBI;CLsoQL;AqEtzOK;EhEv7BF,egEy7BgB;EhE13Bd;EACA;EACA;CLkrQL;AKjqQC;EAyCA;EACA;EACA,agE9CwD;EhE+CxD;EAxCI;CLoqQL;AqEl8PC;EAEI,aAocK;CrE+/OV;AqEz7PC;EAEI,aA+dK;CrE29OV;;AqEpyPG;EnEtvBA;EDwCA;ECxCA;EDwCA;CDy/QH;AIh/QK;EFjDF;EDwCA;ECxCA;EDwCA;CD+/QH;AqE5yPG;EnE3vBA;EDwCA;ECxCA;EDwCA;CDqgRH;AI5/QK;EFjDF;EDwCA;ECxCA;EDwCA;CD2gRH;AqE7xPG;EACE,YAja+B;EAka/B,aAla+B;CrEisQpC;;AqEr3PG;EAEI,uBA1U2C;EA2U3C,cARG;CrE+3PV;AqE12PG;EAEI,uBAxVF;EAyVE,cARG;CrEm3PV;AqE10PG;EnEtvBA;EDwCA;ECxCA;EDwCA;CD8hRH;AIrhRK;EFjDF;EDwCA;ECxCA;EDwCA;CDoiRH;AqEj1PG;EnE3vBA;EDwCA;ECxCA;EDwCA;CD0iRH;AIjiRK;EFjDF;EDwCA;ECxCA;EDwCA;CDgjRH;AqEt6OG;EhEx5BA,egE05Bc;EhE31BZ;EACA;EACA;CLmwQL;AKlvQC;EAyCA;EACA;EACA,agEnBuD;EhEoBvD;EAxCI;CLqvQL;AqEp6OG;EhEv6BA,egEy6Bc;EhE12BZ;EACA;EACA;CLgxQL;AK/vQC;EAyCA;EACA;EACA,agEjBU;EhEkBV;EAxCI;CLkwQL;AqExuQG;EhE5JA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CDmmRH;;AqEr5PG;EnEtvBA;EDwCA;ECxCA;EDwCA;CD0mRH;AIjmRK;EFjDF;EDwCA;ECxCA;EDwCA;CDgnRH;AqE75PG;EnE3vBA;EDwCA;ECxCA;EDwCA;CDsnRH;AI7mRK;EFjDF;EDwCA;ECxCA;EDwCA;CD4nRH;AqE94PG;EACE,YAlY+B;EAmY/B,aAnY+B;CrEmxQpC;AqEt9PG;EAEI,uBA7TU;EA8TV,gBAnUE;CrE0xQT;;AqEt7PG;EnEtvBA;EDwCA;ECxCA;EDwCA;CD2oRH;AIloRK;EFjDF;EDwCA;ECxCA;EDwCA;CDipRH;AqE97PG;EnE3vBA;EDwCA;ECxCA;EDwCA;CDupRH;AI9oRK;EFjDF;EDwCA;ECxCA;EDwCA;CD6pRH;AqE/6PG;EACE,YApX+B;EAqX/B,aArX+B;CrEsyQpC;AqEv/PG;EAEI,uBA/SU;EAgTV,gBArTE;CrE6yQT;;AqEv9PG;EnEtvBA;EDwCA;ECxCA;EDwCA;CD4qRH;AInqRK;EFjDF;EDwCA;ECxCA;EDwCA;CDkrRH;AqE/9PG;EnE3vBA;EDwCA;ECxCA;EDwCA;CDwrRH;AI/qRK;EFjDF;EDwCA;ECxCA;EDwCA;CD8rRH;AqEh9PG;EACE,YAzWQ;EA0WR,aAzWS;CrE2zQd;AqExhQG;EAEI,uBAjSU;EAkSV,iBAjSO;CrE0zQd;;AqE9yQK;EACE;CrEizQP;;AqE5yQC;EhExNE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EoE2aE;CrE0zQL;;AqEj3PC;EpEp3BE;CDyuRH;;AqE9yQC;EAEI;EACA;EAIA;CrE6yQL;AqEl2PC;EnEr7BE;EDwCA;ECxCA;EDwCA;CDqvRH;AI5uRK;EFjDF;EDwCA;ECxCA;EDwCA;CD2vRH;AqE33PC;EnEx6BE;EDwCA;ECxCA;EDwCA;CDiwRH;AIxvRK;EFjDF;EDwCA;ECxCA;EDwCA;CDuwRH;AqE72PC;EnEl8BE;EDwCA;ECxCA;EDwCA;CD6wRH;AIpwRK;EFjDF;EDwCA;ECxCA;EDwCA;CDmxRH;;AqEn5PC;EnEx6BE;EDwCA;ECxCA;EDwCA;CD0xRH;AIjxRK;EFjDF;EDwCA;ECxCA;EDwCA;CDgyRH;;AqEh6PC;EnEx6BE;EDwCA;ECxCA;EDwCA;CDuyRH;AI9xRK;EFjDF;EDwCA;ECxCA;EDwCA;CD6yRH;;AqE76PC;EnEx6BE;EDwCA;ECxCA;EDwCA;CDozRH;AI3yRK;EFjDF;EDwCA;ECxCA;EDwCA;CD0zRH;;AqE76PC;EnEr7BE;EDwCA;ECxCA;EDwCA;CDi0RH;AIxzRK;EFjDF;EDwCA;ECxCA;EDwCA;CDu0RH;AqEv8PC;EnEx6BE;EDwCA;ECxCA;EDwCA;CD60RH;AIp0RK;EFjDF;EDwCA;ECxCA;EDwCA;CDm1RH;;AqEn9PC;EnEx6BE;EDwCA;ECxCA;EDwCA;CD01RH;AIj1RK;EFjDF;EDwCA;ECxCA;EDwCA;CDg2RH;;AqEh+PC;EnEx6BE;EDwCA;ECxCA;EDwCA;CDu2RH;AI91RK;EFjDF;EDwCA;ECxCA;EDwCA;CD62RH;;AqE7+PC;EnEx6BE;EDwCA;ECxCA;EDwCA;CDo3RH;AI32RK;EFjDF;EDwCA;ECxCA;EDwCA;CD03RH;;AqE1/PC;EnEx6BE;EDwCA;ECxCA;EDwCA;CDi4RH;AIx3RK;EFjDF;EDwCA;ECxCA;EDwCA;CDu4RH;;AuCj/QC;E3B1XE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZ42RL;AYx2RC;;EAGI;EACA;EACA;EACA;EACA;CZy2RL;AYr2RC;EAGI;EXpEA;ECjCF;ED6CA;CDg6RH;AY31RC;EXjFI;ECjCF;ED6CA;CDq6RH;AYp1RG;EAEI;UAAA;CZq1RP;AYj1RG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZk1RP;AY50RG;EAEI;EACA;EACA;CZ60RP;AYv0RG;EAEI;UAAA;CZw0RP;AYh0RG;EAEI;UAAA;EAKA;UAAA;CZ6zRP;AY/yRC;;EAGI;EACA;EACA;EACA;EACA;CZgzRL;AY3yRG;EAEI;EACA;CZ4yRP;AOp8RC;ENfI;ECjCF;ED6CA;CD48RH;AO14RG;EN9EE;ECjCF;ED6CA;CDi9RH;AOr2RK;EAiBF;ENzIE;ECjCF;ED6CA;CDu9RH;AOn0RG;EAEI;CPo0RP;AO/zRK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDg+RH;AOrzRC;EAEI;CPszRL;AOjxRG;EN9NE;ECjCF;ED6CA;CDw+RH;AOr+RC;ENfI;ECjCF;ED6CA;CD6+RH;AO36RG;EN9EE;ECjCF;ED6CA;CDk/RH;AOt4RK;EAiBF;ENzIE;ECjCF;ED6CA;CDw/RH;AOp2RG;EAEI;CPq2RP;AOh2RK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDigSH;AOt1RC;EAEI;CPu1RL;AO9wRG;ENlQE;ECjCF;ED6CA;CDygSH;AOtgSC;ENfI;ECjCF;ED6CA;CD8gSH;AO58RG;EN9EE;ECjCF;ED6CA;CDmhSH;AOv6RK;EAiBF;ENzIE;ECjCF;ED6CA;CDyhSH;AOr4RG;EAEI;CPs4RP;AOj4RK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDkiSH;AOv3RC;EAEI;CPw3RL;AuC9mQC;E3BzuBE;EACA;EACA;EACA;EACA;EAGA;CZw1RH;;AuClpRC;E3B/XE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZkhSL;AY9gSC;;EAGI;EACA;EACA;EACA;EACA;CZ+gSL;AY3gSC;EAGI;EXpEA;ECjCF;ED6CA;CDskSH;AYjgSC;EXjFI;ECjCF;ED6CA;CD2kSH;AY1/RG;EAEI;UAAA;CZ2/RP;AYv/RG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZw/RP;AYl/RG;EAEI;EACA;EACA;CZm/RP;AY7+RG;EAEI;UAAA;CZ8+RP;AYt+RG;EAEI;UAAA;EAKA;UAAA;CZm+RP;AYr9RC;;EAGI;EACA;EACA;EACA;EACA;CZs9RL;AYj9RG;EAEI;EACA;CZk9RP;AO1mSC;;ENfI;ECjCF;ED6CA;CDmnSH;AOvgSK;EAiBF;ENzIE;ECjCF;ED6CA;CDynSH;AuC1sRG;E3BjOA;EACA;EACA;EACA;EACA;EAGA;CZ46RH;;AqElpRC;EzDndE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZsmSL;AYlmSC;;EAGI;EACA;EACA;EACA;EACA;CZmmSL;AY/lSC;EAGI;EXpEA;ECjCF;ED6CA;CD0pSH;AYrlSC;EXjFI;ECjCF;ED6CA;CD+pSH;AY9kSG;EAEI;UAAA;CZ+kSP;AY3kSG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZ4kSP;AYtkSG;EAEI;EACA;EACA;CZukSP;AYjkSG;EAEI;UAAA;CZkkSP;AY1jSG;EAEI;UAAA;EAKA;UAAA;CZujSP;AYziSC;;EAGI;EACA;EACA;EACA;EACA;CZ0iSL;AYriSG;EAEI;EACA;CZsiSP;AO9rSC;ENfI;ECjCF;ED6CA;CDssSH;AOpoSG;EN9EE;ECjCF;ED6CA;CD2sSH;AO/lSK;EAiBF;ENzIE;ECjCF;ED6CA;CDitSH;AO7jSG;EAEI;CP8jSP;AOzjSK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD0tSH;AO/iSC;EAEI;CPgjSL;AO3gSG;EN9NE;ECjCF;ED6CA;CDkuSH;AO/tSC;ENfI;ECjCF;ED6CA;CDuuSH;AOrqSG;EN9EE;ECjCF;ED6CA;CD4uSH;AOhoSK;EAiBF;ENzIE;ECjCF;ED6CA;CDkvSH;AO9lSG;EAEI;CP+lSP;AO1lSK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD2vSH;AOhlSC;EAEI;CPilSL;AOxgSG;ENlQE;ECjCF;ED6CA;CDmwSH;AOhwSC;ENfI;ECjCF;ED6CA;CDwwSH;AOtsSG;EN9EE;ECjCF;ED6CA;CD6wSH;AOjqSK;EAiBF;ENzIE;ECjCF;ED6CA;CDmxSH;AO/nSG;EAEI;CPgoSP;AO3nSK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD4xSH;AOjnSC;EAEI;CPknSL;AqE/qQC;EzDl6BE;EACA;EACA;EACA;EACA;EAGA;CZklSH;;AqEpzRC;EzDvdE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZ4wSL;AYxwSC;;EAGI;EACA;EACA;EACA;EACA;CZywSL;AYrwSC;EAGI;EXpEA;ECjCF;ED6CA;CDg0SH;AY3vSC;EXjFI;ECjCF;ED6CA;CDq0SH;AYpvSG;EAEI;UAAA;CZqvSP;AYjvSG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZkvSP;AY5uSG;EAEI;EACA;EACA;CZ6uSP;AYvuSG;EAEI;UAAA;CZwuSP;AYhuSG;EAEI;UAAA;EAKA;UAAA;CZ6tSP;AY/sSC;;EAGI;EACA;EACA;EACA;EACA;CZgtSL;AY3sSG;EAEI;EACA;CZ4sSP;AOp2SC;;ENfI;ECjCF;ED6CA;CD62SH;AOjwSK;EAiBF;ENzIE;ECjCF;ED6CA;CDm3SH;AqE52RG;EzDzTA;EACA;EACA;EACA;EACA;EAGA;CZsqSH;;AuE35SC;EtEoBI;ECjCF;ED6CA;CDi4SH;AuC14RC;EtCvfE;CDo4SH;AuCv5RC;EtC7eE;CDu4SH;AuEl6SG;EtE2BA;EUsJA;EACA;CXqvSH;AWluSC;EV1KE;EAAA;EUgLI;EACA;EACA;CXiuSP;AuEr6SG;EAEI;CvEs6SP;AuEl6SG;EAEI;KAAA;MAAA;UAAA;CvEm6SP;AuE/5SG;EAEI;CvEg6SP;AuE35SG;;EAGI;CvE45SP;;AuEr5SC;EAEI;EACA;CvEu5SL;AuEp5SG;ErEzDA;EDwCA;ECxCA;EDwCA;CD26SH;AIl6SK;EFjDF;EDwCA;ECxCA;EDwCA;CDi7SH;AuEr5SG;ErEpEA;EDwCA;ECxCA;EDwCA;EsEgCI;EACA;EAEA;EACA;UAAA;CvEu5SP;AIl7SK;EFjDF;EDwCA;ECxCA;EDwCA;CDi8SH;;AuEt5SC;EAEI;CvEw5SL;;AwCx+SC;EAmFE;EACA;EACA;EvC9DE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EuC8DA;EACA;EACA;UAAA;EACA;UAAA;EACA;EACA;EACA;EACA,WgCzHM;EhC6HN;EAAA;EAAA;E7BiEA;EACA,4HA0FW;EVjPT;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;ECxCA;EDwCA;ECxCA;EDwCA;CDy+SH;AwC15SC;EAEI;CxC25SL;AwCt5SC;EAEI;EACA;UAAA;EACA;CxCu5SL;AwCn5SC;EAEI;EACA;UAAA;EACA;CxCo5SL;AwCh5SC;EAEI;EACA;EAIA;CxC84SL;AIl/SK;EFjDF;EDwCA;ECxCA;EDwCA;CDigTH;;AwCphTC;EAEI;EACA;CxCshTL;;AwClhTC;EAEI;CxCohTL;;AwChhTC;EAEI;CxCkhTL;;AyEpiTC;EC8HE,cAHQ;ED/EN;EACA;EACA;EACA;EACA,YCvEM;EDwEN,aCxEM;EDyEN;EACA;EACA;CzE6/SL;A0EtzSC;EzErOE;CD8hTH;A0EzzSC;EzEjPI;ECjCF;ED6CA;CDmiTH;A0E70SC;EzElOI;ECjCF;ED6CA;CDwiTH;A0En0SC;;EzErOE;CD4iTH;A0Ev0SC;;EzErOE;CDgjTH;A0E11SC;;EzEtNE;CDojTH;A0E7gTC;EzEnDI;ECjCF;ED6CA;CDyjTH;A0E98SC;EAEI;EACA;EACA,YAhCG;EAiCH,aAjCG;C1Eg/SR;A0ElgTC;EAEI,SAJK;EAKL,WALK;EAML,UANK;EAOL,YAaG;EAZH,aAYG;C1Eu/SR;AqB3kTC;EqD0OA;;IzErOE;GD2kTD;E0Et2SD;;IzErOE;GD+kTD;E0Ez3SD;;IzEtNE;GDmlTD;CACF;AyEljTG;EAEI;EACA;EACA;EACA,YCpFI;EDqFJ,aCrFI;C1EwoTX;AyEhjTK;EAEI;EACA;UAAA;EACA;EACA;EACA;EACA;EAIA;EAAA;EAAA;CzE8iTT;AyEziTG;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;CzEuiTP;AyEniTG;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;UAAA;EACA;EACA;EACA;EAIA;EAAA;EAAA;CzEiiTP;AyE7hTG;EAEI;EACA;EACA;EACA;EACA;EACA;CzE8hTP;AyE1hTG;EjE7FA,gBAHsB;EAItB,mBAJsB;EAWpB,kBAHwB;EAIxB,iBAJwB;CRwnT7B;A0E9kTC;EAEI,UAJK;EAKL,YALK;EAML,WANK;EAOL,YlEpHG;EkEqHH,alErHG;CRosTR;;AyExhTG;;EAEI;EAAA;EAAA;CzE2hTP;AyExhTK;;EAEI;CzE0hTT;AyEthTK;;EAEI;EAAA;EAAA;CzEwhTT;;AyElhTC;EAEI;EACA;CzEohTL;;AyE9gTK;EAEI;UAAA;EAIA;EAAA;EAAA;CzE6gTT;;AyErgTG;;EAEI;CzEwgTP;;AyElgTG;EAEI;UAAA;EACA;EAIA;EAAA;EAAA;CzEigTP;;AyEl/SC;E7DtKE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZypTL;AYrpTC;;EAGI;EACA;EACA;EACA;EACA;CZspTL;AYlpTC;EAGI;EXpEA;ECjCF;ED6CA;CD6sTH;AYxoTC;EXjFI;ECjCF;ED6CA;CDktTH;AYjoTG;EAEI;UAAA;CZkoTP;AY9nTG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZ+nTP;AYznTG;EAEI;EACA;EACA;CZ0nTP;AYpnTG;EAEI;UAAA;CZqnTP;AY7mTG;EAEI;UAAA;EAKA;UAAA;CZ0mTP;AYhkTC;;EAGI;EACA;EACA;EACA,YAZK;EAaL,aAbK;CZ8kTV;AY5jTG;;EAGI;EACA;EACA;EACA;EACA;CZ6jTP;AYzjTG;EAEI;EACA;CZ0jTP;AOzvTC;ENfI;ECjCF;ED6CA;CDiwTH;AO/rTG;EN9EE;ECjCF;ED6CA;CDswTH;AO1pTK;EAiBF;ENzIE;ECjCF;ED6CA;CD4wTH;AOxnTG;EAEI;CPynTP;AOpnTK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDqxTH;AO1mTC;EAEI;CP2mTL;AyEzkTK;EAEI;CzE0kTT;;AyEpkTC;E7DTE;EACA;EACA;EACA;EACA;EAGA;CZ+kTH;;AY30TC;EAmEE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;EA7CF;EACA;EACA;CZuzTH;AYxwTC;EAGI;EACA;EACA;EACA;EACA;CZwwTL;AYpwTC;EAGI;EXpEA;ECjCF;ED6CA;CD+zTH;AY1vTC;EXjFI;ECjCF;ED6CA;CDo0TH;AYnvTG;EAEI;UAAA;CZovTP;AYhvTG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZivTP;AY3uTG;EAEI;EACA;EACA;CZ4uTP;AYtuTG;EAEI;UAAA;CZuuTP;AY/tTG;EAEI;UAAA;EAKA;UAAA;CZ4tTP;AOv1TC;ENfI;ECjCF;ED6CA;CD+1TH;AO7xTG;EN9EE;ECjCF;ED6CA;CDo2TH;AOxvTK;EAiBF;ENzIE;ECjCF;ED6CA;CD02TH;AOttTG;EAEI;CPutTP;AOltTK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDm3TH;AOxsTC;EAEI;CPysTL;AY1uTC;EAGI;EACA;EACA;EACA;EACA;CZ0uTL;AYruTG;EAEI;EACA;CZsuTP;;AYj6TC;;EAkCE;CZo4TH;AY9tTC;;;EAGI;EACA;EACA;EACA,YAZK;EAaL,aAbK;CZ6uTV;AY3tTG;;;EAGI;EACA;EACA;EACA;EACA;CZ6tTP;AYztTG;;EAEI;EACA;CZ2tTP;;A2E58TC;EAII;EAEA;C3E28TL;;A4En7TC;E3EKI;ECjCF;ED6CA;CDw6TH;;A4E/6TC;E3ELI;ECjCF;ED6CA;CD86TH;;A4Et6TC;E3EpBI;ECjCF;ED6CA;CDo7TH;;A4Eh6TC;E3EhCI;ECjCF;ED6CA;CD07TH;;A4E15TC;E3E5CI;ECjCF;ED6CA;CDg8TH;;A6Ej+TC;ElEuLE;EACA;EN+CA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;E4EmDA;EACA;EACA;EACA,aD1FK;EC2FL,gBD1FQ;EC2FR;EACA;C7E06TH;AWzzTC;EV1KE;EAAA;EUgLI;EACA;EACA;CXwzTP;A6ExgUG;EAEI;C7EygUP;A6EpgUG;EAEI;C7EqgUP;A6EjgUG;EAEI;C7EkgUP;A6E7/TG;EAEI,wBDzBO;EC0BP;C7E8/TP;A6Ez/TG;ErEnBA;EACA;EACA;EACA,aAhCK;EA4CH;EACA;UAAA;CRogUL;A6E7/TG;ErEYA,gBAHsB;EAItB,mBAJsB;CRw/TzB;;A6Et/TG;EACE;EACA;C7Ey/TL;A6Et/TG;EAEI;C7Eu/TP;A6El/TG;EAEI,wBD5DO;EC6DP;C7Em/TP;;A6E7+TC;EAwDE,YDzHS;EC4HT,gBD3Ha;C5EkjUhB;;A6E9+TC;EA+DE,kBDlIY;C5EqjUf;;A8EnkUC;ElEuEE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;EkEpEA;C9EkkUL;AY1/TC;;EAGI;EACA;EACA;EACA;EACA;CZ2/TL;AYv/TC;EAGI;EXpEA;ECjCF;ED6CA;CDkjUH;AY7+TC;EXjFI;ECjCF;ED6CA;CDujUH;AYt+TG;EAEI;UAAA;CZu+TP;AYn+TG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZo+TP;AY99TG;EAEI;EACA;EACA;CZ+9TP;AYz9TG;EAEI;UAAA;CZ09TP;AYl9TG;EAEI;UAAA;EAKA;UAAA;CZ+8TP;AYj8TC;;EAGI;EACA;EACA;EACA;EACA;CZk8TL;AY77TG;EAEI;EACA;CZ87TP;AOtlUC;ENfI;ECjCF;ED6CA;CD8lUH;AO5hUG;EN9EE;ECjCF;ED6CA;CDmmUH;AOngUK;EA6BF;ENzIE;ECjCF;ED6CA;CDymUH;AOr9TG;EAEI;CPs9TP;AOj9TK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDknUH;AOv8TC;EAEI;CPw8TL;A8EhpUG;ElEyOA;EACA;EACA;EACA;EACA;EAGA;CZw6TH;;A+ExlUC;EnETE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZkmUL;AY9lUC;EAGI;EACA;EACA;EACA;EACA;CZ8lUL;AY1lUC;EAGI;EXpEA;ECjCF;ED6CA;CDqpUH;AYhlUC;EXjFI;ECjCF;ED6CA;CD0pUH;AYzkUG;EAEI;UAAA;CZ0kUP;AYtkUG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZukUP;AYjkUG;EAEI;EACA;EACA;CZkkUP;AY5jUG;EAEI;UAAA;CZ6jUP;AYrjUG;EAEI;UAAA;EAKA;UAAA;CZkjUP;AYxgUC;EAGI;EACA;EACA;EACA,YAZK;EAaL,aAbK;CZqhUV;AYngUG;EAGI;EACA;EACA;EACA;EACA;CZmgUP;AY//TG;EAEI;EACA;CZggUP;AO/rUC;ENfI;ECjCF;ED6CA;CDusUH;AOroUG;EN9EE;ECjCF;ED6CA;CD4sUH;AOhmUK;EAiBF;ENzIE;ECjCF;ED6CA;CDktUH;AO9jUG;EAEI;CP+jUP;AO1jUK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD2tUH;AOhjUC;EAEI;CPijUL;;A+ElvUC;EAMI;EACA,aA7Be;EA8Bf;EACA;EACA;C/EgvUL;A+EvrUC;EAEI,YArFmB;EAsFnB;EACA;EACA;UAAA;EACA;C/EwrUL;A+EprUC;;EAGI;EACA;EACA;EACA;C/EqrUL;A+EjrUC;EAMI;EACA,YA/GiB;EAgHjB;EACA;C/E8qUL;A+E1qUC;EAGI;EACA;EACA;EACA;EACA;EACA;EACA;UAAA;C/E0qUL;AI1vUK;E2EmFE;EACA;UAAA;C/E0qUP;A+ErqUC;EAEI;EACA,YAzImB;EA0InB;EACA;EACA;C/EsqUL;AgFpxUC;E/ENI;ECjCF;ED6CA;CDmxUH;AgFzxUC;E/ENI;ECjCF;ED6CA;CDwxUH;AgFvvUC;E/E7CI;ECjCF;ED6CA;E+EqCE,cA3EmB;ChFo0UxB;AgF7vUC;E/E7CI;ECjCF;ED6CA;E+EqCE,cA3EmB;ChF00UxB;A+ExjUC;EAEI;EAEA;EACA;EACA;EACA;UAAA;C/EwjUL;A+EpjUC;EAEI;EAAA;EAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;UAAA;EACA;UAAA;C/EkjUL;A+E9iUG;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;UAAA;EACA;C/E+iUP;A+EziUG;EAEI;C/E0iUP;A+EtiUG;EAEI;EAAA;EAAA;EAIA;UAAA;C/EoiUP;A+E/hUC;EACE;;IAGI;G/EgiUL;CACF;A+E5hUC;E1E7GE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CDw2UH;AgFhrUC;E/ExLE;E+E4LE,aAtOoB;ChFs5UzB;AgF3qUC;E/EjME;CD+2UH;AgF/pUC;E/E5NI;ECjCF;ED6CA;CDo3UH;A+ElvUC;EAEI;EACA,aA/Ke;EAgLf;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA,YApLe;C/Eu6UpB;A+EhvUG;EAEI;C/EivUP;A+E7uUG;EAEI;EACA;EAIA;C/E2uUP;A+EtuUC;EpErBE;EACA,0HA0FW;EoEjET;EACA;EACA;EACA,aAhNQ;EAiNR;EACA;EACA;EACA;EACA;UAAA;EACA,YAtNQ;C/E47Ub;AgFj1UC;E/E9EI;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;CD25UH;AgFz1UC;E/E9EI;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;CDm6UH;AOh6UC;ENfI;ECjCF;ED6CA;CDw6UH;AOt2UG;EN9EE;ECjCF;ED6CA;CD66UH;AOj0UK;EAiBF;ENzIE;ECjCF;ED6CA;CDm7UH;AO/xUG;EAEI;CPgyUP;AO3xUK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CD47UH;AOjxUC;EAEI;CPkxUL;A+E7vUC;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;C/E8vUL;A+E1vUC;;EAGI;EACA;EACA;C/E2vUL;AgF11UC;E/EjII;ECjCF;ED6CA;E+EyHE,aA5Jc;ChFw/UnB;AgFh2UC;E/EjII;ECjCF;ED6CA;E+EyHE,aA5Jc;ChF8/UnB;AgFzzUC;E/E9KI;ECjCF;ED6CA;E+EsKE,aAzMc;ChFogVnB;AgF/zUC;E/E9KI;ECjCF;ED6CA;E+EsKE,aAzMc;ChF0gVnB;A+E9+UG;EA+UA;EAIA;C/E+pUH;A+E5pUC;EAEI;C/E6pUL;A+Eh/UK;;EAGI;EAAA;EAAA;C/Ei/UT;A+E7+UK;EACE;;IAGI;G/E8+UT;CACF;;A+Ex+UC;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;C/E0+UL;;AiF1iVC;EA6PE,WClPM;ED0ON,YChPqB;EDAnB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EAUA;CjFgiVL;;AiFv4UC;EhF5IE;CDuhVH;;AiFj4UC;EhFtJE;CD2hVH;;AiF72UC;EAEI,iBCpNM;ClFmkVX;AiF32UK;EANJ;IAOM;GjF82UL;CACF;;AiFt2UC;EAEI,iBCnOM;ClF2kVX;;AiFl2UC;EtE5DE;EACA,4HA0FW;CXw0Ud;;AiF34UC;EhF9KI;ECjCF;ED6CA;CDmjVH;;AiFrjVC;;;EAII;CjFujVL;;AiFnjVC;;EAGI;CjFqjVL;;AiFjjVC;EAkNE;CjFm2UH;;AiF51UC;E/E9QE;EDwCA;ECxCA;EDwCA;EgFyOE;CjFi2UL;AIjkVK;EFjDF;EDwCA;ECxCA;EDwCA;CDglVH;AiFn2UC;EAEI;EACA;CjFo2UL;AiFh2UC;EAEI;EACA,mBCtRI;ClFunVT;;AiFnkVC;E/E7DE;EDwCA;ECxCA;EDwCA;EgF8BE;EACA;EACA;EACA;EACA;UAAA;EACA;CjFkkVL;AiF9kVG;E5D/DA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CrBgpVH;AIvmVK;EFjDF;EDwCA;ECxCA;EDwCA;CDsnVH;AiFhlVG;EAEI;UAAA;EACA;EACA;EAIA;EAAA;EAAA;CjF8kVP;AiFtkVG;EAEI;UAAA;EAIA;CjFokVP;;AiF5jVC;E5EkIE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;ECxCA;EDwCA;ECxCA;EDwCA;EgF0EE;EACA;EACA;EACA;EACA;EAGA;EACA;CjFmlVL;AI5pVK;EFjDF;EDwCA;ECxCA;EDwCA;CD2qVH;;AiFnlVC;EAEI;EACA;CjFqlVL;;AiFjlVC;EAEI;EACA;EACA;EACA;EACA;CjFmlVL;;AMj/UC;ELvME;CD4rVH;AOzrVC;ENfI;ECjCF;ED6CA;CDisVH;AO/nVG;EN9EE;ECjCF;ED6CA;CDssVH;AO1lVK;EAiBF;ENzIE;ECjCF;ED6CA;CD4sVH;AOxjVG;EAEI;CPyjVP;AOpjVK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDqtVH;AO1iVC;EAEI;CP2iVL;;AiFvmVC;EhFjHE;CD4tVH;AOztVC;ENfI;ECjCF;ED6CA;CDiuVH;AO/pVG;EN9EE;ECjCF;ED6CA;CDsuVH;AO1nVK;EAiBF;ENzIE;ECjCF;ED6CA;CD4uVH;AOxlVG;EAEI;CPylVP;AOplVK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDqvVH;AO1kVC;EAEI;CP2kVL;;AiF9nVC;E/B5DE;EACA;EACA,aARQ;EASR;ClD8rVH;AkD1rVC;;EAGI,YgC7Gc;EhC8Gd,agC9Gc;ClFyyVnB;;AiFnoVC;E/EzKE;EDwCA;ECxCA;EDwCA;CD2wVH;AIlwVK;EFjDF;EDwCA;ECxCA;EDwCA;CDixVH;;AmF5mVC;EjF7ME;EDwCA;ECxCA;EDwCA;EkF6KE;EACA,YA9BG;EA+BH,aA/BG;CnF2oVR;AIlxVK;EFjDF;EDwCA;ECxCA;EDwCA;CDiyVH;;AmF9mVC;EAEI,YAnBmB;EAoBnB,aAtCG;CnFspVR;;AmF9zVC;EAwOA;EACA;EACA;EACA;KAAA;MAAA;UAAA;CnF0lVD;AmFxtVC;ElFjGI;ECjCF;ED6CA;CDkzVH;AmFntVC;ElF3GI;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;CD0zVH;AmF1sVC;ElF5HI;ECjCF;ED6CA;CD+zVH;AmFrsVC;ElFtII;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;CDu0VH;;AmF90VC;EjFjCE;EDwCA;ECxCA;EDwCA;EkF+PF;EACA;EACA;EACA;EACA;EACA;EAtQI;EAAA;EAAA;CnFu1VL;AI50VK;EFjDF;EDwCA;ECxCA;EDwCA;CD21VH;;AmFz1VC;EAyNE;EACA,YClRU;EDmRV,aClRW;EDmRX;EACA;EACA;EAIA;CnFioVH;;AmF/1VC;EAyOE;EACA;EACA;EACA;EACA;UAAA;EAIA;EAAA;EAAA;CnFunVH;;AmFp2VC;ExEgIE;EACA,0HA0FW;EwEyCX;EACA,YCnUa;EDoUb,aCpUa;EDqUb;EACA;EAEA;EACA;CnFqmVH;;AmF12VK;EA4QJ;CnFkmVD;AmF12VK;EA4QJ;UAAA;CnFimVD;AIx3VK;E+E0RF;UAAA;CnFimVH;AmF52VK;EAiRJ;UAAA;CnF8lVD;AI93VK;E+EmSF;UAAA;CnF8lVH;;AmF52VC;EAqRA;EACA;CnF2lVD;AmF72VK;EAsRJ;CnF0lVD;AmF52VK;EAsRJ;EACA;CnFylVD;;AOn5VC;ENfI;ECjCF;ED6CA;CD45VH;AO11VG;EN9EE;ECjCF;ED6CA;CDi6VH;AOrzVK;EAiBF;ENzIE;ECjCF;ED6CA;CDu6VH;AOnxVG;EAEI;CPoxVP;AO/wVK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDg7VH;AOrwVC;EAEI;CPswVL;;AmFx3VC;EvE/BE;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZw5VL;AYp5VC;EAGI;EACA;EACA;EACA;EACA;CZo5VL;AYh5VC;EAGI;EXpEA;ECjCF;ED6CA;CD28VH;AYt4VC;EXjFI;ECjCF;ED6CA;CDg9VH;AY/3VG;EAEI;UAAA;CZg4VP;AY53VG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZ63VP;AYv3VG;EAEI;EACA;EACA;CZw3VP;AYl3VG;EAEI;UAAA;CZm3VP;AY32VG;EAEI;UAAA;EAKA;UAAA;CZw2VP;AY9zVC;EAGI;EACA;EACA;EACA,YuEjH+B;EvEkH/B,auElH+B;CnFg7VpC;AYzzVG;EAGI;EACA;EACA;EACA;EACA;CZyzVP;AYrzVG;EAEI;EACA;CZszVP;AOr/VC;ENfI;ECjCF;ED6CA;CD6/VH;AO37VG;EN9EE;ECjCF;ED6CA;CDkgWH;AOt5VK;EAiBF;ENzIE;ECjCF;ED6CA;CDwgWH;AOp3VG;EAEI;CPq3VP;AOh3VK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDihWH;AOt2VC;EAEI;CPu2VL;;AqFjjWC;EhFmOE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EoF2CA,oBC7FiB;ED8FjB,mBC9FiB;ED2MjB,gBC5MQ;EC2ER;EFoJA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CrFs4VH;AqF9gWC;EpFnDE;CDokWH;AqFvgWC;EpF7DE;EoFiEE;CrFugWL;AqF14VG;EACE;EACA;CrF44VL;;AqFrmWC;EAEI;CrFumWL;;AqFnmWC;EE2CE;EFqNA;EACA;EACA;EACA;EACA;CrFw2VH;;AqFxmWC;EAEI;EAIA;EAKA;EACA;CrFmmWL;;AqF/lWC;EAEI;EAIA,YC7DM;ED8DN,aC9DM;ED+DN,gBC/DM;EDgEN;CrF8lWL;;AqF/2VG;EACE;EACA;EACA;CrFk3VL;AqF/2VG;EACE;EACA;CrFi3VL;;AqF/jWC;EpF/DI;ECjCF;ED6CA;CDwnWH;AqF3jWC;EpFzEI;ECjCF;ED6CA;EoFiEE;CrF6jWL;AqFl3VC;;EAGI;CrFm3VL;;AqF5mWC;EnF9DE;EDwCA;ECxCA;EDwCA;CDyoWH;AIhoWK;EFjDF;EDwCA;ECxCA;EDwCA;CD+oWH;;AqFv8VC;EzE5KE;EACA;EACA;EACA;EACA;EACA;EAEA;CZsnWH;AY/mWC;;EAGI;EACA;EACA;EACA;EACA;CZgnWL;AY5mWC;EAGI;EXpEA;ECjCF;ED6CA;CDuqWH;AYlmWC;EXjFI;ECjCF;ED6CA;CD4qWH;AY3lWG;EAEI;UAAA;CZ4lWP;AYxlWG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZylWP;AYnlWG;EAEI;EACA;EACA;CZolWP;AY9kWG;EAEI;UAAA;CZ+kWP;AYvkWG;EAEI;UAAA;EAKA;UAAA;CZokWP;AYtjWC;;EAGI;EACA;EACA;EACA;EACA;CZujWL;AYljWG;EAEI;EACA;CZmjWP;AO3sWC;ENfI;ECjCF;ED6CA;CDmtWH;AOjpWG;EN9EE;ECjCF;ED6CA;CDwtWH;AO5mWK;EAiBF;ENzIE;ECjCF;ED6CA;CD8tWH;AO1kWG;EAEI;CP2kWP;AOtkWK;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDuuWH;AO5jWC;EAEI;CP6jWL;;AqFjhWC;EAEI;EACA;EACA;EACA;EACA;EACA;EAEA;CrFkhWL;;AwFl0WD;;;;;;;;;;;;;;;;;;;;;GAAA;ACkCE;EAaE,YAZe;CzFyzWlB;;AyF5xWC;EJ6IE,aInJO;CzFsyWV;;AyF/wWC;EJ4HE,aIlIO;CzFyxWV;;A0Fp2WD;;;;;;;;;;;;;;;;;;;;;GAAA;AHkCE;EAyIE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CvFmtWH;AuFzxWC;EtF3CI;ECjCF;ED6CA;CD6zWH;AuF/vWC;EtF1EI;ECjCF;ED6CA;CDk0WH;AuFzxWC;EAEI,sBA8CsB;CvF4uW3B;AuF7vWC;EAEI,aAgBiB;EAfjB,gBAeiB;CvF+uWtB;;AuFj3WC;EAEI;UAAA;EACA;CvFm3WL;;AuF/2WC;EAEI;EACA;EACA;EACA;CvFi3WL;;AuF72WC;EAEI;EACA;CvF+2WL;;AuF32WC;EAEI;CvF62WL;;AuFx2WC;EAEI;EAAA;EAAA;CvF02WL;;AuFr2WC;EAEI;CvFu2WL;;AuFn2WC;EAEI;CvFq2WL;;AuFh2WC;EAGI;CvFi2WL;;A2F57WD;;;;;;;;;;;;;;;;;;;;;GAAA;ACuDE;EAOI;C5Fw5WL;A4F36WC;EAEI;EAAA;EAAA;C5F46WL;;A4Ft5WC;EAEI;EACA;EACA;EACA;EACA;C5Fw5WL;;A4Fp5WC;EAEI;EACA;EACA;C5Fs5WL;;A4F/4WK;;EACE;C5Fm5WP;;A4F74WC;EAEI;C5F+4WL;;A4F34WC;EPmFE;EOvCA;EACA;EACA;UAAA;EAIA;C5Fi2WH;;A4F/4WC;EAEI;C5Fi5WL;;A4F74WC;EAEI;C5F+4WL;;A4F34WC;EAEI;C5F64WL;;A4Fx4WG;EAEI;C5F04WP;;A6F/sWC;EjF/ME;EACA;EACA;EACA;EACA;EACA;EAEA;EAGE;CZ+5WL;AY35WC;;EAGI;EACA;EACA;EACA;EACA;CZ45WL;AYx5WC;EAGI;EXpEA;ECjCF;ED6CA;CDm9WH;AY94WC;EXjFI;ECjCF;ED6CA;CDw9WH;AYv4WG;EAEI;UAAA;CZw4WP;AYp4WG;EAEI;EACA;EACA;EACA;UAAA;EACA;UAAA;CZq4WP;AY/3WG;EAEI;EACA;EACA;CZg4WP;AY13WG;EAEI;UAAA;CZ23WP;AYn3WG;EAEI;UAAA;EAKA;UAAA;CZg3WP;AYl2WC;;EAGI;EACA;EACA;EACA;EACA;CZm2WL;AY91WG;EAEI;EACA;CZ+1WP;;A6FpwWC;EjFxCE;EACA;EACA;EACA;EACA;EAGA;CZ8yWH;;A6FlhXC;E5FGI;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAAA;EAAA;E4F+vCA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;C7FgxUH;A6F3pSC;E5F33EE;CDyhXH;A6FnuSC;E5FtzEE;CD4hXH;A6F/nSC;EAGE;I5Fh6EA;GDgiXD;E6FhoSC;I5Fh6EA;GDgiXD;E6FhoSC;I5Fh6EA;GDgiXD;E6FhoSC;I5Fh6EA;GDgiXD;CACF;A6F5nSC;EAGE;I5Fx6EA;GDqiXD;CACF;A6FppVC;E5F95BI;ECjCF;ED6CA;CD2iXH;A8FxhXC;E7FnBE;CD8iXH;A+FzhXC;;E9FrBE;CDkjXH;AgGv+WC;E/F3EE;CDqjXH;AgGh+WC;E/FrFE;CDwjXH;A6FprSG;E5Fp4EA;CD2jXH;A6F7qSG;E5F94EA;CD8jXH;A6FxuUC;EAEI;EACA;UAAA;EACA;C7FyuUL;;A6F9kXC;ExFiNE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;E4F0jEA,aI3gEW;EJ+gEX;EASA;EACA;EACA;EACA;EACA;EACA;KAAA;UAAA;EACA;C7FshTH;A6FlhTG;EACE;C7FohTL;A6FhhTG;EACE;C7FkhTL;A6F/gTG;EACE;C7FihTL;A6F7gTG;EACE;C7F+gTL;A6FltSC;EAGE;IAtTA;IAIA;G7FsgTD;E6FptSC;IAtTA;IAIA;G7FsgTD;E6FptSC;IAtTA;IAIA;G7FsgTD;E6FptSC;IAtTA;IAIA;G7FsgTD;CACF;A6FhtSC;EAGE;IA9TA;IAIA;G7F4gTD;CACF;A6F9tSC;EAGE;IAzSA;IACA;IAIA;G7FqgTD;E6FjuSC;IAzSA;IACA;IAIA;G7FqgTD;E6FjuSC;IAzSA;IACA;IAIA;G7FqgTD;E6FjuSC;IAzSA;IACA;IAIA;G7FqgTD;CACF;A6F7tSC;EAGE;IAjTA;IACA;IAIA;G7F4gTD;CACF;;A6FnoXC;ExFgME;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;E4F0jEA,aI3gEW;EJ+gEX;EAuEA;EACA;C7F8hTH;A6F3pXG;EAkpEA;C7F4gTH;A6FxpXG;EACE;IAgoEF;IACA;IACA;IACA;G7F2hTD;CACF;;A6FzpXC;E3F9DE;EDwCA;ECxCA;EDwCA;CDsrXH;AI7qXK;EFjDF;EDwCA;ECxCA;EDwCA;CD4rXH;A6FnqXG;E3FjEA;EDwCA;ECxCA;EDwCA;CDksXH;AIzrXK;EFjDF;EDwCA;ECxCA;EDwCA;CDwsXH;;A6F1qXC;E3FtEE;EDwCA;ECxCA;EDwCA;CD+sXH;AItsXK;EFjDF;EDwCA;ECxCA;EDwCA;CDqtXH;A6FprXG;E3FzEA;EDwCA;ECxCA;EDwCA;CD2tXH;AIltXK;EFjDF;EDwCA;ECxCA;EDwCA;CDiuXH;;A6FzrXC;EAqhBE,aIxiBK;CjGgtXR;AOluXC;;ENfI;ECjCF;ED6CA;CD2uXH;AOzqXG;EN9EE;ECjCF;ED6CA;CDgvXH;AOpoXK;EAiBF;ENzIE;ECjCF;ED6CA;CDsvXH;AKl7WC;EAyCA;EACA;EACA,a4FjUoB;E5FkUpB;EAxCI;CLq7WL;A6Fx0SC;E5Fr7EE;CDgwXH;AgC7uXG;E/BnBA;CDmwXH;AgChvXG;E/BnBA;CDswXH;AgC7vXG;E/BrBE;ECjCF;ED6CA;CD2wXH;A6Ft4UC;E3F76CE;EDwCA;ECxCA;EDwCA;CDixXH;AIxwXK;EFjDF;EDwCA;ECxCA;EDwCA;CDuxXH;A+BtrXC;EAYM;UAAA;C/B6qXP;A6Fh/UG;EACE;C7Fk/UL;A6Fp4UG;EACE;C7Fs4UL;A6Fn4UG;EAEE;C7Fo4UL;A6F/3UC;EACE;IA2uBA;IACA;IACA;IACA;G7FupTD;CACF;;A6F3vXC;EAyjBE,aIplBK;EJo7CL;C7Fu2UH;A+B/sXC;EAYM;UAAA;C/BssXP;AiChkXC;EAEI;CjCikXL;A+BrtXC;;EAYM;UAAA;C/B6sXP;AiCtjXG;;EAEI;CjCwjXP;A+BxsXC;EAEI;UAAA;C/BysXL;A+BvwXG;EACE;IACE;YAAA;G/BywXL;E+BrwXG;IACE;YAAA;IACA;YAAA;G/BuwXL;E+BnwXG;IACE;YAAA;IAMA;YAAA;G/BgwXL;E+B5vXG;IACE;YAAA;G/B8vXL;CACF;A+BvxXG;EACE;IACE;YAAA;G/BywXL;E+BrwXG;IACE;YAAA;IACA;YAAA;G/BuwXL;E+BnwXG;IACE;YAAA;IAMA;YAAA;G/BgwXL;E+B5vXG;IACE;YAAA;G/B8vXL;CACF;A6FviVG;EACE;C7FyiVL;AiClyXC;;;EhClDE;CDy1XH;AiCvyXC;;;EhClDE;CD81XH;AiC5yXC;;;EhC9DI;ECjCF;ED6CA;CDq2XH;AiCnvXC;E/B1JE;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;CDq3XH;AI52XK;EFjDF;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;EDwCA;CDq4XH;AiCzvXO;EA1BN;IA2BQ;GjC4vXP;CACF;AiC1uXO;EAXN;IAYQ;GjC6uXP;CACF;AiCxuXC;E/B/ME;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;EDwCA;CD+5XH;AIt5XK;EFjDF;ED4BE;ECjCF;EAKA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;ECxCA;ED4BE;ECjCF;EAKA;EDwCA;CD+6XH;A6FvvVK;EAxoCJ;IA4oCM;IACA;G7FuvVL;CACF;A6F7vVK;EAxoCJ;IA4oCM;IACA;G7F6vVL;CACF;A6FnwVK;EA1LF;IA8LI;IACA;G7FmwVL;CACF;A6FzwVK;EA1LF;IA8LI;IACA;G7FywVL;CACF;A6Fz7VG;EAGM;EACA;C7Fy7VT;A6FnxVK;EA1KF;IA8KI;IACA;G7FmxVL;CACF;AIx8XK;EyFwhCM;EACA;C7Fm7VX;A6F7xVK;EzF/qCA;IyFmrCE;IACA;G7F6xVL;CACF;A6Fj7VG;EAaM;EACA;C7Fu6VT;A6FvyVK;EA9IF;IAkJI;IACA;G7FuyVL;CACF;AI59XK;EyFojCM;EACA;C7F26VX;A6FjzVK;EzF/qCA;IyFmrCE;IACA;G7FizVL;CACF;A6Fn6VG;EAgQA;EACA;EACA;EACA;C7FsqVH;AiCt6XC;EAEI,iBCpIS;ClC2iYd;AOr/XC;;EAQM;CPi/XP;A6FniVC;E3FjgDE;EDwCA;ECxCA;EDwCA;CDkgYH;AIz/XK;EFjDF;EDwCA;ECxCA;EDwCA;CDwgYH;A6F5jVC;EAGI;EACA;EACA;C7F4jVL;A6F19XG;EAw7CA;C7FqiVH;;A6Ft9XC;EAwuDE;EACA;EACA;EACA;EACA;EAIA;C7F+uUH;A6FxoUC;EAEI,UIn2De;CjG4+XpB;A6FroUG;EAEI;UAAA;C7FsoUP;A6Fl+XG;EAu2DA;EACA;EACA,mBIn3DmB;EJo3DnB;EACA;EACA;EACA;EAGA;EAIA,oBI93DmB;CjGu/XtB;A6FtlUG;EAGE;C7FslUL;A+B58XC;EAYM;UAAA;C/Bm8XP;A+B17XC;EAEI;UAAA;C/B27XL;A+Bz/XG;EACE;IACE;YAAA;G/B2/XL;E+Bv/XG;IACE;YAAA;IACA;YAAA;G/By/XL;E+Br/XG;IACE;YAAA;IAMA;YAAA;G/Bk/XL;E+B9+XG;IACE;YAAA;G/Bg/XL;CACF;A+BzgYG;EACE;IACE;YAAA;G/B2/XL;E+Bv/XG;IACE;YAAA;IACA;YAAA;G/By/XL;E+Br/XG;IACE;YAAA;IAMA;YAAA;G/Bk/XL;E+B9+XG;IACE;YAAA;G/Bg/XL;CACF;A6F//XK;EAg7DF,iBIp6D+B;EJq6D/B,mBIp6DkC;CjGs/XrC;A6F9/XO;EAo7DJ,iBI75DwC;EJ85DxC,oBI75D2C;CjG0+X9C;AiC5/XC;EAEI,e4Dk7DyC;C7F2kU9C;A+B7+XC;EAYM;UAAA;C/Bo+XP;AiC91XC;EAEI;CjC+1XL;A+Bn/XC;;EAYM;UAAA;C/B2+XP;AiCp1XG;;EAEI;CjCs1XP;A+Bt+XC;EAEI;UAAA;C/Bu+XL;A+BriYG;EACE;IACE;YAAA;G/BuiYL;E+BniYG;IACE;YAAA;IACA;YAAA;G/BqiYL;E+BjiYG;IACE;YAAA;IAMA;YAAA;G/B8hYL;E+B1hYG;IACE;YAAA;G/B4hYL;CACF;A+BrjYG;EACE;IACE;YAAA;G/BuiYL;E+BniYG;IACE;YAAA;IACA;YAAA;G/BqiYL;E+BjiYG;IACE;YAAA;IAMA;YAAA;G/B8hYL;E+B1hYG;IACE;YAAA;G/B4hYL;CACF;A6F7hYK;EAo9DF,iBI3+DiC;EJ4+DjC,oBI3+DoC;CjGujYvC;A6F7hYK;EAw8DF,UI7+D0B;CjGqkY7B;A6F1hYK;EAg3DF,mBI91D4C;CjG2gY/C;A6FzhYK;EA61DF;EAEA;C7F8rUH;AKxyXC;EAwBA;EACA;EACA,a4FhQ0C;E5FiQ1C;EAvBI;CL2yXL;A6FnsUG;EAEE;C7FosUL;;A6F/hYC;EA0sDE;EACA;EACA;EACA;EACA;EACA;EACA,iBInyDK;EJ+yDL;EAAA;EAAA;EACA;EACA;EACA;EACA;EAEA;EACA;C7F60UH;A6F7iYG;EA8uDA;UAAA;C7Fk0UH;A6F7iYK;;EAsvDF;UAAA;C7F2zUH;A6F3iYG;EA+vDA;UAAA;C7F+yUH;AIzpYK;EyF82DA;UAAA;C7F8yUL;A6F9iYK;;EA6wDF;UAAA;C7FqyUH;AIhqYK;;;EyF+3DA;UAAA;C7FsyUL;;A6FhjYC;E3FtKE;EDwCA;ECxCA;EDwCA;CDqrYH;AI5qYK;EFjDF;EDwCA;ECxCA;EDwCA;CD2rYH;A6FljVC;E9DxgDE,6B8DmoDA;E3F5yDA;EDwCA;ECxCA;EDwCA;CDksYH;AIzrYK;EFjDF;EDwCA;ECxCA;EDwCA;CDwsYH;A6FtjVC;E9DjhDE,2C8DmpDA;C7Fu7UH;A6FrgVC;E3F9uDE;EDwCA;ECxCA;EDwCA;CDitYH;AIxsYK;EFjDF;EDwCA;ECxCA;EDwCA;CDutYH;AiCn8XC;EAEI,6B4D+9CF;C7Fq+UH;A+BznYC;EAGM;UAAA;C/BynYP;AIptYK;E2BgGI;UAAA;C/BunYT;AiC7+XC;EAEI;CjC8+XL;A+BloYC;;EAGM;UAAA;C/BmoYP;AI9tYK;;;E2BgGI;UAAA;C/BmoYT;AiCx+XG;;EAEI;CjC0+XP;A+B1nYC;EAEI;UAAA;C/B2nYL;A+BzrYG;EACE;IACE;YAAA;G/B2rYL;E+BvrYG;IACE;YAAA;IACA;YAAA;G/ByrYL;E+BrrYG;IACE;YAAA;IAMA;YAAA;G/BkrYL;E+B9qYG;IACE;YAAA;G/BgrYL;CACF;A+BzsYG;EACE;IACE;YAAA;G/B2rYL;E+BvrYG;IACE;YAAA;IACA;YAAA;G/ByrYL;E+BrrYG;IACE;YAAA;IAMA;YAAA;G/BkrYL;E+B9qYG;IACE;YAAA;G/BgrYL;CACF;A+B7oYC;EAEI;UAAA;C/B8oYL;A+B5sYG;EACE;IACE;YAAA;G/B8sYL;E+B1sYG;IACE;YAAA;IACA;YAAA;G/B4sYL;E+BxsYG;IACE;YAAA;IAMA;YAAA;G/BqsYL;E+BjsYG;IACE;YAAA;G/BmsYL;CACF;A+B5tYG;EACE;IACE;YAAA;G/B8sYL;E+B1sYG;IACE;YAAA;IACA;YAAA;G/B4sYL;E+BxsYG;IACE;YAAA;IAMA;YAAA;G/BqsYL;E+BjsYG;IACE;YAAA;G/BmsYL;CACF;;A6F5oYC;E3FlLE;EDwCA;ECxCA;EDwCA;CD6xYH;AIpxYK;EFjDF;EDwCA;ECxCA;EDwCA;CDmyYH;A6FpoVC;E9D9hDE,6B8DmoDA;C7FkiVH;A6FnoVC;E9DliDE,2C8DmpDA;C7FqhVH;AiCrhYC;EAEI,6B4D+9CF;C7FujVH;;A6FtpYC;EAsrCE;EACA;EACA;EACA;C7Fo+VH;A6FjoVC;E9DjjDE,6B8DmoDA;C7FkjVH;A6FhoVC;E9DrjDE,2C8DmpDA;C7FqiVH;;A6FxpYC;EAEI;EACA;EACA;C7F0pYL;A6FvpYG;EAEI,oBI7Hc;EJ8Hd,mBI9Hc;CjGsxYrB;;A6F9oYC;EAEI;C7FgpYL;;A6F58TC;E5F33EE;CD20YH;AiC7wYC;;;EAII,kBgE9CkB;CjG4zYvB;A6FluVC;EAGI;C7FkuVL;AiCpwYC;EAEI,iBgE7DkB;CjGk0YvB;AiCvwYC;EAEI,e4D6iDyC;C7F2tV9C;;AgCt0YG;E/B/BE;ECjCF;ED6CA;CD+1YH;AgCt1YG;E/BrBE;ECjCF;ED6CA;CDo2YH;A6Fz+TC;E5Fv4EI;ECjCF;ED6CA;CDy2YH;A8F50YC;E7FzCI;ECjCF;ED6CA;CD82YH;A6F59WC;E5F95BI;ECjCF;ED6CA;CDm3YH;AgG9xYC;E/FjGI;ECjCF;ED6CA;CDw3YH;AgCr2YG;E/B/BE;ECjCF;ED6CA;CD63YH;AiC30YC;;;EhC9DI;ECjCF;ED6CA;CDo4YH;AiCl1YC;;;EhC9DI;ECjCF;ED6CA;CD24YH;AiCz1YC;;;EhC9DI;ECjCF;ED6CA;CDk5YH;A6FtzVC;EAEI;C7FuzVL;;A6FxsYC;EA01CE;C7Fk3VH;A6FnmUC;E5FtzEE;CD45YH;A6F//TC;EAGE;I5Fh6EA;GDg6YD;E6FhgUC;I5Fh6EA;GDg6YD;E6FhgUC;I5Fh6EA;GDg6YD;E6FhgUC;I5Fh6EA;GDg6YD;CACF;A6F5/TC;EAGE;I5Fx6EA;GDq6YD;CACF;A6F3iUC;E5F33EE;CDy6YH;A8Ft5YC;E7FnBE;CD46YH;A+Fv5YC;;E9FrBE;CDg7YH;AgGr2YC;E/F3EE;CDm7YH;AgG91YC;E/FrFE;CDs7YH;A6FljUG;E5Fp4EA;CDy7YH;A6F3iUG;E5F94EA;CD47YH;AgCz6YG;E/BnBA;CD+7YH;AiC74YC;;;EhClDE;CDo8YH;A6FviUC;EAGE;I5Fh6EA;GDw8YD;E6FxiUC;I5Fh6EA;GDw8YD;E6FxiUC;I5Fh6EA;GDw8YD;E6FxiUC;I5Fh6EA;GDw8YD;CACF;A6FpiUC;EAGE;I5Fx6EA;GD68YD;CACF;A6F17VC;EAu2BA;I5F33EE;GDk9YD;CACF;A6F/7VC;ECjgDA;I7FnBE;GDu9YD;CACF;A6Fp8VC;EE//CA;;I9FrBE;GD69YD;CACF;A6F18VC;EGz8CA;I/F3EE;GDk+YD;CACF;A6F/8VC;EG/7CA;I/FrFE;GDu+YD;CACF;A6Fp9VC;EAg3BE;I5Fp4EA;GD4+YD;CACF;A6Fz9VC;EA03BE;I5F94EA;GDi/YD;CACF;A6F99VC;E7DjgDE;I/BnBA;GDs/YD;CACF;A6Fn+VC;E5Dl+CA;;;IhClDE;GD6/YD;CACF;A6Fp9VC;EAEI;C7Fq9VL;A6FjzYG;E5FhNA;CDogZH;A6Fp8VC;EAII;C7Fm8VL;A6FnzYG;EAm2CA;C7Fm9VH;;A6F3zUC;EAGI;EACA;C7F4zUL;AItgZK;EyF+sEE;EACA;C7F0zUP;;A6F7yUK;;;EAEE;EACA;C7FizUP;A6F9yUK;EACE;EACA;EACA;EACA,mBI9nES;CjG86YhB;A6F7yUK;EACE;EACA,mBIjoES;EJkoET;EACA;C7F+yUP;A6F1yUK;EACE;C7F4yUP;A6FzyUK;EACE;C7F2yUP;A6FxyUK;EACE;C7F0yUP;A6FvyUK;EACE;C7FyyUP;A6FtyUK;EACE;C7FwyUP;A6F1xUK;EAGE;EACA;C7F0xUP;A6FvxUK;EAEE;EACA,oBIlrEqB;CjG08Y5B;A6FrxUK;EACE;EACA,kBIrrEqB;CjG48Y5B;;A8F1mZC;EzF+OE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EIkPA,eA2CQ;EAoBN;EACA;EACA;EyFvVA;EACA;EACA;EAIA;C9FioZL;AK/xYC;EAyCA;EACA;EACA,ayFtZ0C;EzFuZ1C;EAxCI;CLkyYL;;A8FpoZC;EAEI;EAIA;EACA;C9FmoZL;;A+FzpZC;E1F+OE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EIkPA,eA2CQ;EAoBN;EACA;EACA;EH3VF;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;E8FhCE;C/FurZL;AKn1YC;EAyCA;EACA;EACA,a0FtZ0C;E1FuZ1C;EAxCI;CLs1YL;AIrpZK;EFjDF;EDwCA;ECxCA;EDwCA;CDoqZH;AI3pZK;EFjDF;EDwCA;ECxCA;EDwCA;CD0qZH;;AgGvtZC;EAoEE;EACA;ChGupZH;AgGppZC;EAGI;EACA;ChGopZL;AgG7tZG;EAqFA;ChG2oZH;;AgG3tZC;E9FHE;EDwCA;ECxCA;EDwCA;CD6rZH;AIprZK;EFjDF;EDwCA;ECxCA;EDwCA;CDmsZH;;AgGpuZC;EAoGE,cAJU;E9FvGV;EDwCA;ECxCA;EDwCA;CD2sZH;AIlsZK;EFjDF;EDwCA;ECxCA;EDwCA;CDitZH;;AkGzvZC;EAGM;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;ClGixZP;;AkG1wZK;EjGkBA;ECjCF;ED6CA;CDkvZH;;AkGhxZK;EjGkBA;ECjCF;ED6CA;CDwvZH;;AkGhxZK;EjGYA;ECjCF;ED6CA;CD8vZH;;AkGtxZK;EjGYA;ECjCF;ED6CA;CDowZH;;AkGlyZK;EjGkBA;ECjCF;ED6CA;CD0wZH;;AkGxyZK;EjGkBA;ECjCF;ED6CA;CDgxZH;;AkG9yZK;EjGkBA;ECjCF;ED6CA;CDsxZH;;AkGpzZK;EjGkBA;ECjCF;ED6CA;CD4xZH;;AkG1zZK;EjGkBA;ECjCF;ED6CA;CDkyZH;;AkGh0ZK;EjGkBA;ECjCF;ED6CA;CDwyZH;;AkGt0ZK;EjGkBA;ECjCF;ED6CA;CD8yZH;;AkG50ZK;EjGkBA;ECjCF;ED6CA;CDozZH;;AkGl1ZK;EjGkBA;ECjCF;ED6CA;CD0zZH;;AkGx1ZK;EjGkBA;ECjCF;ED6CA;CDg0ZH;;AkG91ZK;EjGkBA;ECjCF;ED6CA;CDs0ZH;;AkGp2ZK;EjGkBA;ECjCF;ED6CA;CD40ZH;;AkG12ZK;EjGkBA;ECjCF;ED6CA;CDk1ZH;;AkGh3ZK;EjGkBA;ECjCF;ED6CA;CDw1ZH;;AkGt3ZK;EjGkBA;ECjCF;ED6CA;CD81ZH;;AkG53ZK;EjGkBA;ECjCF;ED6CA;CDo2ZH;;AkGl4ZK;EjGkBA;ECjCF;ED6CA;CD02ZH;;AkGx4ZK;EjGkBA;ECjCF;ED6CA;CDg3ZH;;AkG94ZK;EjGkBA;ECjCF;ED6CA;CDs3ZH;;AkGp5ZK;EjGkBA;ECjCF;ED6CA;CD43ZH;;AkG14ZG;EjGEE;ECjCF;ED6CA;CDk4ZH;;AkGh5ZG;EjGEE;ECjCF;ED6CA;CDw4ZH;;AmGl5ZC;ElGFI;ECjCF;ED6CA;CD84ZH;;AmGp3ZG;ElGtCE;ECjCF;ED6CA;CDo5ZH;;AmGn1ZC;ElGjEE;CDw5ZH;;AmG94ZG;ElGtBE;ECjCF;ED6CA;EkGgBE;CnG+4ZL;;AmGj1ZG;EACE,WAtGI;CnG07ZT;;AmGz0ZG;EACE;EAAA;EAAA;CnG40ZL;;AmGh0ZG;EACE;CnGm0ZL;;AmG53ZG;ElG3DE;ECjCF;ED6CA;CDi7ZH;;AmG93ZG;ElGnDA;CDq7ZH;;AmG93ZG;ElGnEE;ECjCF;ED6CA;CD27ZH;;AoGl7ZC;EAEI;EACA;CpGo7ZL;;AoGh7ZC;EAEI;CpGk7ZL;;AoG96ZC;;;EAII;CpGg7ZL;AoG76ZG;;;EzF6GA;EACA,0HA0FW;EyFjMP;EACA,mBAvEc;EA2Ed;EACA;EACA;CpG06ZP;AmGp5ZC;;;ElGjEE;CD09ZH;;AoG16ZC;E/FsJE;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EmGwDE,kBA7FS;EA8FT;EACA,gBAtGO;EAuGP,iBApGO;EAqGP,iBApGQ;EAqGR,iBAxGQ;EAyGR;EACA;EACA;EACA;UAAA;EACA;EACA;EACA;CpG07ZL;AoGv7ZG;EAEI;EACA;EACA;EACA,iBApHM;EAqHN,gBAzHK;EA0HL,iBA/GU;CpGuiajB;AoGp7ZG;EAEI;EACA;CpGq7ZP;AIjgaK;EgG8EI;EACA;CpGs7ZT;AoGj7ZG;EAEI;UAAA;EACA;CpGk7ZP;AoG96ZG;EAEI;UAAA;CpG+6ZP;AoG36ZG;E/FwIA,eA2CQ;EAoBN;EACA;EACA;EA7GF;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EmGkHI;CpG87ZP;AK5uZC;EAyCA;EACA;EACA,a+FpQ4C;E/FqQ5C;EAxCI;CL+uZL;AoGj8ZG;E/F4HA,eA2CQ;EAoBN;EACA;EACA;EA7GF;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;EmG8HI;EACA;EACA;CpGo9ZP;AKhxZC;EAyCA;EACA;EACA,a+FxP4C;E/FyP5C;EAxCI;CLmxZL;AIllaK;EgGyHI;EACA;CpG49ZT;AoGv9ZG;EAEI;CpGw9ZP;;AqG/oaD;EpGiCM;ECjCF;ED6CA;EAAA;EoGzCF;EACA;EACA;EACA;EACA;EACA;EACA;CrGmpaD;AsGxoaC;;ErGYI;ECjCF;ED6CA;CDsnaH;AOnnaC;;;ENfI;ECjCF;ED6CA;CD6naH;AO3jaG;;;EN9EE;ECjCF;ED6CA;CDooaH;AOxhaK;;;EAiBF;ENzIE;ECjCF;ED6CA;CD4oaH;AOx/ZG;;EAEI;CP0/ZP;AOr/ZK;;EAEI,0BAvMS;EN8Bb;ECjCF;ED6CA;CDupaH;AO5+ZC;;EAEI;CP8+ZL;AqG5raC;EACE;EACA;EACA;EACA;EACA,aE3BS;CvGytaZ;AqG3raC;EACE;EACA;EACA;EACA;EACA;EAEA;CrG4raH;AqG1raG;EACE;EACA;CrG4raL;AqGzraG;EACE;EACA;CrG2raL;AqGvraC;EhG2ME;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;ECxCA;EDwCA;ECxCA;EDwCA;EoGGA;EACA;EACA;EACA;CrG6saH;AI1saK;EFjDF;EDwCA;ECxCA;EDwCA;CDytaH;;AsG7taC;EpGpCE;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;CDouaH;AI3taK;EFjDF;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;ECxCA;EDwCA;CD8uaH;;AqGhuaD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;CrGmuaD;AI/uaK;EiGeF;EACA;EACA;EACA;CrGmuaH;AqGhuaC;EACE,aE9EgB;CvGgzanB;AqG/taC;EACE,aEjFqB;CvGkzaxB;AqG9taC;EACE;EAEA;CrG+taH;;AqG3taD;E1F6FI;EACA,2HA0FW;E0FrLb,YE1FsB;EF2FtB;CrG8taD;AqG5taC;EACE;CrG8taH;AqG3taC;EACE;CrG6taH;;AqGvtaD;EACE;CrG0taD;AqGxtaC;EnGzGE;EDwCA;ECxCA;EDwCA;CD+xaH;AItxaK;EFjDF;EDwCA;ECxCA;EDwCA;CDqyaH;;AqG9taC;EACE,aEvGe;CvGw0alB;AqG9taC;EACE;CrGguaH;AqG7taC;EnGvHE;EDwCA;ECxCA;EDwCA;CDkzaH;AIzyaK;EFjDF;EDwCA;ECxCA;EDwCA;CDwzaH;;AqG/taC;EACE,cEhImB;CvGk2atB;AqG/taC;EACE;EACA,oBEpI6B;CvGq2ahC;AqG9taC;;EAEE;CrGguaH;;AqG3taD;EACE;CrG8taD;;AqG3taD;E1F6BI;EACA,2HA0FW;E0FrHb;CrG8taD;;AqGxtaC;EACE;CrG2taH;AqGxtaC;EACE;CrG0taH;AqGvtaC;EnGtKE;EDwCA;ECxCA;EDwCA;EoGqIA,oBE/JmC;CvGs3atC;AIn1aK;EFjDF;EDwCA;ECxCA;EDwCA;CDk2aH;;AqGxtaD;EACE,kBElMW;CvG65aZ;;AqGxtaD;EACE,kBE9KiB;CvGy4alB;;AqGxtaD;EACE,kBElMkB;CvG65anB;;AqGxtaD;EACE,mBE7LqB;CvGw5atB;;AqGxtaD;EACE;CrG2taD;;AsG52aC;EACE;IACE,aC3Dc;GvG06ajB;;EsG52aC;IACE,aC9DmB;GvG66atB;;EsG52aC;IACE;GtG+2aH;;EsG32aC;IACE;GtG82aH;EsG32aG;IpGpEF;IDwCA;ICxCA;IDwCA;GD64aD;EIp4aG;IFjDF;IDwCA;ICxCA;IDwCA;GDm5aD;;EsG72aG;IACE,oBCzEgC;GvGy7arC;;EsG52aC;IACE,kBC3Fc;GvG08ajB;CACF;AKxxaC;EAkEE;EACA;EJnNE;ECjCF;ED6CA;CDm6aH;;AK1xaG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CD67aH;;AKpzaG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CDu9aH;;AK90aG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CDi/aH;;AKx2aG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CD2gbH;;AKl4aG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CDqibH;;AK55aG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CD+jbH;;AKt7aG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CDylbH;;AKh9aG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CDmnbH;;AK1+aG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CD6obH;;AKpgbG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CDuqbH;;AK9hbG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CDisbH;;AKxjbG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA;CD2tbH;;AKllbG;EA6DA;EACA;EJnNE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;EAZE;ECjCF;ED6CA;UAAA;EAZE;ECjCF;ED6CA","file":"material-components-web.css","sourcesContent":["@charset \"UTF-8\";\n.mdc-banner__text {\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n}\n\n.mdc-banner__graphic {\n color: #fff;\n /* @alternate */\n color: var(--mdc-theme-surface, #fff);\n}\n\n.mdc-banner__graphic {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-theme-primary, #6200ee);\n}\n\n.mdc-banner__graphic {\n border-radius: 50%;\n}\n\n.mdc-banner__content,\n.mdc-banner__fixed {\n min-width: 344px;\n}\n@media (max-width: 480px), (max-width: 344px) {\n .mdc-banner__content,\n.mdc-banner__fixed {\n min-width: 100%;\n }\n}\n\n.mdc-banner__content {\n max-width: 720px;\n}\n\n.mdc-banner {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n border-bottom-color: rgba(0, 0, 0, 0.12);\n z-index: 1;\n border-bottom-style: solid;\n border-bottom-width: 1px;\n box-sizing: border-box;\n display: none;\n flex-shrink: 0;\n height: 0;\n position: relative;\n width: 100%;\n}\n.mdc-banner .mdc-banner__fixed {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n}\n.mdc-banner .mdc-banner__fixed {\n border-bottom-color: rgba(0, 0, 0, 0.12);\n}\n@media (max-width: 480px) {\n .mdc-banner .mdc-banner__fixed {\n left: 0;\n right: 0;\n }\n .mdc-banner .mdc-banner__text {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 36px;\n }\n [dir=rtl] .mdc-banner .mdc-banner__text, .mdc-banner .mdc-banner__text[dir=rtl] {\n /* @noflip */\n margin-left: 36px;\n /* @noflip */\n margin-right: 16px;\n }\n}\n@media (max-width: 480px) {\n .mdc-banner.mdc-banner--mobile-stacked .mdc-banner__content {\n flex-wrap: wrap;\n }\n .mdc-banner.mdc-banner--mobile-stacked .mdc-banner__graphic {\n margin-bottom: 12px;\n }\n .mdc-banner.mdc-banner--mobile-stacked .mdc-banner__text {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 8px;\n padding-bottom: 4px;\n }\n [dir=rtl] .mdc-banner.mdc-banner--mobile-stacked .mdc-banner__text, .mdc-banner.mdc-banner--mobile-stacked .mdc-banner__text[dir=rtl] {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 16px;\n }\n .mdc-banner.mdc-banner--mobile-stacked .mdc-banner__actions {\n margin-left: auto;\n }\n}\n\n.mdc-banner--opening,\n.mdc-banner--open,\n.mdc-banner--closing {\n display: flex;\n}\n\n.mdc-banner--open {\n transition: height 300ms ease;\n}\n.mdc-banner--open .mdc-banner__content {\n transition: transform 300ms ease;\n transform: translateY(0);\n}\n\n.mdc-banner--closing {\n transition: height 250ms ease;\n}\n.mdc-banner--closing .mdc-banner__content {\n transition: transform 250ms ease;\n}\n\n.mdc-banner--centered .mdc-banner__content {\n left: 0;\n margin-left: auto;\n margin-right: auto;\n right: 0;\n}\n\n.mdc-banner__fixed {\n border-bottom-style: solid;\n border-bottom-width: 1px;\n box-sizing: border-box;\n height: inherit;\n position: fixed;\n width: 100%;\n}\n\n.mdc-banner__content {\n display: flex;\n min-height: 52px;\n position: absolute;\n transform: translateY(-100%);\n width: 100%;\n}\n\n.mdc-banner__graphic-text-wrapper {\n display: flex;\n width: 100%;\n}\n\n.mdc-banner__graphic {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n flex-shrink: 0;\n height: 40px;\n margin-top: 16px;\n margin-bottom: 16px;\n text-align: center;\n width: 40px;\n}\n[dir=rtl] .mdc-banner__graphic, .mdc-banner__graphic[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n\n.mdc-banner__icon {\n position: relative;\n top: 50%;\n transform: translateY(-50%);\n}\n\n.mdc-banner__text {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n /* @noflip */\n margin-left: 24px;\n /* @noflip */\n margin-right: 90px;\n align-self: center;\n flex-grow: 1;\n padding-top: 16px;\n padding-bottom: 16px;\n}\n[dir=rtl] .mdc-banner__text, .mdc-banner__text[dir=rtl] {\n /* @noflip */\n margin-left: 90px;\n /* @noflip */\n margin-right: 24px;\n}\n\n.mdc-banner__actions {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 8px;\n align-self: flex-end;\n display: flex;\n flex-shrink: 0;\n padding-bottom: 8px;\n padding-top: 8px;\n}\n[dir=rtl] .mdc-banner__actions, .mdc-banner__actions[dir=rtl] {\n /* @noflip */\n padding-left: 8px;\n /* @noflip */\n padding-right: 0;\n}\n\n.mdc-banner__primary-action:not(:disabled) {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-banner__primary-action::before, .mdc-banner__primary-action::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n.mdc-banner__primary-action:hover::before, .mdc-banner__primary-action.mdc-ripple-surface--hover::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-banner__primary-action.mdc-ripple-upgraded--background-focused::before, .mdc-banner__primary-action:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-banner__primary-action:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-banner__primary-action:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-banner__primary-action.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n\n.mdc-banner__secondary-action {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 8px;\n}\n.mdc-banner__secondary-action:not(:disabled) {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-banner__secondary-action::before, .mdc-banner__secondary-action::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n.mdc-banner__secondary-action:hover::before, .mdc-banner__secondary-action.mdc-ripple-surface--hover::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-banner__secondary-action.mdc-ripple-upgraded--background-focused::before, .mdc-banner__secondary-action:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-banner__secondary-action:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-banner__secondary-action:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-banner__secondary-action.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n[dir=rtl] .mdc-banner__secondary-action, .mdc-banner__secondary-action[dir=rtl] {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 0;\n}\n\n.mdc-touch-target-wrapper {\n display: inline;\n}\n\n.mdc-elevation-overlay {\n position: absolute;\n border-radius: inherit;\n pointer-events: none;\n opacity: 0;\n /* @alternate */\n opacity: var(--mdc-elevation-overlay-opacity, 0);\n transition: opacity 280ms cubic-bezier(0.4, 0, 0.2, 1);\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-elevation-overlay-color, #fff);\n}\n\n.mdc-button {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-button-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-button-font-size, 0.875rem);\n line-height: 2.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-button-line-height, 2.25rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-button-font-weight, 500);\n letter-spacing: 0.0892857143em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-button-letter-spacing, 0.0892857143em);\n text-decoration: none;\n /* @alternate */\n text-decoration: var(--mdc-typography-button-text-decoration, none);\n text-transform: uppercase;\n /* @alternate */\n text-transform: var(--mdc-typography-button-text-transform, uppercase);\n /* @alternate */\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n min-width: 64px;\n border: none;\n outline: none;\n /* @alternate */\n line-height: inherit;\n user-select: none;\n -webkit-appearance: none;\n overflow: visible;\n vertical-align: middle;\n}\n.mdc-button .mdc-elevation-overlay {\n width: 100%;\n height: 100%;\n top: 0;\n /* @noflip */\n left: 0;\n}\n.mdc-button::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\n.mdc-button:active {\n outline: none;\n}\n.mdc-button:hover {\n cursor: pointer;\n}\n.mdc-button:disabled {\n cursor: default;\n pointer-events: none;\n}\n.mdc-button .mdc-button__icon {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 8px;\n display: inline-block;\n width: 18px;\n height: 18px;\n font-size: 18px;\n vertical-align: top;\n}\n[dir=rtl] .mdc-button .mdc-button__icon, .mdc-button .mdc-button__icon[dir=rtl] {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-button .mdc-button__touch {\n position: absolute;\n top: 50%;\n right: 0;\n height: 48px;\n left: 0;\n transform: translateY(-50%);\n}\n\n.mdc-button__label + .mdc-button__icon {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 0;\n}\n[dir=rtl] .mdc-button__label + .mdc-button__icon, .mdc-button__label + .mdc-button__icon[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 8px;\n}\n\nsvg.mdc-button__icon {\n fill: currentColor;\n}\n\n.mdc-button--raised .mdc-button__icon,\n.mdc-button--unelevated .mdc-button__icon,\n.mdc-button--outlined .mdc-button__icon {\n /* @noflip */\n margin-left: -4px;\n /* @noflip */\n margin-right: 8px;\n}\n[dir=rtl] .mdc-button--raised .mdc-button__icon, .mdc-button--raised .mdc-button__icon[dir=rtl],\n[dir=rtl] .mdc-button--unelevated .mdc-button__icon,\n.mdc-button--unelevated .mdc-button__icon[dir=rtl],\n[dir=rtl] .mdc-button--outlined .mdc-button__icon,\n.mdc-button--outlined .mdc-button__icon[dir=rtl] {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: -4px;\n}\n.mdc-button--raised .mdc-button__label + .mdc-button__icon,\n.mdc-button--unelevated .mdc-button__label + .mdc-button__icon,\n.mdc-button--outlined .mdc-button__label + .mdc-button__icon {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: -4px;\n}\n[dir=rtl] .mdc-button--raised .mdc-button__label + .mdc-button__icon, .mdc-button--raised .mdc-button__label + .mdc-button__icon[dir=rtl],\n[dir=rtl] .mdc-button--unelevated .mdc-button__label + .mdc-button__icon,\n.mdc-button--unelevated .mdc-button__label + .mdc-button__icon[dir=rtl],\n[dir=rtl] .mdc-button--outlined .mdc-button__label + .mdc-button__icon,\n.mdc-button--outlined .mdc-button__label + .mdc-button__icon[dir=rtl] {\n /* @noflip */\n margin-left: -4px;\n /* @noflip */\n margin-right: 8px;\n}\n\n.mdc-button--touch {\n margin-top: 6px;\n margin-bottom: 6px;\n}\n\n@keyframes mdc-ripple-fg-radius-in {\n from {\n animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transform: translate(var(--mdc-ripple-fg-translate-start, 0)) scale(1);\n }\n to {\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n }\n}\n@keyframes mdc-ripple-fg-opacity-in {\n from {\n animation-timing-function: linear;\n opacity: 0;\n }\n to {\n opacity: var(--mdc-ripple-fg-opacity, 0);\n }\n}\n@keyframes mdc-ripple-fg-opacity-out {\n from {\n animation-timing-function: linear;\n opacity: var(--mdc-ripple-fg-opacity, 0);\n }\n to {\n opacity: 0;\n }\n}\n.mdc-button {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-button .mdc-button__ripple::before,\n.mdc-button .mdc-button__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-button .mdc-button__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-button .mdc-button__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-button.mdc-ripple-upgraded .mdc-button__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-button.mdc-ripple-upgraded .mdc-button__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-button.mdc-ripple-upgraded--unbounded .mdc-button__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-button.mdc-ripple-upgraded--foreground-activation .mdc-button__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-button.mdc-ripple-upgraded--foreground-deactivation .mdc-button__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-button .mdc-button__ripple::before,\n.mdc-button .mdc-button__ripple::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n.mdc-button.mdc-ripple-upgraded .mdc-button__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-button .mdc-button__ripple {\n position: absolute;\n box-sizing: content-box;\n width: 100%;\n height: 100%;\n overflow: hidden;\n}\n.mdc-button:not(.mdc-button--outlined) .mdc-button__ripple {\n top: 0;\n left: 0;\n}\n\n.mdc-button--raised {\n /* @alternate */\n box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);\n transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n.mdc-button--raised:hover, .mdc-button--raised:focus {\n /* @alternate */\n box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);\n}\n.mdc-button--raised:active {\n /* @alternate */\n box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);\n}\n.mdc-button--raised:disabled {\n /* @alternate */\n box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-button--outlined {\n border-style: solid;\n}\n\n.mdc-button {\n height: 36px;\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-small, 4px);\n padding: 0 8px 0 8px;\n}\n.mdc-button:not(:disabled) {\n background-color: transparent;\n}\n.mdc-button:disabled {\n background-color: transparent;\n}\n.mdc-button:not(:disabled) {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-button:disabled {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-button .mdc-button__ripple::before, .mdc-button .mdc-button__ripple::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n.mdc-button:hover .mdc-button__ripple::before, .mdc-button.mdc-ripple-surface--hover .mdc-button__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-button.mdc-ripple-upgraded--background-focused .mdc-button__ripple::before, .mdc-button:not(.mdc-ripple-upgraded):focus .mdc-button__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-button:not(.mdc-ripple-upgraded) .mdc-button__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-button:not(.mdc-ripple-upgraded):active .mdc-button__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-button.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-button .mdc-button__ripple {\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-small, 4px);\n}\n\n.mdc-button--unelevated {\n padding: 0 16px 0 16px;\n height: 36px;\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-small, 4px);\n}\n.mdc-button--unelevated:not(:disabled) {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-button--unelevated:disabled {\n background-color: rgba(0, 0, 0, 0.12);\n}\n.mdc-button--unelevated:not(:disabled) {\n color: #fff;\n /* @alternate */\n color: var(--mdc-theme-on-primary, #fff);\n}\n.mdc-button--unelevated:disabled {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-button--unelevated .mdc-button__ripple::before, .mdc-button--unelevated .mdc-button__ripple::after {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-on-primary, #fff));\n}\n.mdc-button--unelevated:hover .mdc-button__ripple::before, .mdc-button--unelevated.mdc-ripple-surface--hover .mdc-button__ripple::before {\n opacity: 0.08;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.08);\n}\n.mdc-button--unelevated.mdc-ripple-upgraded--background-focused .mdc-button__ripple::before, .mdc-button--unelevated:not(.mdc-ripple-upgraded):focus .mdc-button__ripple::before {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.24);\n}\n.mdc-button--unelevated:not(.mdc-ripple-upgraded) .mdc-button__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-button--unelevated:not(.mdc-ripple-upgraded):active .mdc-button__ripple::after {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n.mdc-button--unelevated.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n.mdc-button--unelevated .mdc-button__ripple {\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-small, 4px);\n}\n\n.mdc-button--raised {\n padding: 0 16px 0 16px;\n height: 36px;\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-small, 4px);\n}\n.mdc-button--raised:not(:disabled) {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-button--raised:disabled {\n background-color: rgba(0, 0, 0, 0.12);\n}\n.mdc-button--raised:not(:disabled) {\n color: #fff;\n /* @alternate */\n color: var(--mdc-theme-on-primary, #fff);\n}\n.mdc-button--raised:disabled {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-button--raised .mdc-button__ripple::before, .mdc-button--raised .mdc-button__ripple::after {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-on-primary, #fff));\n}\n.mdc-button--raised:hover .mdc-button__ripple::before, .mdc-button--raised.mdc-ripple-surface--hover .mdc-button__ripple::before {\n opacity: 0.08;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.08);\n}\n.mdc-button--raised.mdc-ripple-upgraded--background-focused .mdc-button__ripple::before, .mdc-button--raised:not(.mdc-ripple-upgraded):focus .mdc-button__ripple::before {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.24);\n}\n.mdc-button--raised:not(.mdc-ripple-upgraded) .mdc-button__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-button--raised:not(.mdc-ripple-upgraded):active .mdc-button__ripple::after {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n.mdc-button--raised.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n.mdc-button--raised .mdc-button__ripple {\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-small, 4px);\n}\n\n.mdc-button--outlined {\n height: 36px;\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-small, 4px);\n padding: 0 15px 0 15px;\n border-width: 1px;\n}\n.mdc-button--outlined:not(:disabled) {\n background-color: transparent;\n}\n.mdc-button--outlined:disabled {\n background-color: transparent;\n}\n.mdc-button--outlined:not(:disabled) {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-button--outlined:disabled {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-button--outlined .mdc-button__ripple::before, .mdc-button--outlined .mdc-button__ripple::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n.mdc-button--outlined:hover .mdc-button__ripple::before, .mdc-button--outlined.mdc-ripple-surface--hover .mdc-button__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-button--outlined.mdc-ripple-upgraded--background-focused .mdc-button__ripple::before, .mdc-button--outlined:not(.mdc-ripple-upgraded):focus .mdc-button__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-button--outlined:not(.mdc-ripple-upgraded) .mdc-button__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-button--outlined:not(.mdc-ripple-upgraded):active .mdc-button__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-button--outlined.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-button--outlined .mdc-button__ripple {\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-small, 4px);\n}\n.mdc-button--outlined:not(:disabled) {\n border-color: rgba(0, 0, 0, 0.12);\n}\n.mdc-button--outlined:disabled {\n border-color: rgba(0, 0, 0, 0.12);\n}\n.mdc-button--outlined .mdc-button__ripple {\n top: -1px;\n left: -1px;\n border: 1px solid transparent;\n}\n.mdc-button--outlined .mdc-button__touch {\n left: -1px;\n width: calc(100% + 2 * 1px);\n}\n\n.mdc-card {\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-medium, 4px);\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n /* @alternate */\n position: relative;\n /* @alternate */\n box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n.mdc-card .mdc-elevation-overlay {\n width: 100%;\n height: 100%;\n top: 0;\n /* @noflip */\n left: 0;\n}\n.mdc-card::after {\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-medium, 4px);\n position: absolute;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n border: 1px solid transparent;\n border-radius: inherit;\n content: \"\";\n pointer-events: none;\n}\n\n.mdc-card--outlined {\n /* @alternate */\n box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);\n border-width: 1px;\n border-style: solid;\n border-color: #e0e0e0;\n}\n.mdc-card--outlined::after {\n border: none;\n}\n\n.mdc-card__content {\n border-radius: inherit;\n height: 100%;\n}\n\n.mdc-card__media {\n position: relative;\n box-sizing: border-box;\n background-repeat: no-repeat;\n background-position: center;\n background-size: cover;\n}\n.mdc-card__media::before {\n display: block;\n content: \"\";\n}\n\n.mdc-card__media:first-child {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n}\n\n.mdc-card__media:last-child {\n border-bottom-left-radius: inherit;\n border-bottom-right-radius: inherit;\n}\n\n.mdc-card__media--square::before {\n margin-top: 100%;\n}\n\n.mdc-card__media--16-9::before {\n margin-top: 56.25%;\n}\n\n.mdc-card__media-content {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n box-sizing: border-box;\n}\n\n.mdc-card__primary-action {\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n position: relative;\n outline: none;\n color: inherit;\n text-decoration: none;\n cursor: pointer;\n overflow: hidden;\n}\n\n.mdc-card__primary-action:first-child {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n}\n\n.mdc-card__primary-action:last-child {\n border-bottom-left-radius: inherit;\n border-bottom-right-radius: inherit;\n}\n\n.mdc-card__actions {\n display: flex;\n flex-direction: row;\n align-items: center;\n box-sizing: border-box;\n min-height: 52px;\n padding: 8px;\n}\n\n.mdc-card__actions--full-bleed {\n padding: 0;\n}\n\n.mdc-card__action-buttons,\n.mdc-card__action-icons {\n display: flex;\n flex-direction: row;\n align-items: center;\n box-sizing: border-box;\n}\n\n.mdc-card__action-icons {\n color: rgba(0, 0, 0, 0.6);\n flex-grow: 1;\n justify-content: flex-end;\n}\n\n.mdc-card__action-buttons + .mdc-card__action-icons {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n}\n[dir=rtl] .mdc-card__action-buttons + .mdc-card__action-icons, .mdc-card__action-buttons + .mdc-card__action-icons[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n\n.mdc-card__action {\n display: inline-flex;\n flex-direction: row;\n align-items: center;\n box-sizing: border-box;\n justify-content: center;\n cursor: pointer;\n user-select: none;\n}\n.mdc-card__action:focus {\n outline: none;\n}\n\n.mdc-card__action--button {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 8px;\n padding: 0 8px;\n}\n[dir=rtl] .mdc-card__action--button, .mdc-card__action--button[dir=rtl] {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-card__action--button:last-child {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 0;\n}\n[dir=rtl] .mdc-card__action--button:last-child, .mdc-card__action--button:last-child[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 0;\n}\n\n.mdc-card__actions--full-bleed .mdc-card__action--button {\n justify-content: space-between;\n width: 100%;\n height: auto;\n max-height: none;\n margin: 0;\n padding: 8px 16px;\n /* @noflip */\n text-align: left;\n}\n[dir=rtl] .mdc-card__actions--full-bleed .mdc-card__action--button, .mdc-card__actions--full-bleed .mdc-card__action--button[dir=rtl] {\n /* @noflip */\n text-align: right;\n}\n\n.mdc-card__action--icon {\n margin: -6px 0;\n padding: 12px;\n}\n\n.mdc-card__action--icon:not(:disabled) {\n color: rgba(0, 0, 0, 0.6);\n}\n\n.mdc-card__primary-action {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-card__primary-action::before, .mdc-card__primary-action::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-card__primary-action::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-card__primary-action::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-card__primary-action.mdc-ripple-upgraded::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-card__primary-action.mdc-ripple-upgraded::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-card__primary-action.mdc-ripple-upgraded--unbounded::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-card__primary-action.mdc-ripple-upgraded--foreground-activation::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-card__primary-action.mdc-ripple-upgraded--foreground-deactivation::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-card__primary-action::before, .mdc-card__primary-action::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n.mdc-card__primary-action.mdc-ripple-upgraded::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-card__primary-action::before, .mdc-card__primary-action::after {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-ripple-color, #000);\n}\n.mdc-card__primary-action:hover::before, .mdc-card__primary-action.mdc-ripple-surface--hover::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-card__primary-action.mdc-ripple-upgraded--background-focused::before, .mdc-card__primary-action:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-card__primary-action:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-card__primary-action:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-card__primary-action.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n\n.mdc-checkbox {\n padding: calc((40px - 18px) / 2);\n /* @alternate */\n padding: calc((var(--mdc-checkbox-ripple-size, 40px) - 18px) / 2);\n margin: calc((40px - 40px) / 2);\n /* @alternate */\n margin: calc((var(--mdc-checkbox-ripple-size, 40px) - var(--mdc-checkbox-ripple-size, 40px)) / 2);\n}\n.mdc-checkbox .mdc-checkbox__ripple::before, .mdc-checkbox .mdc-checkbox__ripple::after {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-ripple-color, #000);\n}\n.mdc-checkbox:hover .mdc-checkbox__ripple::before, .mdc-checkbox.mdc-ripple-surface--hover .mdc-checkbox__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-checkbox.mdc-ripple-upgraded--background-focused .mdc-checkbox__ripple::before, .mdc-checkbox:not(.mdc-ripple-upgraded):focus .mdc-checkbox__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-checkbox:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-checkbox:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-checkbox.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::before, .mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::after {\n background-color: #018786;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-secondary, #018786));\n}\n.mdc-checkbox.mdc-checkbox--selected:hover .mdc-checkbox__ripple::before, .mdc-checkbox.mdc-checkbox--selected.mdc-ripple-surface--hover .mdc-checkbox__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded--background-focused .mdc-checkbox__ripple::before, .mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):focus .mdc-checkbox__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::before,\n.mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::after {\n background-color: #018786;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-secondary, #018786));\n}\n.mdc-checkbox .mdc-checkbox__background {\n top: calc((40px - 18px) / 2);\n /* @alternate */\n top: calc((var(--mdc-checkbox-ripple-size, 40px) - 18px) / 2);\n left: calc((40px - 18px) / 2);\n /* @alternate */\n left: calc((var(--mdc-checkbox-ripple-size, 40px) - 18px) / 2);\n}\n.mdc-checkbox .mdc-checkbox__native-control {\n top: calc((40px - 40px) / 2);\n /* @alternate */\n top: calc((var(--mdc-checkbox-ripple-size, 40px) - var(--mdc-checkbox-ripple-size, 40px)) / 2);\n right: calc((40px - 40px) / 2);\n /* @alternate */\n right: calc((var(--mdc-checkbox-ripple-size, 40px) - var(--mdc-checkbox-ripple-size, 40px)) / 2);\n left: calc((40px - 40px) / 2);\n /* @alternate */\n left: calc((var(--mdc-checkbox-ripple-size, 40px) - var(--mdc-checkbox-ripple-size, 40px)) / 2);\n width: 40px;\n /* @alternate */\n width: var(--mdc-checkbox-ripple-size, 40px);\n height: 40px;\n /* @alternate */\n height: var(--mdc-checkbox-ripple-size, 40px);\n}\n.mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true]) ~ .mdc-checkbox__background {\n border-color: rgba(0, 0, 0, 0.54);\n /* @alternate */\n border-color: var(--mdc-checkbox-unchecked-color, rgba(0, 0, 0, 0.54));\n background-color: transparent;\n}\n.mdc-checkbox .mdc-checkbox__native-control:enabled:checked ~ .mdc-checkbox__background,\n.mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate ~ .mdc-checkbox__background,\n.mdc-checkbox .mdc-checkbox__native-control[data-indeterminate=true]:enabled ~ .mdc-checkbox__background {\n border-color: #018786;\n /* @alternate */\n border-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #018786));\n background-color: #018786;\n /* @alternate */\n background-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #018786));\n}\n@keyframes mdc-checkbox-fade-in-background-8A000000FF01878600000000FF018786 {\n 0% {\n border-color: rgba(0, 0, 0, 0.54);\n /* @alternate */\n border-color: var(--mdc-checkbox-unchecked-color, rgba(0, 0, 0, 0.54));\n background-color: transparent;\n }\n 50% {\n border-color: #018786;\n /* @alternate */\n border-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #018786));\n background-color: #018786;\n /* @alternate */\n background-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #018786));\n }\n}\n@keyframes mdc-checkbox-fade-out-background-8A000000FF01878600000000FF018786 {\n 0%, 80% {\n border-color: #018786;\n /* @alternate */\n border-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #018786));\n background-color: #018786;\n /* @alternate */\n background-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #018786));\n }\n 100% {\n border-color: rgba(0, 0, 0, 0.54);\n /* @alternate */\n border-color: var(--mdc-checkbox-unchecked-color, rgba(0, 0, 0, 0.54));\n background-color: transparent;\n }\n}\n.mdc-checkbox.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-checkbox.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {\n animation-name: mdc-checkbox-fade-in-background-8A000000FF01878600000000FF018786;\n}\n.mdc-checkbox.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-checkbox.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {\n animation-name: mdc-checkbox-fade-out-background-8A000000FF01878600000000FF018786;\n}\n.mdc-checkbox .mdc-checkbox__native-control[disabled]:not(:checked):not(:indeterminate):not([data-indeterminate=true]) ~ .mdc-checkbox__background {\n border-color: rgba(0, 0, 0, 0.38);\n /* @alternate */\n border-color: var(--mdc-checkbox-disabled-color, rgba(0, 0, 0, 0.38));\n background-color: transparent;\n}\n.mdc-checkbox .mdc-checkbox__native-control[disabled]:checked ~ .mdc-checkbox__background,\n.mdc-checkbox .mdc-checkbox__native-control[disabled]:indeterminate ~ .mdc-checkbox__background,\n.mdc-checkbox .mdc-checkbox__native-control[data-indeterminate=true][disabled] ~ .mdc-checkbox__background {\n border-color: transparent;\n background-color: rgba(0, 0, 0, 0.38);\n /* @alternate */\n background-color: var(--mdc-checkbox-disabled-color, rgba(0, 0, 0, 0.38));\n}\n.mdc-checkbox .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background .mdc-checkbox__checkmark {\n color: #fff;\n /* @alternate */\n color: var(--mdc-checkbox-ink-color, #fff);\n}\n.mdc-checkbox .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background .mdc-checkbox__mixedmark {\n border-color: #fff;\n /* @alternate */\n border-color: var(--mdc-checkbox-ink-color, #fff);\n}\n.mdc-checkbox .mdc-checkbox__native-control:disabled ~ .mdc-checkbox__background .mdc-checkbox__checkmark {\n color: #fff;\n /* @alternate */\n color: var(--mdc-checkbox-ink-color, #fff);\n}\n.mdc-checkbox .mdc-checkbox__native-control:disabled ~ .mdc-checkbox__background .mdc-checkbox__mixedmark {\n border-color: #fff;\n /* @alternate */\n border-color: var(--mdc-checkbox-ink-color, #fff);\n}\n\n@keyframes mdc-checkbox-unchecked-checked-checkmark-path {\n 0%, 50% {\n stroke-dashoffset: 29.7833385;\n }\n 50% {\n animation-timing-function: cubic-bezier(0, 0, 0.2, 1);\n }\n 100% {\n stroke-dashoffset: 0;\n }\n}\n@keyframes mdc-checkbox-unchecked-indeterminate-mixedmark {\n 0%, 68.2% {\n transform: scaleX(0);\n }\n 68.2% {\n animation-timing-function: cubic-bezier(0, 0, 0, 1);\n }\n 100% {\n transform: scaleX(1);\n }\n}\n@keyframes mdc-checkbox-checked-unchecked-checkmark-path {\n from {\n animation-timing-function: cubic-bezier(0.4, 0, 1, 1);\n opacity: 1;\n stroke-dashoffset: 0;\n }\n to {\n opacity: 0;\n stroke-dashoffset: -29.7833385;\n }\n}\n@keyframes mdc-checkbox-checked-indeterminate-checkmark {\n from {\n animation-timing-function: cubic-bezier(0, 0, 0.2, 1);\n transform: rotate(0deg);\n opacity: 1;\n }\n to {\n transform: rotate(45deg);\n opacity: 0;\n }\n}\n@keyframes mdc-checkbox-indeterminate-checked-checkmark {\n from {\n animation-timing-function: cubic-bezier(0.14, 0, 0, 1);\n transform: rotate(45deg);\n opacity: 0;\n }\n to {\n transform: rotate(360deg);\n opacity: 1;\n }\n}\n@keyframes mdc-checkbox-checked-indeterminate-mixedmark {\n from {\n animation-timing-function: mdc-animation-deceleration-curve-timing-function;\n transform: rotate(-45deg);\n opacity: 0;\n }\n to {\n transform: rotate(0deg);\n opacity: 1;\n }\n}\n@keyframes mdc-checkbox-indeterminate-checked-mixedmark {\n from {\n animation-timing-function: cubic-bezier(0.14, 0, 0, 1);\n transform: rotate(0deg);\n opacity: 1;\n }\n to {\n transform: rotate(315deg);\n opacity: 0;\n }\n}\n@keyframes mdc-checkbox-indeterminate-unchecked-mixedmark {\n 0% {\n animation-timing-function: linear;\n transform: scaleX(1);\n opacity: 1;\n }\n 32.8%, 100% {\n transform: scaleX(0);\n opacity: 0;\n }\n}\n.mdc-checkbox {\n display: inline-block;\n position: relative;\n flex: 0 0 18px;\n box-sizing: content-box;\n width: 18px;\n height: 18px;\n line-height: 0;\n white-space: nowrap;\n cursor: pointer;\n vertical-align: bottom;\n}\n\n@media screen and (-ms-high-contrast: active) {\n .mdc-checkbox__native-control[disabled]:not(:checked):not(:indeterminate):not([data-indeterminate=true]) ~ .mdc-checkbox__background {\n border-color: GrayText;\n /* @alternate */\n border-color: var(--mdc-checkbox-disabled-color, GrayText);\n background-color: transparent;\n }\n\n .mdc-checkbox__native-control[disabled]:checked ~ .mdc-checkbox__background,\n.mdc-checkbox__native-control[disabled]:indeterminate ~ .mdc-checkbox__background,\n.mdc-checkbox__native-control[data-indeterminate=true][disabled] ~ .mdc-checkbox__background {\n border-color: GrayText;\n background-color: transparent;\n /* @alternate */\n background-color: var(--mdc-checkbox-disabled-color, transparent);\n }\n\n .mdc-checkbox__native-control:disabled ~ .mdc-checkbox__background .mdc-checkbox__checkmark {\n color: GrayText;\n /* @alternate */\n color: var(--mdc-checkbox-ink-color, GrayText);\n }\n .mdc-checkbox__native-control:disabled ~ .mdc-checkbox__background .mdc-checkbox__mixedmark {\n border-color: GrayText;\n /* @alternate */\n border-color: var(--mdc-checkbox-ink-color, GrayText);\n }\n\n .mdc-checkbox__mixedmark {\n margin: 0 1px;\n }\n}\n.mdc-checkbox--disabled {\n cursor: default;\n pointer-events: none;\n}\n\n.mdc-checkbox__background {\n display: inline-flex;\n position: absolute;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 18px;\n height: 18px;\n border: 2px solid currentColor;\n border-radius: 2px;\n background-color: transparent;\n pointer-events: none;\n will-change: background-color, border-color;\n transition: background-color 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), border-color 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n}\n\n.mdc-checkbox__checkmark {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n opacity: 0;\n transition: opacity 180ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n}\n.mdc-checkbox--upgraded .mdc-checkbox__checkmark {\n opacity: 1;\n}\n\n.mdc-checkbox__checkmark-path {\n transition: stroke-dashoffset 180ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n stroke: currentColor;\n stroke-width: 3.12px;\n stroke-dashoffset: 29.7833385;\n stroke-dasharray: 29.7833385;\n}\n\n.mdc-checkbox__mixedmark {\n width: 100%;\n height: 0;\n transform: scaleX(0) rotate(0deg);\n border-width: 1px;\n border-style: solid;\n opacity: 0;\n transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n}\n\n.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__background, .mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__background, .mdc-checkbox--anim-checked-unchecked .mdc-checkbox__background, .mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__background {\n animation-duration: 180ms;\n animation-timing-function: linear;\n}\n.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__checkmark-path {\n animation: mdc-checkbox-unchecked-checked-checkmark-path 180ms linear 0s;\n transition: none;\n}\n.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__mixedmark {\n animation: mdc-checkbox-unchecked-indeterminate-mixedmark 90ms linear 0s;\n transition: none;\n}\n.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__checkmark-path {\n animation: mdc-checkbox-checked-unchecked-checkmark-path 90ms linear 0s;\n transition: none;\n}\n.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__checkmark {\n animation: mdc-checkbox-checked-indeterminate-checkmark 90ms linear 0s;\n transition: none;\n}\n.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__mixedmark {\n animation: mdc-checkbox-checked-indeterminate-mixedmark 90ms linear 0s;\n transition: none;\n}\n.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__checkmark {\n animation: mdc-checkbox-indeterminate-checked-checkmark 500ms linear 0s;\n transition: none;\n}\n.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__mixedmark {\n animation: mdc-checkbox-indeterminate-checked-mixedmark 500ms linear 0s;\n transition: none;\n}\n.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__mixedmark {\n animation: mdc-checkbox-indeterminate-unchecked-mixedmark 300ms linear 0s;\n transition: none;\n}\n\n.mdc-checkbox__native-control:checked ~ .mdc-checkbox__background,\n.mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background,\n.mdc-checkbox__native-control[data-indeterminate=true] ~ .mdc-checkbox__background {\n transition: border-color 90ms 0ms cubic-bezier(0, 0, 0.2, 1), background-color 90ms 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n.mdc-checkbox__native-control:checked ~ .mdc-checkbox__background .mdc-checkbox__checkmark-path,\n.mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background .mdc-checkbox__checkmark-path,\n.mdc-checkbox__native-control[data-indeterminate=true] ~ .mdc-checkbox__background .mdc-checkbox__checkmark-path {\n stroke-dashoffset: 0;\n}\n\n.mdc-checkbox__native-control {\n position: absolute;\n margin: 0;\n padding: 0;\n opacity: 0;\n cursor: inherit;\n}\n.mdc-checkbox__native-control:disabled {\n cursor: default;\n pointer-events: none;\n}\n\n.mdc-checkbox--touch {\n margin: calc((48px - 40px) / 2);\n /* @alternate */\n margin: calc((var(--mdc-checkbox-touch-target-size, 48px) - var(--mdc-checkbox-ripple-size, 40px)) / 2);\n}\n.mdc-checkbox--touch .mdc-checkbox__native-control {\n top: calc((40px - 48px) / 2);\n /* @alternate */\n top: calc((var(--mdc-checkbox-ripple-size, 40px) - var(--mdc-checkbox-touch-target-size, 48px)) / 2);\n right: calc((40px - 48px) / 2);\n /* @alternate */\n right: calc((var(--mdc-checkbox-ripple-size, 40px) - var(--mdc-checkbox-touch-target-size, 48px)) / 2);\n left: calc((40px - 48px) / 2);\n /* @alternate */\n left: calc((var(--mdc-checkbox-ripple-size, 40px) - var(--mdc-checkbox-touch-target-size, 48px)) / 2);\n width: 48px;\n /* @alternate */\n width: var(--mdc-checkbox-touch-target-size, 48px);\n height: 48px;\n /* @alternate */\n height: var(--mdc-checkbox-touch-target-size, 48px);\n}\n\n.mdc-checkbox__native-control:checked ~ .mdc-checkbox__background .mdc-checkbox__checkmark {\n transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 180ms 0ms cubic-bezier(0, 0, 0.2, 1);\n opacity: 1;\n}\n.mdc-checkbox__native-control:checked ~ .mdc-checkbox__background .mdc-checkbox__mixedmark {\n transform: scaleX(1) rotate(-45deg);\n}\n\n.mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background .mdc-checkbox__checkmark,\n.mdc-checkbox__native-control[data-indeterminate=true] ~ .mdc-checkbox__background .mdc-checkbox__checkmark {\n transform: rotate(45deg);\n opacity: 0;\n transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n}\n.mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background .mdc-checkbox__mixedmark,\n.mdc-checkbox__native-control[data-indeterminate=true] ~ .mdc-checkbox__background .mdc-checkbox__mixedmark {\n transform: scaleX(1) rotate(0deg);\n opacity: 1;\n}\n\n.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__background,\n.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__checkmark,\n.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__checkmark-path,\n.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__mixedmark {\n transition: none;\n}\n\n.mdc-checkbox {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-checkbox .mdc-checkbox__ripple::before,\n.mdc-checkbox .mdc-checkbox__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-checkbox .mdc-checkbox__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-checkbox .mdc-checkbox__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-checkbox.mdc-ripple-upgraded--unbounded .mdc-checkbox__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-checkbox.mdc-ripple-upgraded--foreground-activation .mdc-checkbox__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-checkbox.mdc-ripple-upgraded--foreground-deactivation .mdc-checkbox__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-checkbox .mdc-checkbox__ripple::before,\n.mdc-checkbox .mdc-checkbox__ripple::after {\n top: calc(50% - 50%);\n /* @noflip */\n left: calc(50% - 50%);\n width: 100%;\n height: 100%;\n}\n.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::before,\n.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after {\n top: var(--mdc-ripple-top, calc(50% - 50%));\n /* @noflip */\n left: var(--mdc-ripple-left, calc(50% - 50%));\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-checkbox {\n z-index: 0;\n}\n.mdc-checkbox .mdc-checkbox__ripple::before,\n.mdc-checkbox .mdc-checkbox__ripple::after {\n z-index: -1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, -1);\n}\n\n.mdc-checkbox__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n}\n\n.mdc-chip-trailing-action__touch {\n position: absolute;\n top: 50%;\n right: 0;\n height: 48px;\n /* @noflip */\n left: 50%;\n width: 48px;\n transform: translate(-50%, -50%);\n}\n\n.mdc-chip-trailing-action {\n border: none;\n display: inline-flex;\n position: relative;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n padding: 0;\n outline: none;\n cursor: pointer;\n -webkit-appearance: none;\n background: none;\n}\n.mdc-chip-trailing-action .mdc-chip-trailing-action__icon {\n height: 18px;\n width: 18px;\n font-size: 18px;\n}\n.mdc-chip-trailing-action .mdc-chip-trailing-action {\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n}\n.mdc-chip-trailing-action .mdc-chip-trailing-action__touch {\n width: 26px;\n}\n.mdc-chip-trailing-action .mdc-chip-trailing-action__icon {\n fill: currentColor;\n color: inherit;\n}\n\n.mdc-chip-trailing-action {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-chip-trailing-action .mdc-chip-trailing-action__ripple::before,\n.mdc-chip-trailing-action .mdc-chip-trailing-action__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-chip-trailing-action .mdc-chip-trailing-action__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-chip-trailing-action .mdc-chip-trailing-action__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-chip-trailing-action.mdc-ripple-upgraded .mdc-chip-trailing-action__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-chip-trailing-action.mdc-ripple-upgraded .mdc-chip-trailing-action__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-chip-trailing-action.mdc-ripple-upgraded--unbounded .mdc-chip-trailing-action__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-chip-trailing-action.mdc-ripple-upgraded--foreground-activation .mdc-chip-trailing-action__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-chip-trailing-action.mdc-ripple-upgraded--foreground-deactivation .mdc-chip-trailing-action__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-chip-trailing-action .mdc-chip-trailing-action__ripple::before,\n.mdc-chip-trailing-action .mdc-chip-trailing-action__ripple::after {\n top: calc(50% - 50%);\n /* @noflip */\n left: calc(50% - 50%);\n width: 100%;\n height: 100%;\n}\n.mdc-chip-trailing-action.mdc-ripple-upgraded .mdc-chip-trailing-action__ripple::before,\n.mdc-chip-trailing-action.mdc-ripple-upgraded .mdc-chip-trailing-action__ripple::after {\n top: var(--mdc-ripple-top, calc(50% - 50%));\n /* @noflip */\n left: var(--mdc-ripple-left, calc(50% - 50%));\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-chip-trailing-action.mdc-ripple-upgraded .mdc-chip-trailing-action__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-chip-trailing-action .mdc-chip-trailing-action__ripple::before, .mdc-chip-trailing-action .mdc-chip-trailing-action__ripple::after {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-on-surface, #000));\n}\n.mdc-chip-trailing-action:hover .mdc-chip-trailing-action__ripple::before, .mdc-chip-trailing-action.mdc-ripple-surface--hover .mdc-chip-trailing-action__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-chip-trailing-action.mdc-ripple-upgraded--background-focused .mdc-chip-trailing-action__ripple::before, .mdc-chip-trailing-action:not(.mdc-ripple-upgraded):focus .mdc-chip-trailing-action__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-chip-trailing-action:not(.mdc-ripple-upgraded) .mdc-chip-trailing-action__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-chip-trailing-action:not(.mdc-ripple-upgraded):active .mdc-chip-trailing-action__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-chip-trailing-action.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-chip-trailing-action .mdc-chip-trailing-action__ripple {\n position: absolute;\n box-sizing: content-box;\n width: 100%;\n height: 100%;\n overflow: hidden;\n}\n\n.mdc-chip__icon--leading {\n color: rgba(0, 0, 0, 0.54);\n}\n\n.mdc-chip-trailing-action {\n color: #000;\n}\n\n.mdc-chip__icon--trailing {\n color: rgba(0, 0, 0, 0.54);\n}\n.mdc-chip__icon--trailing:hover {\n color: rgba(0, 0, 0, 0.62);\n}\n.mdc-chip__icon--trailing:focus {\n color: rgba(0, 0, 0, 0.87);\n}\n\n.mdc-chip__icon.mdc-chip__icon--leading:not(.mdc-chip__icon--leading-hidden) {\n width: 20px;\n height: 20px;\n font-size: 20px;\n}\n\n.mdc-chip-trailing-action__icon {\n height: 18px;\n width: 18px;\n font-size: 18px;\n}\n\n.mdc-chip__icon.mdc-chip__icon--trailing {\n width: 18px;\n height: 18px;\n font-size: 18px;\n}\n\n.mdc-chip-trailing-action {\n /* @noflip */\n margin-left: 4px;\n /* @noflip */\n margin-right: -4px;\n}\n[dir=rtl] .mdc-chip-trailing-action, .mdc-chip-trailing-action[dir=rtl] {\n /* @noflip */\n margin-left: -4px;\n /* @noflip */\n margin-right: 4px;\n}\n\n.mdc-chip__icon--trailing {\n /* @noflip */\n margin-left: 4px;\n /* @noflip */\n margin-right: -4px;\n}\n[dir=rtl] .mdc-chip__icon--trailing, .mdc-chip__icon--trailing[dir=rtl] {\n /* @noflip */\n margin-left: -4px;\n /* @noflip */\n margin-right: 4px;\n}\n\n.mdc-chip {\n border-radius: 16px;\n background-color: #e0e0e0;\n color: rgba(0, 0, 0, 0.87);\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n height: 32px;\n /* @alternate */\n position: relative;\n display: inline-flex;\n align-items: center;\n box-sizing: border-box;\n padding: 0 12px;\n border-width: 0;\n outline: none;\n cursor: pointer;\n -webkit-appearance: none;\n}\n.mdc-chip .mdc-chip__ripple {\n border-radius: 16px;\n}\n.mdc-chip:hover {\n color: rgba(0, 0, 0, 0.87);\n}\n.mdc-chip.mdc-chip--selected .mdc-chip__checkmark,\n.mdc-chip .mdc-chip__icon--leading:not(.mdc-chip__icon--leading-hidden) {\n /* @noflip */\n margin-left: -4px;\n /* @noflip */\n margin-right: 4px;\n}\n[dir=rtl] .mdc-chip.mdc-chip--selected .mdc-chip__checkmark, .mdc-chip.mdc-chip--selected .mdc-chip__checkmark[dir=rtl],\n[dir=rtl] .mdc-chip .mdc-chip__icon--leading:not(.mdc-chip__icon--leading-hidden),\n.mdc-chip .mdc-chip__icon--leading:not(.mdc-chip__icon--leading-hidden)[dir=rtl] {\n /* @noflip */\n margin-left: 4px;\n /* @noflip */\n margin-right: -4px;\n}\n.mdc-chip .mdc-elevation-overlay {\n width: 100%;\n height: 100%;\n top: 0;\n /* @noflip */\n left: 0;\n}\n.mdc-chip::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\n.mdc-chip:hover {\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n}\n.mdc-chip .mdc-chip__touch {\n position: absolute;\n top: 50%;\n right: 0;\n height: 48px;\n left: 0;\n transform: translateY(-50%);\n}\n\n.mdc-chip--exit {\n transition: opacity 75ms cubic-bezier(0.4, 0, 0.2, 1), width 150ms cubic-bezier(0, 0, 0.2, 1), padding 100ms linear, margin 100ms linear;\n opacity: 0;\n}\n\n.mdc-chip__overflow {\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.mdc-chip__text {\n white-space: nowrap;\n}\n\n.mdc-chip__icon {\n border-radius: 50%;\n outline: none;\n vertical-align: middle;\n}\n\n.mdc-chip__checkmark {\n height: 20px;\n}\n\n.mdc-chip__checkmark-path {\n transition: stroke-dashoffset 150ms 50ms cubic-bezier(0.4, 0, 0.6, 1);\n stroke-width: 2px;\n stroke-dashoffset: 29.7833385;\n stroke-dasharray: 29.7833385;\n}\n\n.mdc-chip__primary-action:focus {\n outline: none;\n}\n\n.mdc-chip--selected .mdc-chip__checkmark-path {\n stroke-dashoffset: 0;\n}\n\n.mdc-chip__icon--leading,\n.mdc-chip__icon--trailing {\n position: relative;\n}\n\n.mdc-chip-set--choice .mdc-chip.mdc-chip--selected {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-chip-set--choice .mdc-chip.mdc-chip--selected .mdc-chip__icon--leading {\n color: rgba(98, 0, 238, 0.54);\n}\n.mdc-chip-set--choice .mdc-chip.mdc-chip--selected:hover {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-chip-set--choice .mdc-chip .mdc-chip__checkmark-path {\n stroke: #6200ee;\n /* @alternate */\n stroke: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-chip-set--choice .mdc-chip--selected {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n}\n\n.mdc-chip__checkmark-svg {\n width: 0;\n height: 20px;\n transition: width 150ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.mdc-chip--selected .mdc-chip__checkmark-svg {\n width: 20px;\n}\n\n.mdc-chip-set--filter .mdc-chip__icon--leading {\n transition: opacity 75ms linear;\n transition-delay: -50ms;\n opacity: 1;\n}\n.mdc-chip-set--filter .mdc-chip__icon--leading + .mdc-chip__checkmark {\n transition: opacity 75ms linear;\n transition-delay: 80ms;\n opacity: 0;\n}\n.mdc-chip-set--filter .mdc-chip__icon--leading + .mdc-chip__checkmark .mdc-chip__checkmark-svg {\n transition: width 0ms;\n}\n.mdc-chip-set--filter .mdc-chip--selected .mdc-chip__icon--leading {\n opacity: 0;\n}\n.mdc-chip-set--filter .mdc-chip--selected .mdc-chip__icon--leading + .mdc-chip__checkmark {\n width: 0;\n opacity: 1;\n}\n.mdc-chip-set--filter .mdc-chip__icon--leading-hidden.mdc-chip__icon--leading {\n width: 0;\n opacity: 0;\n}\n.mdc-chip-set--filter .mdc-chip__icon--leading-hidden.mdc-chip__icon--leading + .mdc-chip__checkmark {\n width: 20px;\n}\n\n.mdc-chip {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-chip .mdc-chip__ripple::before,\n.mdc-chip .mdc-chip__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-chip .mdc-chip__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-chip .mdc-chip__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-chip.mdc-ripple-upgraded .mdc-chip__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-chip.mdc-ripple-upgraded .mdc-chip__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-chip.mdc-ripple-upgraded--unbounded .mdc-chip__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-chip.mdc-ripple-upgraded--foreground-activation .mdc-chip__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-chip.mdc-ripple-upgraded--foreground-deactivation .mdc-chip__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-chip .mdc-chip__ripple::before,\n.mdc-chip .mdc-chip__ripple::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n.mdc-chip.mdc-ripple-upgraded .mdc-chip__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-chip .mdc-chip__ripple::before, .mdc-chip .mdc-chip__ripple::after {\n background-color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n background-color: var(--mdc-ripple-color, rgba(0, 0, 0, 0.87));\n}\n.mdc-chip:hover .mdc-chip__ripple::before, .mdc-chip.mdc-ripple-surface--hover .mdc-chip__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-chip.mdc-ripple-upgraded--background-focused .mdc-chip__ripple::before, .mdc-chip.mdc-ripple-upgraded:focus-within .mdc-chip__ripple::before, .mdc-chip:not(.mdc-ripple-upgraded):focus .mdc-chip__ripple::before, .mdc-chip:not(.mdc-ripple-upgraded):focus-within .mdc-chip__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-chip:not(.mdc-ripple-upgraded) .mdc-chip__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-chip:not(.mdc-ripple-upgraded):active .mdc-chip__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-chip.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-chip .mdc-chip__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n overflow: hidden;\n}\n\n.mdc-chip-set--choice .mdc-chip.mdc-chip--selected .mdc-chip__ripple::before {\n opacity: 0.08;\n /* @alternate */\n opacity: var(--mdc-ripple-selected-opacity, 0.08);\n}\n.mdc-chip-set--choice .mdc-chip.mdc-chip--selected .mdc-chip__ripple::before, .mdc-chip-set--choice .mdc-chip.mdc-chip--selected .mdc-chip__ripple::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n.mdc-chip-set--choice .mdc-chip.mdc-chip--selected:hover .mdc-chip__ripple::before, .mdc-chip-set--choice .mdc-chip.mdc-chip--selected.mdc-ripple-surface--hover .mdc-chip__ripple::before {\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.12);\n}\n.mdc-chip-set--choice .mdc-chip.mdc-chip--selected.mdc-ripple-upgraded--background-focused .mdc-chip__ripple::before, .mdc-chip-set--choice .mdc-chip.mdc-chip--selected.mdc-ripple-upgraded:focus-within .mdc-chip__ripple::before, .mdc-chip-set--choice .mdc-chip.mdc-chip--selected:not(.mdc-ripple-upgraded):focus .mdc-chip__ripple::before, .mdc-chip-set--choice .mdc-chip.mdc-chip--selected:not(.mdc-ripple-upgraded):focus-within .mdc-chip__ripple::before {\n transition-duration: 75ms;\n opacity: 0.2;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.2);\n}\n.mdc-chip-set--choice .mdc-chip.mdc-chip--selected:not(.mdc-ripple-upgraded) .mdc-chip__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-chip-set--choice .mdc-chip.mdc-chip--selected:not(.mdc-ripple-upgraded):active .mdc-chip__ripple::after {\n transition-duration: 75ms;\n opacity: 0.2;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.2);\n}\n.mdc-chip-set--choice .mdc-chip.mdc-chip--selected.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.2);\n}\n\n@keyframes mdc-chip-entry {\n from {\n transform: scale(0.8);\n opacity: 0.4;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n}\n.mdc-chip-set {\n padding: 4px;\n display: flex;\n flex-wrap: wrap;\n box-sizing: border-box;\n}\n.mdc-chip-set .mdc-chip {\n margin: 4px;\n}\n.mdc-chip-set .mdc-chip--touch {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n\n.mdc-chip-set--input .mdc-chip {\n animation: mdc-chip-entry 100ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.mdc-circular-progress__determinate-circle,\n.mdc-circular-progress__indeterminate-circle-graphic {\n stroke: #6200ee;\n /* @alternate */\n stroke: var(--mdc-theme-primary, #6200ee);\n}\n\n.mdc-circular-progress__determinate-track {\n stroke: transparent;\n}\n\n@keyframes mdc-circular-progress-container-rotate {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes mdc-circular-progress-spinner-layer-rotate {\n 12.5% {\n transform: rotate(135deg);\n }\n 25% {\n transform: rotate(270deg);\n }\n 37.5% {\n transform: rotate(405deg);\n }\n 50% {\n transform: rotate(540deg);\n }\n 62.5% {\n transform: rotate(675deg);\n }\n 75% {\n transform: rotate(810deg);\n }\n 87.5% {\n transform: rotate(945deg);\n }\n 100% {\n transform: rotate(1080deg);\n }\n}\n@keyframes mdc-circular-progress-color-1-fade-in-out {\n from {\n opacity: 0.99;\n }\n 25% {\n opacity: 0.99;\n }\n 26% {\n opacity: 0;\n }\n 89% {\n opacity: 0;\n }\n 90% {\n opacity: 0.99;\n }\n to {\n opacity: 0.99;\n }\n}\n@keyframes mdc-circular-progress-color-2-fade-in-out {\n from {\n opacity: 0;\n }\n 15% {\n opacity: 0;\n }\n 25% {\n opacity: 0.99;\n }\n 50% {\n opacity: 0.99;\n }\n 51% {\n opacity: 0;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes mdc-circular-progress-color-3-fade-in-out {\n from {\n opacity: 0;\n }\n 40% {\n opacity: 0;\n }\n 50% {\n opacity: 0.99;\n }\n 75% {\n opacity: 0.99;\n }\n 76% {\n opacity: 0;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes mdc-circular-progress-color-4-fade-in-out {\n from {\n opacity: 0;\n }\n 65% {\n opacity: 0;\n }\n 75% {\n opacity: 0.99;\n }\n 90% {\n opacity: 0.99;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes mdc-circular-progress-left-spin {\n from {\n transform: rotate(265deg);\n }\n 50% {\n transform: rotate(130deg);\n }\n to {\n transform: rotate(265deg);\n }\n}\n@keyframes mdc-circular-progress-right-spin {\n from {\n transform: rotate(-265deg);\n }\n 50% {\n transform: rotate(-130deg);\n }\n to {\n transform: rotate(-265deg);\n }\n}\n.mdc-circular-progress {\n display: inline-flex;\n position: relative;\n /* @noflip */\n direction: ltr;\n transition: opacity 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n}\n\n.mdc-circular-progress__determinate-container,\n.mdc-circular-progress__indeterminate-circle-graphic,\n.mdc-circular-progress__indeterminate-container,\n.mdc-circular-progress__spinner-layer {\n position: absolute;\n width: 100%;\n height: 100%;\n}\n\n.mdc-circular-progress__determinate-container {\n transform: rotate(-90deg);\n}\n\n.mdc-circular-progress__indeterminate-container {\n font-size: 0;\n letter-spacing: 0;\n white-space: nowrap;\n opacity: 0;\n}\n\n.mdc-circular-progress__determinate-circle-graphic,\n.mdc-circular-progress__indeterminate-circle-graphic {\n fill: transparent;\n}\n\n.mdc-circular-progress__determinate-circle {\n transition: stroke-dashoffset 500ms 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.mdc-circular-progress__gap-patch {\n position: absolute;\n top: 0;\n /* @noflip */\n left: 47.5%;\n box-sizing: border-box;\n width: 5%;\n height: 100%;\n overflow: hidden;\n}\n.mdc-circular-progress__gap-patch .mdc-circular-progress__indeterminate-circle-graphic {\n /* @noflip */\n left: -900%;\n width: 2000%;\n transform: rotate(180deg);\n}\n\n.mdc-circular-progress__circle-clipper {\n display: inline-flex;\n position: relative;\n width: 50%;\n height: 100%;\n overflow: hidden;\n}\n.mdc-circular-progress__circle-clipper .mdc-circular-progress__indeterminate-circle-graphic {\n width: 200%;\n}\n\n.mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic {\n /* @noflip */\n left: -100%;\n}\n\n.mdc-circular-progress--indeterminate .mdc-circular-progress__determinate-container {\n opacity: 0;\n}\n.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container {\n opacity: 1;\n}\n.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container {\n animation: mdc-circular-progress-container-rotate 1568.2352941176ms linear infinite;\n}\n.mdc-circular-progress--indeterminate .mdc-circular-progress__spinner-layer {\n animation: mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;\n}\n.mdc-circular-progress--indeterminate .mdc-circular-progress__color-1 {\n animation: mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdc-circular-progress-color-1-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;\n}\n.mdc-circular-progress--indeterminate .mdc-circular-progress__color-2 {\n animation: mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdc-circular-progress-color-2-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;\n}\n.mdc-circular-progress--indeterminate .mdc-circular-progress__color-3 {\n animation: mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdc-circular-progress-color-3-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;\n}\n.mdc-circular-progress--indeterminate .mdc-circular-progress__color-4 {\n animation: mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdc-circular-progress-color-4-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;\n}\n.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-left .mdc-circular-progress__indeterminate-circle-graphic {\n animation: mdc-circular-progress-left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;\n}\n.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic {\n animation: mdc-circular-progress-right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;\n}\n\n.mdc-circular-progress--closed {\n opacity: 0;\n}\n\n.mdc-floating-label {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle1-font-size, 1rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle1-font-weight, 400);\n letter-spacing: 0.009375em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle1-text-transform, inherit);\n position: absolute;\n /* @noflip */\n left: 0;\n /* @noflip */\n transform-origin: left top;\n line-height: 1.15rem;\n text-align: left;\n text-overflow: ellipsis;\n white-space: nowrap;\n cursor: text;\n overflow: hidden;\n /* @alternate */\n will-change: transform;\n transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1), color 150ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n[dir=rtl] .mdc-floating-label, .mdc-floating-label[dir=rtl] {\n /* @noflip */\n right: 0;\n /* @noflip */\n left: auto;\n /* @noflip */\n transform-origin: right top;\n /* @noflip */\n text-align: right;\n}\n\n.mdc-floating-label--float-above {\n cursor: auto;\n}\n\n.mdc-floating-label--required::after {\n /* @noflip */\n margin-left: 1px;\n /* @noflip */\n margin-right: 0px;\n content: \"*\";\n}\n[dir=rtl] .mdc-floating-label--required::after, .mdc-floating-label--required[dir=rtl]::after {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 1px;\n}\n\n.mdc-floating-label--float-above {\n transform: translateY(-106%) scale(0.75);\n}\n\n.mdc-floating-label--shake {\n animation: mdc-floating-label-shake-float-above-standard 250ms 1;\n}\n\n@keyframes mdc-floating-label-shake-float-above-standard {\n 0% {\n transform: translateX(calc(0 - 0%)) translateY(-106%) scale(0.75);\n }\n 33% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(calc(4% - 0%)) translateY(-106%) scale(0.75);\n }\n 66% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(calc(-4% - 0%)) translateY(-106%) scale(0.75);\n }\n 100% {\n transform: translateX(calc(0 - 0%)) translateY(-106%) scale(0.75);\n }\n}\n.mdc-line-ripple::before, .mdc-line-ripple::after {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n border-bottom-style: solid;\n content: \"\";\n}\n.mdc-line-ripple::before {\n border-bottom-width: 1px;\n z-index: 1;\n}\n.mdc-line-ripple::after {\n transform: scaleX(0);\n border-bottom-width: 2px;\n opacity: 0;\n z-index: 2;\n}\n.mdc-line-ripple::after {\n transition: transform 180ms cubic-bezier(0.4, 0, 0.2, 1), opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.mdc-line-ripple--active::after {\n transform: scaleX(1);\n opacity: 1;\n}\n\n.mdc-line-ripple--deactivating::after {\n opacity: 0;\n}\n\n.mdc-notched-outline {\n display: flex;\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n height: 100%;\n /* @noflip */\n text-align: left;\n pointer-events: none;\n}\n[dir=rtl] .mdc-notched-outline, .mdc-notched-outline[dir=rtl] {\n /* @noflip */\n text-align: right;\n}\n.mdc-notched-outline__leading, .mdc-notched-outline__notch, .mdc-notched-outline__trailing {\n box-sizing: border-box;\n height: 100%;\n border-top: 1px solid;\n border-bottom: 1px solid;\n pointer-events: none;\n}\n.mdc-notched-outline__leading {\n /* @noflip */\n border-left: 1px solid;\n /* @noflip */\n border-right: none;\n width: 12px;\n}\n[dir=rtl] .mdc-notched-outline__leading, .mdc-notched-outline__leading[dir=rtl] {\n /* @noflip */\n border-left: none;\n /* @noflip */\n border-right: 1px solid;\n}\n.mdc-notched-outline__trailing {\n /* @noflip */\n border-left: none;\n /* @noflip */\n border-right: 1px solid;\n flex-grow: 1;\n}\n[dir=rtl] .mdc-notched-outline__trailing, .mdc-notched-outline__trailing[dir=rtl] {\n /* @noflip */\n border-left: 1px solid;\n /* @noflip */\n border-right: none;\n}\n.mdc-notched-outline__notch {\n flex: 0 0 auto;\n width: auto;\n max-width: calc(100% - 12px * 2);\n}\n.mdc-notched-outline .mdc-floating-label {\n display: inline-block;\n position: relative;\n max-width: 100%;\n}\n.mdc-notched-outline .mdc-floating-label--float-above {\n text-overflow: clip;\n}\n.mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n max-width: calc(100% / 0.75);\n}\n\n.mdc-notched-outline--notched .mdc-notched-outline__notch {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 8px;\n border-top: none;\n}\n[dir=rtl] .mdc-notched-outline--notched .mdc-notched-outline__notch, .mdc-notched-outline--notched .mdc-notched-outline__notch[dir=rtl] {\n /* @noflip */\n padding-left: 8px;\n /* @noflip */\n padding-right: 0;\n}\n\n.mdc-notched-outline--no-label .mdc-notched-outline__notch {\n display: none;\n}\n\n.mdc-select {\n display: inline-flex;\n position: relative;\n}\n.mdc-select:not(.mdc-select--disabled) .mdc-select__selected-text {\n color: rgba(0, 0, 0, 0.87);\n}\n.mdc-select.mdc-select--disabled .mdc-select__selected-text {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-select:not(.mdc-select--disabled) .mdc-floating-label {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-select:not(.mdc-select--disabled).mdc-select--focused .mdc-floating-label {\n color: rgba(98, 0, 238, 0.87);\n}\n.mdc-select.mdc-select--disabled .mdc-floating-label {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-select:not(.mdc-select--disabled) .mdc-select__dropdown-icon {\n fill: rgba(0, 0, 0, 0.54);\n}\n.mdc-select:not(.mdc-select--disabled).mdc-select--focused .mdc-select__dropdown-icon {\n fill: #6200ee;\n /* @alternate */\n fill: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-select.mdc-select--disabled .mdc-select__dropdown-icon {\n fill: rgba(0, 0, 0, 0.38);\n}\n.mdc-select:not(.mdc-select--disabled) + .mdc-select-helper-text {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-select.mdc-select--disabled + .mdc-select-helper-text {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-select:not(.mdc-select--disabled) .mdc-select__icon {\n color: rgba(0, 0, 0, 0.54);\n}\n.mdc-select.mdc-select--disabled .mdc-select__icon {\n color: rgba(0, 0, 0, 0.38);\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-select.mdc-select--disabled .mdc-select__selected-text {\n color: GrayText;\n }\n .mdc-select.mdc-select--disabled .mdc-select__dropdown-icon {\n fill: red;\n }\n .mdc-select.mdc-select--disabled .mdc-floating-label {\n color: GrayText;\n }\n .mdc-select.mdc-select--disabled .mdc-line-ripple::before {\n border-bottom-color: GrayText;\n }\n .mdc-select.mdc-select--disabled .mdc-notched-outline__leading,\n.mdc-select.mdc-select--disabled .mdc-notched-outline__notch,\n.mdc-select.mdc-select--disabled .mdc-notched-outline__trailing {\n border-color: GrayText;\n }\n .mdc-select.mdc-select--disabled .mdc-select__icon {\n color: GrayText;\n }\n .mdc-select.mdc-select--disabled + .mdc-select-helper-text {\n color: GrayText;\n }\n}\n.mdc-select .mdc-floating-label {\n top: 50%;\n transform: translateY(-50%);\n pointer-events: none;\n}\n.mdc-select .mdc-select__anchor {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-select .mdc-select__anchor, .mdc-select .mdc-select__anchor[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-select.mdc-select--with-leading-icon .mdc-select__anchor {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-select.mdc-select--with-leading-icon .mdc-select__anchor, .mdc-select.mdc-select--with-leading-icon .mdc-select__anchor[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-select .mdc-select__icon {\n width: 24px;\n height: 24px;\n font-size: 24px;\n}\n.mdc-select .mdc-select__dropdown-icon {\n width: 24px;\n height: 24px;\n}\n.mdc-select .mdc-select__menu .mdc-list-item {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n}\n[dir=rtl] .mdc-select .mdc-select__menu .mdc-list-item, .mdc-select .mdc-select__menu .mdc-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-select .mdc-select__menu .mdc-list-item__graphic {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 12px;\n}\n[dir=rtl] .mdc-select .mdc-select__menu .mdc-list-item__graphic, .mdc-select .mdc-select__menu .mdc-list-item__graphic[dir=rtl] {\n /* @noflip */\n margin-left: 12px;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-select__dropdown-icon {\n /* @noflip */\n margin-left: 12px;\n /* @noflip */\n margin-right: 12px;\n display: inline-flex;\n position: relative;\n align-self: center;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n pointer-events: none;\n}\n.mdc-select__dropdown-icon .mdc-select__dropdown-icon-active,\n.mdc-select__dropdown-icon .mdc-select__dropdown-icon-inactive {\n position: absolute;\n top: 0;\n left: 0;\n}\n.mdc-select__dropdown-icon .mdc-select__dropdown-icon-graphic {\n width: 41.6666666667%;\n height: 20.8333333333%;\n}\n.mdc-select__dropdown-icon .mdc-select__dropdown-icon-inactive {\n opacity: 1;\n transition: opacity 75ms linear 75ms;\n}\n.mdc-select__dropdown-icon .mdc-select__dropdown-icon-active {\n opacity: 0;\n transition: opacity 75ms linear;\n}\n[dir=rtl] .mdc-select__dropdown-icon, .mdc-select__dropdown-icon[dir=rtl] {\n /* @noflip */\n margin-left: 12px;\n /* @noflip */\n margin-right: 12px;\n}\n.mdc-select--activated .mdc-select__dropdown-icon .mdc-select__dropdown-icon-inactive {\n opacity: 0;\n transition: opacity 49.5ms linear;\n}\n.mdc-select--activated .mdc-select__dropdown-icon .mdc-select__dropdown-icon-active {\n opacity: 1;\n transition: opacity 100.5ms linear 49.5ms;\n}\n\n.mdc-select__anchor {\n width: 200px;\n min-width: 0;\n flex: 1 1 auto;\n position: relative;\n box-sizing: border-box;\n overflow: hidden;\n outline: none;\n cursor: pointer;\n}\n.mdc-select__anchor .mdc-floating-label--float-above {\n transform: translateY(-106%) scale(0.75);\n}\n\n.mdc-select__selected-text-container {\n display: flex;\n appearance: none;\n pointer-events: none;\n box-sizing: border-box;\n width: auto;\n min-width: 0;\n flex-grow: 1;\n height: 28px;\n border: none;\n outline: none;\n padding: 0;\n background-color: transparent;\n color: inherit;\n}\n\n.mdc-select__selected-text {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle1-font-size, 1rem);\n line-height: 1.75rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle1-line-height, 1.75rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle1-font-weight, 400);\n letter-spacing: 0.009375em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle1-text-transform, inherit);\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n display: block;\n width: 100%;\n /* @noflip */\n text-align: left;\n}\n[dir=rtl] .mdc-select__selected-text, .mdc-select__selected-text[dir=rtl] {\n /* @noflip */\n text-align: right;\n}\n\n.mdc-select--invalid:not(.mdc-select--disabled) .mdc-floating-label {\n color: #b00020;\n /* @alternate */\n color: var(--mdc-theme-error, #b00020);\n}\n.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--focused .mdc-floating-label {\n color: #b00020;\n /* @alternate */\n color: var(--mdc-theme-error, #b00020);\n}\n.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--invalid + .mdc-select-helper-text--validation-msg {\n color: #b00020;\n /* @alternate */\n color: var(--mdc-theme-error, #b00020);\n}\n.mdc-select--invalid:not(.mdc-select--disabled) .mdc-select__dropdown-icon {\n fill: #b00020;\n /* @alternate */\n fill: var(--mdc-theme-error, #b00020);\n}\n.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--focused .mdc-select__dropdown-icon {\n fill: #b00020;\n /* @alternate */\n fill: var(--mdc-theme-error, #b00020);\n}\n.mdc-select--disabled {\n cursor: default;\n pointer-events: none;\n}\n\n.mdc-select--with-leading-icon .mdc-select__menu .mdc-list-item {\n /* @noflip */\n padding-left: 12px;\n /* @noflip */\n padding-right: 12px;\n}\n[dir=rtl] .mdc-select--with-leading-icon .mdc-select__menu .mdc-list-item, .mdc-select--with-leading-icon .mdc-select__menu .mdc-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 12px;\n /* @noflip */\n padding-right: 12px;\n}\n\n.mdc-select__menu .mdc-list .mdc-select__icon {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 0;\n}\n[dir=rtl] .mdc-select__menu .mdc-list .mdc-select__icon, .mdc-select__menu .mdc-list .mdc-select__icon[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-select__menu .mdc-list .mdc-list-item--selected,\n.mdc-select__menu .mdc-list .mdc-list-item--activated {\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n}\n.mdc-select__menu .mdc-list .mdc-list-item--selected .mdc-list-item__graphic,\n.mdc-select__menu .mdc-list .mdc-list-item--activated .mdc-list-item__graphic {\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n}\n\n.mdc-select--filled .mdc-select__anchor {\n height: 56px;\n display: flex;\n align-items: baseline;\n}\n.mdc-select--filled .mdc-select__anchor::before {\n display: inline-block;\n width: 0;\n height: 40px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-select--filled.mdc-select--no-label .mdc-select__anchor .mdc-select__selected-text::before {\n content: \"​\";\n}\n.mdc-select--filled.mdc-select--no-label .mdc-select__anchor .mdc-select__selected-text-container {\n height: 100%;\n display: inline-flex;\n align-items: center;\n}\n.mdc-select--filled.mdc-select--no-label .mdc-select__anchor::before {\n display: none;\n}\n.mdc-select--filled .mdc-select__anchor {\n border-top-left-radius: 4px;\n /* @alternate */\n border-top-left-radius: var(--mdc-shape-small, 4px);\n border-top-right-radius: 4px;\n /* @alternate */\n border-top-right-radius: var(--mdc-shape-small, 4px);\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.mdc-select--filled:not(.mdc-select--disabled) .mdc-select__anchor {\n background-color: whitesmoke;\n}\n.mdc-select--filled.mdc-select--disabled .mdc-select__anchor {\n background-color: #fafafa;\n}\n.mdc-select--filled:not(.mdc-select--disabled) .mdc-line-ripple::before {\n border-bottom-color: rgba(0, 0, 0, 0.42);\n}\n.mdc-select--filled:not(.mdc-select--disabled):hover .mdc-line-ripple::before {\n border-bottom-color: rgba(0, 0, 0, 0.87);\n}\n.mdc-select--filled:not(.mdc-select--disabled) .mdc-line-ripple::after {\n border-bottom-color: #6200ee;\n /* @alternate */\n border-bottom-color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-select--filled.mdc-select--disabled .mdc-line-ripple::before {\n border-bottom-color: rgba(0, 0, 0, 0.06);\n}\n.mdc-select--filled .mdc-floating-label {\n max-width: calc(100% - 64px);\n}\n.mdc-select--filled .mdc-floating-label--float-above {\n max-width: calc(100% / 0.75 - 64px / 0.75);\n}\n.mdc-select--filled .mdc-menu-surface--is-open-below {\n border-top-left-radius: 0px;\n border-top-right-radius: 0px;\n}\n.mdc-select--filled.mdc-select--focused.mdc-line-ripple::after {\n transform: scale(1, 2);\n opacity: 1;\n}\n.mdc-select--filled .mdc-floating-label {\n /* @noflip */\n left: 16px;\n /* @noflip */\n right: initial;\n}\n[dir=rtl] .mdc-select--filled .mdc-floating-label, .mdc-select--filled .mdc-floating-label[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 16px;\n}\n.mdc-select--filled.mdc-select--with-leading-icon .mdc-floating-label {\n /* @noflip */\n left: 48px;\n /* @noflip */\n right: initial;\n}\n[dir=rtl] .mdc-select--filled.mdc-select--with-leading-icon .mdc-floating-label, .mdc-select--filled.mdc-select--with-leading-icon .mdc-floating-label[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 48px;\n}\n.mdc-select--filled.mdc-select--with-leading-icon .mdc-floating-label {\n max-width: calc(100% - 96px);\n}\n.mdc-select--filled.mdc-select--with-leading-icon .mdc-floating-label--float-above {\n max-width: calc(100% / 0.75 - 96px / 0.75);\n}\n\n.mdc-select--invalid:not(.mdc-select--disabled) .mdc-line-ripple::before {\n border-bottom-color: #b00020;\n /* @alternate */\n border-bottom-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-select--invalid:not(.mdc-select--disabled):hover .mdc-line-ripple::before {\n border-bottom-color: #b00020;\n /* @alternate */\n border-bottom-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-select--invalid:not(.mdc-select--disabled) .mdc-line-ripple::after {\n border-bottom-color: #b00020;\n /* @alternate */\n border-bottom-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-select--outlined {\n border: none;\n}\n.mdc-select--outlined .mdc-select__anchor {\n height: 56px;\n}\n.mdc-select--outlined .mdc-select__anchor .mdc-floating-label--float-above {\n transform: translateY(-37.25px) scale(1);\n}\n.mdc-select--outlined .mdc-select__anchor .mdc-floating-label--float-above {\n font-size: 0.75rem;\n}\n.mdc-select--outlined .mdc-select__anchor.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-select--outlined .mdc-select__anchor .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n transform: translateY(-34.75px) scale(0.75);\n}\n.mdc-select--outlined .mdc-select__anchor.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-select--outlined .mdc-select__anchor .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n font-size: 1rem;\n}\n.mdc-select--outlined .mdc-select__anchor .mdc-floating-label--shake {\n animation: mdc-floating-label-shake-float-above-select-outlined-56px 250ms 1;\n}\n@keyframes mdc-floating-label-shake-float-above-select-outlined-56px {\n 0% {\n transform: translateX(calc(0 - 0%)) translateY(-34.75px) scale(0.75);\n }\n 33% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(calc(4% - 0%)) translateY(-34.75px) scale(0.75);\n }\n 66% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(calc(-4% - 0%)) translateY(-34.75px) scale(0.75);\n }\n 100% {\n transform: translateX(calc(0 - 0%)) translateY(-34.75px) scale(0.75);\n }\n}\n.mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__leading {\n /* @noflip */\n border-top-left-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-top-left-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-top-right-radius: 0;\n /* @noflip */\n border-bottom-right-radius: 0;\n /* @noflip */\n border-bottom-left-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-bottom-left-radius: var(--mdc-shape-small, 4px);\n}\n[dir=rtl] .mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__leading, .mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__leading[dir=rtl] {\n /* @noflip */\n border-top-left-radius: 0;\n /* @noflip */\n border-top-right-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-top-right-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-bottom-right-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-bottom-right-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-bottom-left-radius: 0;\n}\n@supports (top: max(0%)) {\n .mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__leading {\n width: max(12px, var(--mdc-shape-small, 4px));\n }\n}\n@supports (top: max(0%)) {\n .mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__notch {\n max-width: calc(100% - max(12px, var(--mdc-shape-small, 4px)) * 2);\n }\n}\n.mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__trailing {\n /* @noflip */\n border-top-left-radius: 0;\n /* @noflip */\n border-top-right-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-top-right-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-bottom-right-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-bottom-right-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-bottom-left-radius: 0;\n}\n[dir=rtl] .mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__trailing, .mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__trailing[dir=rtl] {\n /* @noflip */\n border-top-left-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-top-left-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-top-right-radius: 0;\n /* @noflip */\n border-bottom-right-radius: 0;\n /* @noflip */\n border-bottom-left-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-bottom-left-radius: var(--mdc-shape-small, 4px);\n}\n@supports (top: max(0%)) {\n .mdc-select--outlined .mdc-select__anchor {\n /* @noflip */\n padding-left: max(16px, calc(var(--mdc-shape-small, 4px) + 4px));\n }\n}\n[dir=rtl] .mdc-select--outlined .mdc-select__anchor, .mdc-select--outlined .mdc-select__anchor[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n}\n@supports (top: max(0%)) {\n [dir=rtl] .mdc-select--outlined .mdc-select__anchor, .mdc-select--outlined .mdc-select__anchor[dir=rtl] {\n /* @noflip */\n padding-right: max(16px, calc(var(--mdc-shape-small, 4px) + 4px));\n }\n}\n@supports (top: max(0%)) {\n .mdc-select--outlined + .mdc-select-helper-text {\n /* @noflip */\n margin-left: max(16px, calc(var(--mdc-shape-small, 4px) + 4px));\n }\n}\n[dir=rtl] .mdc-select--outlined + .mdc-select-helper-text, .mdc-select--outlined + .mdc-select-helper-text[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n}\n@supports (top: max(0%)) {\n [dir=rtl] .mdc-select--outlined + .mdc-select-helper-text, .mdc-select--outlined + .mdc-select-helper-text[dir=rtl] {\n /* @noflip */\n margin-right: max(16px, calc(var(--mdc-shape-small, 4px) + 4px));\n }\n}\n.mdc-select--outlined:not(.mdc-select--disabled) .mdc-select__anchor {\n background-color: transparent;\n}\n.mdc-select--outlined.mdc-select--disabled .mdc-select__anchor {\n background-color: transparent;\n}\n.mdc-select--outlined:not(.mdc-select--disabled) .mdc-notched-outline__leading,\n.mdc-select--outlined:not(.mdc-select--disabled) .mdc-notched-outline__notch,\n.mdc-select--outlined:not(.mdc-select--disabled) .mdc-notched-outline__trailing {\n border-color: rgba(0, 0, 0, 0.38);\n}\n.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__anchor:hover .mdc-notched-outline .mdc-notched-outline__leading,\n.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__anchor:hover .mdc-notched-outline .mdc-notched-outline__notch,\n.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__anchor:hover .mdc-notched-outline .mdc-notched-outline__trailing {\n border-color: rgba(0, 0, 0, 0.87);\n}\n.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__leading,\n.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__notch,\n.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__trailing {\n border-width: 2px;\n}\n.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__leading,\n.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__notch,\n.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__trailing {\n border-color: #6200ee;\n /* @alternate */\n border-color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-select--outlined.mdc-select--disabled .mdc-notched-outline__leading,\n.mdc-select--outlined.mdc-select--disabled .mdc-notched-outline__notch,\n.mdc-select--outlined.mdc-select--disabled .mdc-notched-outline__trailing {\n border-color: rgba(0, 0, 0, 0.06);\n}\n.mdc-select--outlined .mdc-select__anchor :not(.mdc-notched-outline--notched) .mdc-notched-outline__notch {\n max-width: calc(100% - 60px);\n}\n.mdc-select--outlined .mdc-select__anchor {\n display: flex;\n align-items: baseline;\n overflow: visible;\n}\n.mdc-select--outlined .mdc-select__anchor .mdc-floating-label--shake {\n animation: mdc-floating-label-shake-float-above-select-outlined 250ms 1;\n}\n.mdc-select--outlined .mdc-select__anchor .mdc-floating-label--float-above {\n transform: translateY(-37.25px) scale(1);\n}\n.mdc-select--outlined .mdc-select__anchor .mdc-floating-label--float-above {\n font-size: 0.75rem;\n}\n.mdc-select--outlined .mdc-select__anchor.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-select--outlined .mdc-select__anchor .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n transform: translateY(-34.75px) scale(0.75);\n}\n.mdc-select--outlined .mdc-select__anchor.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-select--outlined .mdc-select__anchor .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n font-size: 1rem;\n}\n.mdc-select--outlined .mdc-select__anchor .mdc-notched-outline--notched .mdc-notched-outline__notch {\n padding-top: 1px;\n}\n.mdc-select--outlined .mdc-select__anchor .mdc-select__selected-text::before {\n content: \"​\";\n}\n.mdc-select--outlined .mdc-select__anchor .mdc-select__selected-text-container {\n height: 100%;\n display: inline-flex;\n align-items: center;\n}\n.mdc-select--outlined .mdc-select__anchor::before {\n display: none;\n}\n.mdc-select--outlined .mdc-select__selected-text-container {\n display: flex;\n border: none;\n z-index: 1;\n background-color: transparent;\n}\n.mdc-select--outlined .mdc-select__icon {\n z-index: 2;\n}\n.mdc-select--outlined .mdc-floating-label {\n line-height: 1.15rem;\n /* @noflip */\n left: 4px;\n /* @noflip */\n right: initial;\n}\n[dir=rtl] .mdc-select--outlined .mdc-floating-label, .mdc-select--outlined .mdc-floating-label[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 4px;\n}\n.mdc-select--outlined.mdc-select--focused .mdc-notched-outline--notched .mdc-notched-outline__notch {\n padding-top: 2px;\n}\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled) .mdc-notched-outline__leading,\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled) .mdc-notched-outline__notch,\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled) .mdc-notched-outline__trailing {\n border-color: #b00020;\n /* @alternate */\n border-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__anchor:hover .mdc-notched-outline .mdc-notched-outline__leading,\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__anchor:hover .mdc-notched-outline .mdc-notched-outline__notch,\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__anchor:hover .mdc-notched-outline .mdc-notched-outline__trailing {\n border-color: #b00020;\n /* @alternate */\n border-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__leading,\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__notch,\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__trailing {\n border-width: 2px;\n}\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__leading,\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__notch,\n.mdc-select--outlined.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__trailing {\n border-color: #b00020;\n /* @alternate */\n border-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label {\n /* @noflip */\n left: 36px;\n /* @noflip */\n right: initial;\n}\n[dir=rtl] .mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label, .mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 36px;\n}\n.mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label--float-above {\n transform: translateY(-37.25px) translateX(-32px) scale(1);\n}\n[dir=rtl] .mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label--float-above, .mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label--float-above[dir=rtl] {\n transform: translateY(-37.25px) translateX(32px) scale(1);\n}\n.mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label--float-above {\n font-size: 0.75rem;\n}\n.mdc-select--outlined.mdc-select--with-leading-icon.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-select--outlined.mdc-select--with-leading-icon .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n transform: translateY(-34.75px) translateX(-32px) scale(0.75);\n}\n[dir=rtl] .mdc-select--outlined.mdc-select--with-leading-icon.mdc-notched-outline--upgraded .mdc-floating-label--float-above, .mdc-select--outlined.mdc-select--with-leading-icon.mdc-notched-outline--upgraded .mdc-floating-label--float-above[dir=rtl],\n[dir=rtl] .mdc-select--outlined.mdc-select--with-leading-icon .mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-select--outlined.mdc-select--with-leading-icon .mdc-notched-outline--upgraded .mdc-floating-label--float-above[dir=rtl] {\n transform: translateY(-34.75px) translateX(32px) scale(0.75);\n}\n.mdc-select--outlined.mdc-select--with-leading-icon.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-select--outlined.mdc-select--with-leading-icon .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n font-size: 1rem;\n}\n.mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label--shake {\n animation: mdc-floating-label-shake-float-above-select-outlined-leading-icon-56px 250ms 1;\n}\n@keyframes mdc-floating-label-shake-float-above-select-outlined-leading-icon-56px {\n 0% {\n transform: translateX(calc(0 - 32px)) translateY(-34.75px) scale(0.75);\n }\n 33% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(calc(4% - 32px)) translateY(-34.75px) scale(0.75);\n }\n 66% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(calc(-4% - 32px)) translateY(-34.75px) scale(0.75);\n }\n 100% {\n transform: translateX(calc(0 - 32px)) translateY(-34.75px) scale(0.75);\n }\n}\n[dir=rtl] .mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label--shake, .mdc-select--outlined.mdc-select--with-leading-icon[dir=rtl] .mdc-floating-label--shake {\n animation: mdc-floating-label-shake-float-above-select-outlined-leading-icon-56px 250ms 1;\n}\n@keyframes mdc-floating-label-shake-float-above-select-outlined-leading-icon-56px-rtl {\n 0% {\n transform: translateX(calc(0 - -32px)) translateY(-34.75px) scale(0.75);\n }\n 33% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(calc(4% - -32px)) translateY(-34.75px) scale(0.75);\n }\n 66% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(calc(-4% - -32px)) translateY(-34.75px) scale(0.75);\n }\n 100% {\n transform: translateX(calc(0 - -32px)) translateY(-34.75px) scale(0.75);\n }\n}\n.mdc-select--outlined.mdc-select--with-leading-icon .mdc-select__anchor :not(.mdc-notched-outline--notched) .mdc-notched-outline__notch {\n max-width: calc(100% - 96px);\n}\n.mdc-select--outlined .mdc-menu-surface {\n margin-bottom: 8px;\n}\n.mdc-select--outlined.mdc-select--no-label .mdc-menu-surface,\n.mdc-select--outlined .mdc-menu-surface--is-open-below {\n margin-bottom: 0;\n}\n\n.mdc-select__anchor {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-select__anchor .mdc-select__ripple::before,\n.mdc-select__anchor .mdc-select__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-select__anchor .mdc-select__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-select__anchor .mdc-select__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-select__anchor.mdc-ripple-upgraded .mdc-select__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-select__anchor.mdc-ripple-upgraded .mdc-select__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-select__anchor.mdc-ripple-upgraded--unbounded .mdc-select__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-select__anchor.mdc-ripple-upgraded--foreground-activation .mdc-select__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-select__anchor.mdc-ripple-upgraded--foreground-deactivation .mdc-select__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-select__anchor .mdc-select__ripple::before,\n.mdc-select__anchor .mdc-select__ripple::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n.mdc-select__anchor.mdc-ripple-upgraded .mdc-select__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-select__anchor .mdc-select__ripple::before,\n.mdc-select__anchor .mdc-select__ripple::after {\n background-color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n background-color: var(--mdc-ripple-color, rgba(0, 0, 0, 0.87));\n}\n.mdc-select__anchor:hover .mdc-select__ripple::before, .mdc-select__anchor.mdc-ripple-surface--hover .mdc-select__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-select__anchor.mdc-ripple-upgraded--background-focused .mdc-select__ripple::before, .mdc-select__anchor:not(.mdc-ripple-upgraded):focus .mdc-select__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-select__anchor .mdc-select__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n}\n\n.mdc-select__menu .mdc-list .mdc-list-item--selected .mdc-list-item__ripple::before, .mdc-select__menu .mdc-list .mdc-list-item--selected .mdc-list-item__ripple::after {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-on-surface, #000));\n}\n.mdc-select__menu .mdc-list .mdc-list-item--selected:hover .mdc-list-item__ripple::before, .mdc-select__menu .mdc-list .mdc-list-item--selected.mdc-ripple-surface--hover .mdc-list-item__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-select__menu .mdc-list .mdc-list-item--selected.mdc-ripple-upgraded--background-focused .mdc-list-item__ripple::before, .mdc-select__menu .mdc-list .mdc-list-item--selected:not(.mdc-ripple-upgraded):focus .mdc-list-item__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-select__menu .mdc-list .mdc-list-item--selected:not(.mdc-ripple-upgraded) .mdc-list-item__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-select__menu .mdc-list .mdc-list-item--selected:not(.mdc-ripple-upgraded):active .mdc-list-item__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-select__menu .mdc-list .mdc-list-item--selected.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n\n.mdc-select-helper-text {\n margin: 0;\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.75rem;\n /* @alternate */\n font-size: var(--mdc-typography-caption-font-size, 0.75rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-caption-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-caption-font-weight, 400);\n letter-spacing: 0.0333333333em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-caption-letter-spacing, 0.0333333333em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-caption-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-caption-text-transform, inherit);\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n[dir=rtl] .mdc-select-helper-text, .mdc-select-helper-text[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-select-helper-text::before {\n display: inline-block;\n width: 0;\n height: 16px;\n content: \"\";\n vertical-align: 0;\n}\n\n.mdc-select-helper-text--validation-msg {\n opacity: 0;\n transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.mdc-select--invalid + .mdc-select-helper-text--validation-msg,\n.mdc-select-helper-text--validation-msg-persistent {\n opacity: 1;\n}\n\n.mdc-select--with-leading-icon .mdc-select__icon {\n display: inline-block;\n box-sizing: border-box;\n border: none;\n text-decoration: none;\n cursor: pointer;\n user-select: none;\n flex-shrink: 0;\n align-self: center;\n background-color: transparent;\n fill: currentColor;\n}\n.mdc-select--with-leading-icon .mdc-select__icon {\n /* @noflip */\n margin-left: 12px;\n /* @noflip */\n margin-right: 12px;\n}\n[dir=rtl] .mdc-select--with-leading-icon .mdc-select__icon, .mdc-select--with-leading-icon .mdc-select__icon[dir=rtl] {\n /* @noflip */\n margin-left: 12px;\n /* @noflip */\n margin-right: 12px;\n}\n\n.mdc-select__icon:not([tabindex]),\n.mdc-select__icon[tabindex=\"-1\"] {\n cursor: default;\n pointer-events: none;\n}\n\n.mdc-data-table__content {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n}\n\n.mdc-data-table {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-medium, 4px);\n border-width: 1px;\n border-style: solid;\n border-color: rgba(0, 0, 0, 0.12);\n -webkit-overflow-scrolling: touch;\n display: inline-flex;\n flex-direction: column;\n box-sizing: border-box;\n position: relative;\n}\n.mdc-data-table .mdc-data-table__header-cell:first-child {\n border-top-left-radius: 4px;\n /* @alternate */\n border-top-left-radius: var(--mdc-shape-medium, 4px);\n}\n[dir=rtl] .mdc-data-table .mdc-data-table__header-cell:first-child, .mdc-data-table .mdc-data-table__header-cell:first-child[dir=rtl] {\n border-top-right-radius: 4px;\n /* @alternate */\n border-top-right-radius: var(--mdc-shape-medium, 4px);\n border-top-left-radius: 0;\n}\n.mdc-data-table .mdc-data-table__header-cell:last-child {\n border-top-right-radius: 4px;\n /* @alternate */\n border-top-right-radius: var(--mdc-shape-medium, 4px);\n}\n[dir=rtl] .mdc-data-table .mdc-data-table__header-cell:last-child, .mdc-data-table .mdc-data-table__header-cell:last-child[dir=rtl] {\n border-top-left-radius: 4px;\n /* @alternate */\n border-top-left-radius: var(--mdc-shape-medium, 4px);\n border-top-right-radius: 0;\n}\n\n.mdc-data-table__row {\n background-color: inherit;\n}\n\n.mdc-data-table__header-cell {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n}\n\n.mdc-data-table__row--selected {\n background-color: rgba(98, 0, 238, 0.04);\n}\n\n.mdc-data-table__header-cell:after {\n border-bottom-color: rgba(0, 0, 0, 0.12);\n}\n\n.mdc-data-table__pagination-rows-per-page-select:not(.mdc-select--disabled) .mdc-notched-outline__leading,\n.mdc-data-table__pagination-rows-per-page-select:not(.mdc-select--disabled) .mdc-notched-outline__notch,\n.mdc-data-table__pagination-rows-per-page-select:not(.mdc-select--disabled) .mdc-notched-outline__trailing {\n border-color: rgba(0, 0, 0, 0.12);\n}\n.mdc-data-table__row,\n.mdc-data-table__pagination {\n border-top-color: rgba(0, 0, 0, 0.12);\n}\n\n.mdc-data-table__header-cell:after {\n border-bottom-style: solid;\n border-bottom-width: 1px;\n}\n\n.mdc-data-table__row,\n.mdc-data-table__pagination {\n border-top-width: 1px;\n border-top-style: solid;\n}\n\n.mdc-data-table__row:not(.mdc-data-table__row--selected):hover {\n background-color: rgba(0, 0, 0, 0.04);\n}\n\n.mdc-data-table__header-cell {\n color: rgba(0, 0, 0, 0.87);\n}\n\n.mdc-data-table__pagination-total,\n.mdc-data-table__pagination-rows-per-page-label,\n.mdc-data-table__cell {\n color: rgba(0, 0, 0, 0.87);\n}\n\n.mdc-data-table__cell {\n height: 52px;\n}\n\n.mdc-data-table__pagination {\n min-height: 52px;\n}\n\n.mdc-data-table__header-cell {\n height: 56px;\n}\n\n.mdc-data-table__cell,\n.mdc-data-table__header-cell {\n padding-right: 16px;\n padding-left: 16px;\n}\n\n.mdc-data-table__header-cell--checkbox,\n.mdc-data-table__cell--checkbox {\n /* @noflip */\n padding-left: 4px;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-data-table__header-cell--checkbox, .mdc-data-table__header-cell--checkbox[dir=rtl],\n[dir=rtl] .mdc-data-table__cell--checkbox,\n.mdc-data-table__cell--checkbox[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 4px;\n}\n\n.mdc-data-table__sort-icon-button {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-data-table__sort-icon-button::before, .mdc-data-table__sort-icon-button::after {\n background-color: rgba(0, 0, 0, 0.6);\n /* @alternate */\n background-color: var(--mdc-ripple-color, rgba(0, 0, 0, 0.6));\n}\n.mdc-data-table__sort-icon-button:hover::before, .mdc-data-table__sort-icon-button.mdc-ripple-surface--hover::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-data-table__sort-icon-button.mdc-ripple-upgraded--background-focused::before, .mdc-data-table__sort-icon-button:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-data-table__sort-icon-button:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-data-table__sort-icon-button:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-data-table__sort-icon-button.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n\n.mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button {\n color: rgba(0, 0, 0, 0.87);\n}\n.mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button::before, .mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button::after {\n background-color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n background-color: var(--mdc-ripple-color, rgba(0, 0, 0, 0.87));\n}\n.mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button:hover::before, .mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button.mdc-ripple-surface--hover::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button.mdc-ripple-upgraded--background-focused::before, .mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n\n.mdc-data-table__table-container {\n -webkit-overflow-scrolling: touch;\n overflow-x: auto;\n width: 100%;\n}\n\n.mdc-data-table__table {\n min-width: 100%;\n border: 0;\n white-space: nowrap;\n border-collapse: collapse;\n /**\n * With table-layout:fixed, table and column widths are defined by the width\n * of the first row of cells. Cells in subsequent rows do not affect column\n * widths. This results in a predictable table layout and may also speed up\n * rendering.\n */\n table-layout: fixed;\n}\n\n.mdc-data-table__cell {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n box-sizing: border-box;\n overflow: hidden;\n text-align: left;\n text-overflow: ellipsis;\n}\n[dir=rtl] .mdc-data-table__cell, .mdc-data-table__cell[dir=rtl] {\n /* @noflip */\n text-align: right;\n}\n\n.mdc-data-table__cell--numeric {\n text-align: right;\n}\n[dir=rtl] .mdc-data-table__cell--numeric, .mdc-data-table__cell--numeric[dir=rtl] {\n /* @noflip */\n text-align: left;\n}\n\n.mdc-data-table__cell--checkbox {\n width: 1px;\n}\n\n.mdc-data-table__header-cell {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle2-font-size, 0.875rem);\n line-height: 1.375rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle2-line-height, 1.375rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle2-font-weight, 500);\n letter-spacing: 0.0071428571em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle2-letter-spacing, 0.0071428571em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle2-text-transform, inherit);\n box-sizing: border-box;\n text-overflow: ellipsis;\n overflow: hidden;\n outline: none;\n /* @noflip */\n text-align: left;\n}\n[dir=rtl] .mdc-data-table__header-cell, .mdc-data-table__header-cell[dir=rtl] {\n /* @noflip */\n text-align: right;\n}\n\n.mdc-data-table__header-cell--checkbox {\n width: 1px;\n}\n\n.mdc-data-table__header-cell--numeric {\n text-align: right;\n}\n[dir=rtl] .mdc-data-table__header-cell--numeric, .mdc-data-table__header-cell--numeric[dir=rtl] {\n /* @noflip */\n text-align: left;\n}\n\n.mdc-data-table__sort-icon-button {\n width: 28px;\n height: 28px;\n padding: 2px;\n transform: rotate(0.0001deg);\n /* @noflip */\n margin-left: 4px;\n /* @noflip */\n margin-right: 0;\n transition: transform 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1);\n opacity: 0;\n}\n[dir=rtl] .mdc-data-table__sort-icon-button, .mdc-data-table__sort-icon-button[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 4px;\n}\n.mdc-data-table__header-cell--numeric .mdc-data-table__sort-icon-button {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 4px;\n}\n[dir=rtl] .mdc-data-table__header-cell--numeric .mdc-data-table__sort-icon-button, .mdc-data-table__header-cell--numeric .mdc-data-table__sort-icon-button[dir=rtl] {\n /* @noflip */\n margin-left: 4px;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-data-table__header-cell--sorted-descending .mdc-data-table__sort-icon-button {\n transform: rotate(-180deg);\n}\n.mdc-data-table__sort-icon-button:focus, .mdc-data-table__header-cell:hover .mdc-data-table__sort-icon-button, .mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button {\n opacity: 1;\n}\n\n.mdc-data-table__header-cell-wrapper {\n align-items: center;\n display: inline-flex;\n vertical-align: middle;\n}\n\n.mdc-data-table__header-cell--with-sort {\n cursor: pointer;\n}\n\n.mdc-data-table__sort-status-label {\n clip: rect(1px, 1px, 1px, 1px);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n /* added line */\n width: 1px;\n}\n\n.mdc-data-table__progress-indicator {\n display: none;\n position: absolute;\n width: 100%;\n}\n.mdc-data-table--in-progress .mdc-data-table__progress-indicator {\n display: block;\n}\n\n.mdc-data-table__scrim {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n height: 100%;\n opacity: 0.32;\n position: absolute;\n top: 0;\n width: 100%;\n}\n\n.mdc-data-table--sticky-header .mdc-data-table__header-cell {\n position: sticky;\n top: 0;\n z-index: 1;\n}\n.mdc-data-table--sticky-header .mdc-data-table__header-cell:after {\n bottom: 0;\n content: \"\";\n left: 0;\n position: absolute;\n width: 100%;\n}\n.mdc-data-table--sticky-header .mdc-data-table__row:first-child {\n border-top: 0;\n}\n\n.mdc-data-table__pagination {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n box-sizing: border-box;\n display: flex;\n justify-content: flex-end;\n}\n\n.mdc-data-table__pagination-trailing {\n /* @noflip */\n margin-left: 4px;\n /* @noflip */\n margin-right: 0;\n align-items: center;\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end;\n}\n[dir=rtl] .mdc-data-table__pagination-trailing, .mdc-data-table__pagination-trailing[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 4px;\n}\n\n.mdc-data-table__pagination-navigation {\n align-items: center;\n display: flex;\n}\n\n.mdc-data-table__pagination-button {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 4px;\n}\n[dir=rtl] .mdc-data-table__pagination-button .mdc-button__icon, .mdc-data-table__pagination-button .mdc-button__icon[dir=rtl] {\n /* @noflip */\n transform: rotate(180deg);\n}\n[dir=rtl] .mdc-data-table__pagination-button, .mdc-data-table__pagination-button[dir=rtl] {\n /* @noflip */\n margin-left: 4px;\n /* @noflip */\n margin-right: 0;\n}\n\n.mdc-data-table__pagination-total {\n /* @noflip */\n margin-left: 14px;\n /* @noflip */\n margin-right: 36px;\n white-space: nowrap;\n}\n[dir=rtl] .mdc-data-table__pagination-total, .mdc-data-table__pagination-total[dir=rtl] {\n /* @noflip */\n margin-left: 36px;\n /* @noflip */\n margin-right: 14px;\n}\n\n.mdc-data-table__pagination-rows-per-page {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 22px;\n align-items: center;\n display: inline-flex;\n}\n[dir=rtl] .mdc-data-table__pagination-rows-per-page, .mdc-data-table__pagination-rows-per-page[dir=rtl] {\n /* @noflip */\n margin-left: 22px;\n /* @noflip */\n margin-right: 0;\n}\n\n.mdc-data-table__pagination-rows-per-page-label {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 12px;\n white-space: nowrap;\n}\n[dir=rtl] .mdc-data-table__pagination-rows-per-page-label, .mdc-data-table__pagination-rows-per-page-label[dir=rtl] {\n /* @noflip */\n margin-left: 12px;\n /* @noflip */\n margin-right: 0;\n}\n\n.mdc-data-table__pagination-rows-per-page-select {\n min-width: 80px;\n /* @alternate */\n min-width: var(--mdc-menu-min-width, 80px);\n margin: 8px 0;\n}\n.mdc-data-table__pagination-rows-per-page-select .mdc-select__anchor {\n width: 100%;\n min-width: 80px;\n}\n.mdc-data-table__pagination-rows-per-page-select .mdc-select__anchor {\n height: 36px;\n}\n.mdc-data-table__pagination-rows-per-page-select .mdc-select__anchor .mdc-floating-label--float-above {\n transform: translateY(-27.25px) scale(1);\n}\n.mdc-data-table__pagination-rows-per-page-select .mdc-select__anchor .mdc-floating-label--float-above {\n font-size: 0.75rem;\n}\n.mdc-data-table__pagination-rows-per-page-select .mdc-select__anchor.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-data-table__pagination-rows-per-page-select .mdc-select__anchor .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n transform: translateY(-24.75px) scale(0.75);\n}\n.mdc-data-table__pagination-rows-per-page-select .mdc-select__anchor.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-data-table__pagination-rows-per-page-select .mdc-select__anchor .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n font-size: 1rem;\n}\n.mdc-data-table__pagination-rows-per-page-select .mdc-select__anchor .mdc-floating-label--shake {\n animation: mdc-floating-label-shake-float-above-select-outlined-36px 250ms 1;\n}\n@keyframes mdc-floating-label-shake-float-above-select-outlined-36px {\n 0% {\n transform: translateX(calc(0 - 0%)) translateY(-24.75px) scale(0.75);\n }\n 33% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(calc(4% - 0%)) translateY(-24.75px) scale(0.75);\n }\n 66% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(calc(-4% - 0%)) translateY(-24.75px) scale(0.75);\n }\n 100% {\n transform: translateX(calc(0 - 0%)) translateY(-24.75px) scale(0.75);\n }\n}\n.mdc-data-table__pagination-rows-per-page-select .mdc-select__dropdown-icon {\n width: 20px;\n height: 20px;\n}\n.mdc-data-table__pagination-rows-per-page-select.mdc-select--outlined .mdc-select__anchor :not(.mdc-notched-outline--notched) .mdc-notched-outline__notch {\n max-width: calc(100% - 56px);\n}\n.mdc-data-table__pagination-rows-per-page-select .mdc-list-item {\n height: 36px;\n}\n\n.mdc-data-table__header-row-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::before, .mdc-data-table__header-row-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::after,\n.mdc-data-table__row-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::before,\n.mdc-data-table__row-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n.mdc-data-table__header-row-checkbox.mdc-checkbox--selected:hover .mdc-checkbox__ripple::before, .mdc-data-table__header-row-checkbox.mdc-checkbox--selected.mdc-ripple-surface--hover .mdc-checkbox__ripple::before,\n.mdc-data-table__row-checkbox.mdc-checkbox--selected:hover .mdc-checkbox__ripple::before,\n.mdc-data-table__row-checkbox.mdc-checkbox--selected.mdc-ripple-surface--hover .mdc-checkbox__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-data-table__header-row-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded--background-focused .mdc-checkbox__ripple::before, .mdc-data-table__header-row-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):focus .mdc-checkbox__ripple::before,\n.mdc-data-table__row-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded--background-focused .mdc-checkbox__ripple::before,\n.mdc-data-table__row-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):focus .mdc-checkbox__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-data-table__header-row-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after,\n.mdc-data-table__row-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-data-table__header-row-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after,\n.mdc-data-table__row-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-data-table__header-row-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded,\n.mdc-data-table__row-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-data-table__header-row-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::before,\n.mdc-data-table__header-row-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::after,\n.mdc-data-table__row-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::before,\n.mdc-data-table__row-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n.mdc-data-table__header-row-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true]) ~ .mdc-checkbox__background,\n.mdc-data-table__row-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true]) ~ .mdc-checkbox__background {\n border-color: rgba(0, 0, 0, 0.54);\n /* @alternate */\n border-color: var(--mdc-checkbox-unchecked-color, rgba(0, 0, 0, 0.54));\n background-color: transparent;\n}\n.mdc-data-table__header-row-checkbox .mdc-checkbox__native-control:enabled:checked ~ .mdc-checkbox__background,\n.mdc-data-table__header-row-checkbox .mdc-checkbox__native-control:enabled:indeterminate ~ .mdc-checkbox__background,\n.mdc-data-table__header-row-checkbox .mdc-checkbox__native-control[data-indeterminate=true]:enabled ~ .mdc-checkbox__background,\n.mdc-data-table__row-checkbox .mdc-checkbox__native-control:enabled:checked ~ .mdc-checkbox__background,\n.mdc-data-table__row-checkbox .mdc-checkbox__native-control:enabled:indeterminate ~ .mdc-checkbox__background,\n.mdc-data-table__row-checkbox .mdc-checkbox__native-control[data-indeterminate=true]:enabled ~ .mdc-checkbox__background {\n border-color: #6200ee;\n /* @alternate */\n border-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #6200ee));\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #6200ee));\n}\n@keyframes mdc-checkbox-fade-in-background-8A000000FF6200EE00000000FF6200EE {\n 0% {\n border-color: rgba(0, 0, 0, 0.54);\n /* @alternate */\n border-color: var(--mdc-checkbox-unchecked-color, rgba(0, 0, 0, 0.54));\n background-color: transparent;\n }\n 50% {\n border-color: #6200ee;\n /* @alternate */\n border-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #6200ee));\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #6200ee));\n }\n}\n@keyframes mdc-checkbox-fade-out-background-8A000000FF6200EE00000000FF6200EE {\n 0%, 80% {\n border-color: #6200ee;\n /* @alternate */\n border-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #6200ee));\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-checkbox-checked-color, var(--mdc-theme-secondary, #6200ee));\n }\n 100% {\n border-color: rgba(0, 0, 0, 0.54);\n /* @alternate */\n border-color: var(--mdc-checkbox-unchecked-color, rgba(0, 0, 0, 0.54));\n background-color: transparent;\n }\n}\n.mdc-data-table__header-row-checkbox.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-data-table__header-row-checkbox.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background,\n.mdc-data-table__row-checkbox.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background,\n.mdc-data-table__row-checkbox.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {\n animation-name: mdc-checkbox-fade-in-background-8A000000FF6200EE00000000FF6200EE;\n}\n.mdc-data-table__header-row-checkbox.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-data-table__header-row-checkbox.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background,\n.mdc-data-table__row-checkbox.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background,\n.mdc-data-table__row-checkbox.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {\n animation-name: mdc-checkbox-fade-out-background-8A000000FF6200EE00000000FF6200EE;\n}\n\n.mdc-dialog,\n.mdc-dialog__scrim {\n position: fixed;\n top: 0;\n left: 0;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n}\n\n.mdc-dialog {\n display: none;\n z-index: 7;\n /* @alternate */\n z-index: var(--mdc-dialog-z-index, 7);\n}\n.mdc-dialog .mdc-dialog__surface {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n}\n.mdc-dialog .mdc-dialog__scrim {\n background-color: rgba(0, 0, 0, 0.32);\n}\n.mdc-dialog .mdc-dialog__title {\n color: rgba(0, 0, 0, 0.87);\n}\n.mdc-dialog .mdc-dialog__content {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-dialog.mdc-dialog--scrollable .mdc-dialog__title, .mdc-dialog.mdc-dialog--scrollable .mdc-dialog__actions, .mdc-dialog.mdc-dialog--scrollable.mdc-dialog-scroll-divider-footer .mdc-dialog__actions {\n border-color: rgba(0, 0, 0, 0.12);\n}\n.mdc-dialog.mdc-dialog-scroll-divider-header.mdc-dialog--fullscreen .mdc-dialog__header {\n /* @alternate */\n box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);\n}\n.mdc-dialog .mdc-dialog__content {\n padding: 20px 24px 20px 24px;\n}\n.mdc-dialog .mdc-dialog__surface {\n min-width: 280px;\n}\n@media (max-width: 592px) {\n .mdc-dialog .mdc-dialog__surface {\n max-width: calc(100vw - 32px);\n }\n}\n@media (min-width: 592px) {\n .mdc-dialog .mdc-dialog__surface {\n max-width: 560px;\n }\n}\n.mdc-dialog .mdc-dialog__surface {\n max-height: calc(100% - 32px);\n}\n@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\n .mdc-dialog .mdc-dialog__container {\n /* stylelint-disable */\n /* stylelint-enable*/\n }\n}\n.mdc-dialog .mdc-dialog__surface {\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-medium, 4px);\n}\n@media (max-width: 960px) and (max-height: 1440px) {\n .mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface {\n max-height: 560px;\n max-width: 560px;\n }\n}\n@media (max-width: 720px) and (max-height: 1023px) and (max-width: 672px) {\n .mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface {\n max-width: calc(100vw - 112px);\n }\n}\n@media (max-width: 720px) and (max-height: 1023px) and (min-width: 672px) {\n .mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface {\n max-width: 560px;\n }\n}\n@media (max-width: 720px) and (max-height: 1023px) and (max-height: 720px) {\n .mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface {\n max-height: calc(100vh - 160px);\n }\n}\n@media (max-width: 720px) and (max-height: 1023px) and (min-height: 720px) {\n .mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface {\n max-height: 560px;\n }\n}\n@media (max-width: 720px) and (max-height: 400px) {\n .mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface {\n max-width: 100vw;\n width: 100vw;\n max-height: 100vh;\n height: 100vh;\n border-radius: 0;\n }\n}\n@media (max-width: 600px) and (max-height: 960px) {\n .mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface {\n max-width: 100vw;\n width: 100vw;\n max-height: 100vh;\n height: 100vh;\n border-radius: 0;\n }\n}\n@media (min-width: 960px) and (min-height: 1440px) {\n .mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface {\n max-width: calc(100vw - 400px);\n }\n}\n\n.mdc-dialog__scrim {\n opacity: 0;\n z-index: -1;\n}\n\n.mdc-dialog__container {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-around;\n box-sizing: border-box;\n height: 100%;\n transform: scale(0.8);\n opacity: 0;\n pointer-events: none;\n}\n\n.mdc-dialog__surface {\n /* @alternate */\n position: relative;\n /* @alternate */\n box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);\n display: flex;\n flex-direction: column;\n flex-grow: 0;\n flex-shrink: 0;\n box-sizing: border-box;\n max-width: 100%;\n max-height: 100%;\n pointer-events: auto;\n overflow-y: auto;\n}\n.mdc-dialog__surface .mdc-elevation-overlay {\n width: 100%;\n height: 100%;\n top: 0;\n /* @noflip */\n left: 0;\n}\n.mdc-dialog[dir=rtl] .mdc-dialog__surface, [dir=rtl] .mdc-dialog .mdc-dialog__surface {\n /* @noflip */\n text-align: right;\n}\n\n.mdc-dialog__title {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-headline6-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1.25rem;\n /* @alternate */\n font-size: var(--mdc-typography-headline6-font-size, 1.25rem);\n line-height: 2rem;\n /* @alternate */\n line-height: var(--mdc-typography-headline6-line-height, 2rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-headline6-font-weight, 500);\n letter-spacing: 0.0125em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-headline6-letter-spacing, 0.0125em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-headline6-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-headline6-text-transform, inherit);\n position: relative;\n flex-shrink: 0;\n box-sizing: border-box;\n margin: 0;\n padding: 0 24px 9px;\n border-bottom: 1px solid transparent;\n}\n.mdc-dialog__title::before {\n display: inline-block;\n width: 0;\n height: 40px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-dialog[dir=rtl] .mdc-dialog__title, [dir=rtl] .mdc-dialog .mdc-dialog__title {\n /* @noflip */\n text-align: right;\n}\n\n.mdc-dialog--scrollable .mdc-dialog__title {\n padding-bottom: 15px;\n}\n\n.mdc-dialog--fullscreen .mdc-dialog__header {\n display: inline-flex;\n padding: 0 16px 9px;\n border-bottom: 1px solid transparent;\n justify-content: space-between;\n align-items: baseline;\n}\n.mdc-dialog--fullscreen .mdc-dialog__title {\n padding: 0;\n border-bottom: 0;\n}\n.mdc-dialog--fullscreen .mdc-dialog__close {\n width: 24px;\n height: 24px;\n padding: 0px;\n}\n.mdc-dialog--fullscreen.mdc-dialog--scrollable .mdc-dialog__actions {\n border-top: 1px solid transparent;\n}\n\n.mdc-dialog__content {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-body1-font-size, 1rem);\n line-height: 1.5rem;\n /* @alternate */\n line-height: var(--mdc-typography-body1-line-height, 1.5rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body1-font-weight, 400);\n letter-spacing: 0.03125em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body1-letter-spacing, 0.03125em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body1-text-transform, inherit);\n flex-grow: 1;\n box-sizing: border-box;\n margin: 0;\n overflow: auto;\n -webkit-overflow-scrolling: touch;\n}\n.mdc-dialog__content > :first-child {\n margin-top: 0;\n}\n.mdc-dialog__content > :last-child {\n margin-bottom: 0;\n}\n\n.mdc-dialog__title + .mdc-dialog__content {\n padding-top: 0;\n}\n\n.mdc-dialog--scrollable .mdc-dialog__title + .mdc-dialog__content {\n padding-top: 8px;\n padding-bottom: 8px;\n}\n\n.mdc-dialog__content .mdc-list:first-child:last-child {\n padding: 6px 0 0;\n}\n\n.mdc-dialog--scrollable .mdc-dialog__content .mdc-list:first-child:last-child {\n padding: 0;\n}\n\n.mdc-dialog__actions {\n display: flex;\n position: relative;\n flex-shrink: 0;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-end;\n box-sizing: border-box;\n min-height: 52px;\n margin: 0;\n padding: 8px;\n border-top: 1px solid transparent;\n}\n.mdc-dialog--stacked .mdc-dialog__actions {\n flex-direction: column;\n align-items: flex-end;\n}\n\n.mdc-dialog__button {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 0;\n max-width: 100%;\n /* @noflip */\n text-align: right;\n}\n[dir=rtl] .mdc-dialog__button, .mdc-dialog__button[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 8px;\n}\n.mdc-dialog__button:first-child {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 0;\n}\n[dir=rtl] .mdc-dialog__button:first-child, .mdc-dialog__button:first-child[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-dialog[dir=rtl] .mdc-dialog__button, [dir=rtl] .mdc-dialog .mdc-dialog__button {\n /* @noflip */\n text-align: left;\n}\n\n.mdc-dialog--stacked .mdc-dialog__button:not(:first-child) {\n margin-top: 12px;\n}\n\n.mdc-dialog--open,\n.mdc-dialog--opening,\n.mdc-dialog--closing {\n display: flex;\n}\n\n.mdc-dialog--opening .mdc-dialog__scrim {\n transition: opacity 150ms linear;\n}\n.mdc-dialog--opening .mdc-dialog__container {\n transition: opacity 75ms linear, transform 150ms 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.mdc-dialog--closing .mdc-dialog__scrim,\n.mdc-dialog--closing .mdc-dialog__container {\n transition: opacity 75ms linear;\n}\n.mdc-dialog--closing .mdc-dialog__container {\n transform: none;\n}\n\n.mdc-dialog--open .mdc-dialog__scrim {\n opacity: 1;\n}\n.mdc-dialog--open .mdc-dialog__container {\n transform: none;\n opacity: 1;\n}\n\n.mdc-dialog-scroll-lock {\n overflow: hidden;\n}\n\n.mdc-drawer {\n border-color: rgba(0, 0, 0, 0.12);\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n /* @noflip */\n border-top-left-radius: 0;\n /* @noflip */\n border-top-right-radius: 0;\n /* @alternate */\n /* @noflip */\n border-top-right-radius: var(--mdc-shape-large, 0);\n /* @noflip */\n border-bottom-right-radius: 0;\n /* @alternate */\n /* @noflip */\n border-bottom-right-radius: var(--mdc-shape-large, 0);\n /* @noflip */\n border-bottom-left-radius: 0;\n z-index: 6;\n width: 256px;\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n box-sizing: border-box;\n height: 100%;\n /* @noflip */\n border-right-width: 1px;\n /* @noflip */\n border-right-style: solid;\n overflow: hidden;\n transition-property: transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n}\n.mdc-drawer .mdc-drawer__title {\n color: rgba(0, 0, 0, 0.87);\n}\n.mdc-drawer .mdc-list-group__subheader {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-drawer .mdc-drawer__subtitle {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-drawer .mdc-list-item__graphic {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-drawer .mdc-list-item {\n color: rgba(0, 0, 0, 0.87);\n}\n.mdc-drawer .mdc-list-item--activated .mdc-list-item__graphic {\n color: #6200ee;\n}\n.mdc-drawer .mdc-list-item--activated {\n color: rgba(98, 0, 238, 0.87);\n}\n[dir=rtl] .mdc-drawer, .mdc-drawer[dir=rtl] {\n /* @noflip */\n border-top-left-radius: 0;\n /* @alternate */\n /* @noflip */\n border-top-left-radius: var(--mdc-shape-large, 0);\n /* @noflip */\n border-top-right-radius: 0;\n /* @noflip */\n border-bottom-right-radius: 0;\n /* @noflip */\n border-bottom-left-radius: 0;\n /* @alternate */\n /* @noflip */\n border-bottom-left-radius: var(--mdc-shape-large, 0);\n}\n.mdc-drawer .mdc-list-item {\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-small, 4px);\n}\n.mdc-drawer.mdc-drawer--open:not(.mdc-drawer--closing) + .mdc-drawer-app-content {\n /* @noflip */\n margin-left: 256px;\n /* @noflip */\n margin-right: 0;\n}\n[dir=rtl] .mdc-drawer.mdc-drawer--open:not(.mdc-drawer--closing) + .mdc-drawer-app-content, .mdc-drawer.mdc-drawer--open:not(.mdc-drawer--closing) + .mdc-drawer-app-content[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 256px;\n}\n[dir=rtl] .mdc-drawer, .mdc-drawer[dir=rtl] {\n /* @noflip */\n border-right-width: 0;\n /* @noflip */\n border-left-width: 1px;\n /* @noflip */\n border-right-style: none;\n /* @noflip */\n border-left-style: solid;\n}\n.mdc-drawer .mdc-list-item {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle2-font-size, 0.875rem);\n line-height: 1.375rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle2-line-height, 1.375rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle2-font-weight, 500);\n letter-spacing: 0.0071428571em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle2-letter-spacing, 0.0071428571em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle2-text-transform, inherit);\n height: calc(48px - 2 * 4px);\n margin: 8px 8px;\n padding: 0 8px;\n}\n.mdc-drawer .mdc-list-item:nth-child(1) {\n margin-top: 2px;\n}\n.mdc-drawer .mdc-list-item:nth-last-child(1) {\n margin-bottom: 0;\n}\n.mdc-drawer .mdc-list-group__subheader {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin: 0;\n padding: 0 16px;\n}\n.mdc-drawer .mdc-list-group__subheader::before {\n display: inline-block;\n width: 0;\n height: 24px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-drawer .mdc-list-divider {\n margin: 3px 0 4px;\n}\n.mdc-drawer .mdc-list-item__text,\n.mdc-drawer .mdc-list-item__graphic {\n pointer-events: none;\n}\n\n.mdc-drawer--animate {\n transform: translateX(-100%);\n}\n[dir=rtl] .mdc-drawer--animate, .mdc-drawer--animate[dir=rtl] {\n transform: translateX(100%);\n}\n\n.mdc-drawer--opening {\n transform: translateX(0);\n transition-duration: 250ms;\n}\n[dir=rtl] .mdc-drawer--opening, .mdc-drawer--opening[dir=rtl] {\n transform: translateX(0);\n}\n\n.mdc-drawer--closing {\n transform: translateX(-100%);\n transition-duration: 200ms;\n}\n[dir=rtl] .mdc-drawer--closing, .mdc-drawer--closing[dir=rtl] {\n transform: translateX(100%);\n}\n\n.mdc-drawer__header {\n flex-shrink: 0;\n box-sizing: border-box;\n min-height: 64px;\n padding: 0 16px 4px;\n}\n\n.mdc-drawer__title {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-headline6-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1.25rem;\n /* @alternate */\n font-size: var(--mdc-typography-headline6-font-size, 1.25rem);\n line-height: 2rem;\n /* @alternate */\n line-height: var(--mdc-typography-headline6-line-height, 2rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-headline6-font-weight, 500);\n letter-spacing: 0.0125em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-headline6-letter-spacing, 0.0125em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-headline6-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-headline6-text-transform, inherit);\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-drawer__title::before {\n display: inline-block;\n width: 0;\n height: 36px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-drawer__title::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n\n.mdc-drawer__subtitle {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: 0;\n}\n.mdc-drawer__subtitle::before {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: 0;\n}\n\n.mdc-drawer__content {\n height: 100%;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.mdc-drawer--dismissible {\n /* @noflip */\n left: 0;\n /* @noflip */\n right: initial;\n display: none;\n position: absolute;\n}\n[dir=rtl] .mdc-drawer--dismissible, .mdc-drawer--dismissible[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 0;\n}\n.mdc-drawer--dismissible.mdc-drawer--open {\n display: flex;\n}\n\n.mdc-drawer-app-content {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 0;\n position: relative;\n}\n[dir=rtl] .mdc-drawer-app-content, .mdc-drawer-app-content[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 0;\n}\n\n.mdc-drawer--modal {\n /* @alternate */\n box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);\n /* @noflip */\n left: 0;\n /* @noflip */\n right: initial;\n display: none;\n position: fixed;\n}\n.mdc-drawer--modal + .mdc-drawer-scrim {\n background-color: rgba(0, 0, 0, 0.32);\n}\n[dir=rtl] .mdc-drawer--modal, .mdc-drawer--modal[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 0;\n}\n.mdc-drawer--modal.mdc-drawer--open {\n display: flex;\n}\n\n.mdc-drawer-scrim {\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 5;\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n}\n.mdc-drawer--open + .mdc-drawer-scrim {\n display: block;\n}\n.mdc-drawer--animate + .mdc-drawer-scrim {\n opacity: 0;\n}\n.mdc-drawer--opening + .mdc-drawer-scrim {\n transition-duration: 250ms;\n opacity: 1;\n}\n.mdc-drawer--closing + .mdc-drawer-scrim {\n transition-duration: 200ms;\n opacity: 0;\n}\n\n.mdc-elevation--z0 {\n /* @alternate */\n box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z1 {\n /* @alternate */\n box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z2 {\n /* @alternate */\n box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z3 {\n /* @alternate */\n box-shadow: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z4 {\n /* @alternate */\n box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z5 {\n /* @alternate */\n box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 5px 8px 0px rgba(0, 0, 0, 0.14), 0px 1px 14px 0px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z6 {\n /* @alternate */\n box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z7 {\n /* @alternate */\n box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.2), 0px 7px 10px 1px rgba(0, 0, 0, 0.14), 0px 2px 16px 1px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z8 {\n /* @alternate */\n box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z9 {\n /* @alternate */\n box-shadow: 0px 5px 6px -3px rgba(0, 0, 0, 0.2), 0px 9px 12px 1px rgba(0, 0, 0, 0.14), 0px 3px 16px 2px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z10 {\n /* @alternate */\n box-shadow: 0px 6px 6px -3px rgba(0, 0, 0, 0.2), 0px 10px 14px 1px rgba(0, 0, 0, 0.14), 0px 4px 18px 3px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z11 {\n /* @alternate */\n box-shadow: 0px 6px 7px -4px rgba(0, 0, 0, 0.2), 0px 11px 15px 1px rgba(0, 0, 0, 0.14), 0px 4px 20px 3px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z12 {\n /* @alternate */\n box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z13 {\n /* @alternate */\n box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 13px 19px 2px rgba(0, 0, 0, 0.14), 0px 5px 24px 4px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z14 {\n /* @alternate */\n box-shadow: 0px 7px 9px -4px rgba(0, 0, 0, 0.2), 0px 14px 21px 2px rgba(0, 0, 0, 0.14), 0px 5px 26px 4px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z15 {\n /* @alternate */\n box-shadow: 0px 8px 9px -5px rgba(0, 0, 0, 0.2), 0px 15px 22px 2px rgba(0, 0, 0, 0.14), 0px 6px 28px 5px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z16 {\n /* @alternate */\n box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z17 {\n /* @alternate */\n box-shadow: 0px 8px 11px -5px rgba(0, 0, 0, 0.2), 0px 17px 26px 2px rgba(0, 0, 0, 0.14), 0px 6px 32px 5px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z18 {\n /* @alternate */\n box-shadow: 0px 9px 11px -5px rgba(0, 0, 0, 0.2), 0px 18px 28px 2px rgba(0, 0, 0, 0.14), 0px 7px 34px 6px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z19 {\n /* @alternate */\n box-shadow: 0px 9px 12px -6px rgba(0, 0, 0, 0.2), 0px 19px 29px 2px rgba(0, 0, 0, 0.14), 0px 7px 36px 6px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z20 {\n /* @alternate */\n box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 20px 31px 3px rgba(0, 0, 0, 0.14), 0px 8px 38px 7px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z21 {\n /* @alternate */\n box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 21px 33px 3px rgba(0, 0, 0, 0.14), 0px 8px 40px 7px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z22 {\n /* @alternate */\n box-shadow: 0px 10px 14px -6px rgba(0, 0, 0, 0.2), 0px 22px 35px 3px rgba(0, 0, 0, 0.14), 0px 8px 42px 7px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z23 {\n /* @alternate */\n box-shadow: 0px 11px 14px -7px rgba(0, 0, 0, 0.2), 0px 23px 36px 3px rgba(0, 0, 0, 0.14), 0px 9px 44px 8px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation--z24 {\n /* @alternate */\n box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-elevation-transition {\n transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);\n will-change: box-shadow;\n}\n\n.mdc-fab {\n /* @alternate */\n position: relative;\n /* @alternate */\n box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);\n display: inline-flex;\n position: relative;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 56px;\n height: 56px;\n padding: 0;\n border: none;\n fill: currentColor;\n text-decoration: none;\n cursor: pointer;\n user-select: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n overflow: visible;\n transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1), opacity 15ms linear 30ms, transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);\n background-color: #018786;\n /* @alternate */\n background-color: var(--mdc-theme-secondary, #018786);\n color: #fff;\n /* @alternate */\n color: var(--mdc-theme-on-secondary, #fff);\n}\n.mdc-fab .mdc-elevation-overlay {\n width: 100%;\n height: 100%;\n top: 0;\n /* @noflip */\n left: 0;\n}\n.mdc-fab:not(.mdc-fab--extended) {\n border-radius: 50%;\n}\n.mdc-fab:not(.mdc-fab--extended) .mdc-fab__ripple {\n border-radius: 50%;\n}\n.mdc-fab::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\n.mdc-fab:hover, .mdc-fab:focus {\n /* @alternate */\n box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);\n}\n.mdc-fab:active {\n /* @alternate */\n box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);\n}\n.mdc-fab:active, .mdc-fab:focus {\n outline: none;\n}\n.mdc-fab:hover {\n cursor: pointer;\n}\n.mdc-fab > svg {\n width: 100%;\n}\n.mdc-fab .mdc-fab__icon {\n width: 24px;\n height: 24px;\n font-size: 24px;\n}\n\n.mdc-fab--mini {\n width: 40px;\n height: 40px;\n}\n\n.mdc-fab--extended {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-button-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-button-font-size, 0.875rem);\n line-height: 2.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-button-line-height, 2.25rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-button-font-weight, 500);\n letter-spacing: 0.0892857143em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-button-letter-spacing, 0.0892857143em);\n text-decoration: none;\n /* @alternate */\n text-decoration: var(--mdc-typography-button-text-decoration, none);\n text-transform: uppercase;\n /* @alternate */\n text-transform: var(--mdc-typography-button-text-transform, uppercase);\n border-radius: 24px;\n /* @noflip */\n padding-left: 20px;\n /* @noflip */\n padding-right: 20px;\n width: auto;\n max-width: 100%;\n height: 48px;\n /* @alternate */\n line-height: normal;\n}\n.mdc-fab--extended .mdc-fab__ripple {\n border-radius: 24px;\n}\n.mdc-fab--extended .mdc-fab__icon {\n /* @noflip */\n margin-left: calc(12px - 20px);\n /* @noflip */\n margin-right: 12px;\n}\n[dir=rtl] .mdc-fab--extended .mdc-fab__icon, .mdc-fab--extended .mdc-fab__icon[dir=rtl] {\n /* @noflip */\n margin-left: 12px;\n /* @noflip */\n margin-right: calc(12px - 20px);\n}\n.mdc-fab--extended .mdc-fab__label + .mdc-fab__icon {\n /* @noflip */\n margin-left: 12px;\n /* @noflip */\n margin-right: calc(12px - 20px);\n}\n[dir=rtl] .mdc-fab--extended .mdc-fab__label + .mdc-fab__icon, .mdc-fab--extended .mdc-fab__label + .mdc-fab__icon[dir=rtl] {\n /* @noflip */\n margin-left: calc(12px - 20px);\n /* @noflip */\n margin-right: 12px;\n}\n\n.mdc-fab--touch {\n margin-top: 4px;\n margin-bottom: 4px;\n margin-right: 4px;\n margin-left: 4px;\n}\n.mdc-fab--touch .mdc-fab__touch {\n position: absolute;\n top: 50%;\n right: 0;\n height: 48px;\n /* @noflip */\n left: 50%;\n width: 48px;\n transform: translate(-50%, -50%);\n}\n\n.mdc-fab::before {\n position: absolute;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n border: 1px solid transparent;\n border-radius: inherit;\n content: \"\";\n}\n\n.mdc-fab__label {\n justify-content: flex-start;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow-x: hidden;\n overflow-y: visible;\n}\n\n.mdc-fab__icon {\n transition: transform 180ms 90ms cubic-bezier(0, 0, 0.2, 1);\n fill: currentColor;\n will-change: transform;\n}\n\n.mdc-fab .mdc-fab__icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n\n.mdc-fab--exited {\n transform: scale(0);\n opacity: 0;\n transition: opacity 15ms linear 150ms, transform 180ms 0ms cubic-bezier(0.4, 0, 1, 1);\n}\n.mdc-fab--exited .mdc-fab__icon {\n transform: scale(0);\n transition: transform 135ms 0ms cubic-bezier(0.4, 0, 1, 1);\n}\n\n.mdc-fab {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-fab .mdc-fab__ripple::before,\n.mdc-fab .mdc-fab__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-fab .mdc-fab__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-fab .mdc-fab__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-fab.mdc-ripple-upgraded .mdc-fab__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-fab.mdc-ripple-upgraded .mdc-fab__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-fab.mdc-ripple-upgraded--unbounded .mdc-fab__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-fab.mdc-ripple-upgraded--foreground-activation .mdc-fab__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-fab.mdc-ripple-upgraded--foreground-deactivation .mdc-fab__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-fab .mdc-fab__ripple::before,\n.mdc-fab .mdc-fab__ripple::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n.mdc-fab.mdc-ripple-upgraded .mdc-fab__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-fab .mdc-fab__ripple::before, .mdc-fab .mdc-fab__ripple::after {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-on-secondary, #fff));\n}\n.mdc-fab:hover .mdc-fab__ripple::before, .mdc-fab.mdc-ripple-surface--hover .mdc-fab__ripple::before {\n opacity: 0.08;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.08);\n}\n.mdc-fab.mdc-ripple-upgraded--background-focused .mdc-fab__ripple::before, .mdc-fab:not(.mdc-ripple-upgraded):focus .mdc-fab__ripple::before {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.24);\n}\n.mdc-fab:not(.mdc-ripple-upgraded) .mdc-fab__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-fab:not(.mdc-ripple-upgraded):active .mdc-fab__ripple::after {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n.mdc-fab.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n.mdc-fab .mdc-fab__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n overflow: hidden;\n z-index: -1;\n}\n\n.mdc-form-field {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));\n display: inline-flex;\n align-items: center;\n vertical-align: middle;\n}\n.mdc-form-field > label {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: auto;\n /* @noflip */\n padding-left: 4px;\n /* @noflip */\n padding-right: 0;\n order: 0;\n}\n[dir=rtl] .mdc-form-field > label, .mdc-form-field > label[dir=rtl] {\n /* @noflip */\n margin-left: auto;\n /* @noflip */\n margin-right: 0;\n}\n[dir=rtl] .mdc-form-field > label, .mdc-form-field > label[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 4px;\n}\n\n.mdc-form-field--nowrap > label {\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n\n.mdc-form-field--align-end > label {\n /* @noflip */\n margin-left: auto;\n /* @noflip */\n margin-right: 0;\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 4px;\n order: -1;\n}\n[dir=rtl] .mdc-form-field--align-end > label, .mdc-form-field--align-end > label[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: auto;\n}\n[dir=rtl] .mdc-form-field--align-end > label, .mdc-form-field--align-end > label[dir=rtl] {\n /* @noflip */\n padding-left: 4px;\n /* @noflip */\n padding-right: 0;\n}\n\n.mdc-form-field--space-between {\n justify-content: space-between;\n}\n.mdc-form-field--space-between > label {\n margin: 0;\n}\n[dir=rtl] .mdc-form-field--space-between > label, .mdc-form-field--space-between > label[dir=rtl] {\n margin: 0;\n}\n\n.mdc-icon-button {\n display: inline-block;\n position: relative;\n box-sizing: border-box;\n border: none;\n outline: none;\n background-color: transparent;\n fill: currentColor;\n color: inherit;\n font-size: 24px;\n text-decoration: none;\n cursor: pointer;\n user-select: none;\n width: 48px;\n height: 48px;\n padding: 12px;\n}\n.mdc-icon-button svg,\n.mdc-icon-button img {\n width: 24px;\n height: 24px;\n}\n.mdc-icon-button:disabled {\n color: rgba(0, 0, 0, 0.38);\n /* @alternate */\n color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));\n}\n.mdc-icon-button:disabled {\n cursor: default;\n pointer-events: none;\n}\n\n.mdc-icon-button__icon {\n display: inline-block;\n}\n.mdc-icon-button__icon.mdc-icon-button__icon--on {\n display: none;\n}\n\n.mdc-icon-button--on .mdc-icon-button__icon {\n display: none;\n}\n.mdc-icon-button--on .mdc-icon-button__icon.mdc-icon-button__icon--on {\n display: inline-block;\n}\n\n.mdc-icon-button {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-icon-button::before, .mdc-icon-button::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-icon-button::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-icon-button::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-icon-button.mdc-ripple-upgraded::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-icon-button.mdc-ripple-upgraded::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-icon-button.mdc-ripple-upgraded--unbounded::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-icon-button.mdc-ripple-upgraded--foreground-activation::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-icon-button.mdc-ripple-upgraded--foreground-deactivation::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-icon-button::before, .mdc-icon-button::after {\n top: calc(50% - 50%);\n /* @noflip */\n left: calc(50% - 50%);\n width: 100%;\n height: 100%;\n}\n.mdc-icon-button.mdc-ripple-upgraded::before, .mdc-icon-button.mdc-ripple-upgraded::after {\n top: var(--mdc-ripple-top, calc(50% - 50%));\n /* @noflip */\n left: var(--mdc-ripple-left, calc(50% - 50%));\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-icon-button.mdc-ripple-upgraded::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-icon-button::before, .mdc-icon-button::after {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-ripple-color, #000);\n}\n.mdc-icon-button:hover::before, .mdc-icon-button.mdc-ripple-surface--hover::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-icon-button.mdc-ripple-upgraded--background-focused::before, .mdc-icon-button:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-icon-button:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-icon-button:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-icon-button.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n\n.mdc-image-list {\n display: flex;\n flex-wrap: wrap;\n margin: 0 auto;\n padding: 0;\n}\n\n.mdc-image-list__item,\n.mdc-image-list__image-aspect-container {\n position: relative;\n box-sizing: border-box;\n}\n\n.mdc-image-list__item {\n list-style-type: none;\n}\n\n.mdc-image-list__image {\n width: 100%;\n}\n\n.mdc-image-list__image-aspect-container .mdc-image-list__image {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n height: 100%;\n background-repeat: no-repeat;\n background-position: center;\n background-size: cover;\n}\n\n.mdc-image-list__image-aspect-container {\n padding-bottom: calc(100% / 1);\n}\n\n.mdc-image-list__image {\n border-radius: 0;\n}\n\n.mdc-image-list--with-text-protection .mdc-image-list__supporting {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.mdc-image-list__supporting {\n color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));\n display: flex;\n align-items: center;\n justify-content: space-between;\n box-sizing: border-box;\n padding: 8px 0;\n line-height: 24px;\n}\n\n.mdc-image-list__label {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle1-font-size, 1rem);\n line-height: 1.75rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle1-line-height, 1.75rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle1-font-weight, 400);\n letter-spacing: 0.009375em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle1-text-transform, inherit);\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n\n.mdc-image-list--with-text-protection .mdc-image-list__supporting {\n position: absolute;\n bottom: 0;\n width: 100%;\n height: 48px;\n padding: 0 16px;\n background: rgba(0, 0, 0, 0.6);\n color: #fff;\n}\n\n.mdc-image-list--masonry {\n display: block;\n}\n.mdc-image-list--masonry .mdc-image-list__item {\n break-inside: avoid-column;\n}\n.mdc-image-list--masonry .mdc-image-list__image {\n display: block;\n height: auto;\n}\n\n:root {\n --mdc-layout-grid-margin-desktop: 24px;\n --mdc-layout-grid-gutter-desktop: 24px;\n --mdc-layout-grid-column-width-desktop: 72px;\n --mdc-layout-grid-margin-tablet: 16px;\n --mdc-layout-grid-gutter-tablet: 16px;\n --mdc-layout-grid-column-width-tablet: 72px;\n --mdc-layout-grid-margin-phone: 16px;\n --mdc-layout-grid-gutter-phone: 16px;\n --mdc-layout-grid-column-width-phone: 72px;\n}\n\n@media (min-width: 840px) {\n .mdc-layout-grid {\n box-sizing: border-box;\n margin: 0 auto;\n padding: 24px;\n padding: var(--mdc-layout-grid-margin-desktop, 24px);\n }\n}\n@media (min-width: 600px) and (max-width: 839px) {\n .mdc-layout-grid {\n box-sizing: border-box;\n margin: 0 auto;\n padding: 16px;\n padding: var(--mdc-layout-grid-margin-tablet, 16px);\n }\n}\n@media (max-width: 599px) {\n .mdc-layout-grid {\n box-sizing: border-box;\n margin: 0 auto;\n padding: 16px;\n padding: var(--mdc-layout-grid-margin-phone, 16px);\n }\n}\n\n@media (min-width: 840px) {\n .mdc-layout-grid__inner {\n display: flex;\n flex-flow: row wrap;\n align-items: stretch;\n margin: -12px;\n margin: calc(var(--mdc-layout-grid-gutter-desktop, 24px) / 2 * -1);\n }\n @supports (display: grid) {\n .mdc-layout-grid__inner {\n display: grid;\n margin: 0;\n grid-gap: 24px;\n grid-gap: var(--mdc-layout-grid-gutter-desktop, 24px);\n grid-template-columns: repeat(12, minmax(0, 1fr));\n }\n }\n}\n@media (min-width: 600px) and (max-width: 839px) {\n .mdc-layout-grid__inner {\n display: flex;\n flex-flow: row wrap;\n align-items: stretch;\n margin: -8px;\n margin: calc(var(--mdc-layout-grid-gutter-tablet, 16px) / 2 * -1);\n }\n @supports (display: grid) {\n .mdc-layout-grid__inner {\n display: grid;\n margin: 0;\n grid-gap: 16px;\n grid-gap: var(--mdc-layout-grid-gutter-tablet, 16px);\n grid-template-columns: repeat(8, minmax(0, 1fr));\n }\n }\n}\n@media (max-width: 599px) {\n .mdc-layout-grid__inner {\n display: flex;\n flex-flow: row wrap;\n align-items: stretch;\n margin: -8px;\n margin: calc(var(--mdc-layout-grid-gutter-phone, 16px) / 2 * -1);\n }\n @supports (display: grid) {\n .mdc-layout-grid__inner {\n display: grid;\n margin: 0;\n grid-gap: 16px;\n grid-gap: var(--mdc-layout-grid-gutter-phone, 16px);\n grid-template-columns: repeat(4, minmax(0, 1fr));\n }\n }\n}\n\n@media (min-width: 840px) {\n .mdc-layout-grid__cell {\n width: calc(33.3333333333% - 24px);\n width: calc(33.3333333333% - var(--mdc-layout-grid-gutter-desktop, 24px));\n box-sizing: border-box;\n margin: 12px;\n margin: calc(var(--mdc-layout-grid-gutter-desktop, 24px) / 2);\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell {\n width: auto;\n grid-column-end: span 4;\n }\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell {\n margin: 0;\n }\n }\n .mdc-layout-grid__cell--span-1,\n.mdc-layout-grid__cell--span-1-desktop {\n width: calc(8.3333333333% - 24px);\n width: calc(8.3333333333% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-1,\n.mdc-layout-grid__cell--span-1-desktop {\n width: auto;\n grid-column-end: span 1;\n }\n }\n\n .mdc-layout-grid__cell--span-2,\n.mdc-layout-grid__cell--span-2-desktop {\n width: calc(16.6666666667% - 24px);\n width: calc(16.6666666667% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-2,\n.mdc-layout-grid__cell--span-2-desktop {\n width: auto;\n grid-column-end: span 2;\n }\n }\n\n .mdc-layout-grid__cell--span-3,\n.mdc-layout-grid__cell--span-3-desktop {\n width: calc(25% - 24px);\n width: calc(25% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-3,\n.mdc-layout-grid__cell--span-3-desktop {\n width: auto;\n grid-column-end: span 3;\n }\n }\n\n .mdc-layout-grid__cell--span-4,\n.mdc-layout-grid__cell--span-4-desktop {\n width: calc(33.3333333333% - 24px);\n width: calc(33.3333333333% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-4,\n.mdc-layout-grid__cell--span-4-desktop {\n width: auto;\n grid-column-end: span 4;\n }\n }\n\n .mdc-layout-grid__cell--span-5,\n.mdc-layout-grid__cell--span-5-desktop {\n width: calc(41.6666666667% - 24px);\n width: calc(41.6666666667% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-5,\n.mdc-layout-grid__cell--span-5-desktop {\n width: auto;\n grid-column-end: span 5;\n }\n }\n\n .mdc-layout-grid__cell--span-6,\n.mdc-layout-grid__cell--span-6-desktop {\n width: calc(50% - 24px);\n width: calc(50% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-6,\n.mdc-layout-grid__cell--span-6-desktop {\n width: auto;\n grid-column-end: span 6;\n }\n }\n\n .mdc-layout-grid__cell--span-7,\n.mdc-layout-grid__cell--span-7-desktop {\n width: calc(58.3333333333% - 24px);\n width: calc(58.3333333333% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-7,\n.mdc-layout-grid__cell--span-7-desktop {\n width: auto;\n grid-column-end: span 7;\n }\n }\n\n .mdc-layout-grid__cell--span-8,\n.mdc-layout-grid__cell--span-8-desktop {\n width: calc(66.6666666667% - 24px);\n width: calc(66.6666666667% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-8,\n.mdc-layout-grid__cell--span-8-desktop {\n width: auto;\n grid-column-end: span 8;\n }\n }\n\n .mdc-layout-grid__cell--span-9,\n.mdc-layout-grid__cell--span-9-desktop {\n width: calc(75% - 24px);\n width: calc(75% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-9,\n.mdc-layout-grid__cell--span-9-desktop {\n width: auto;\n grid-column-end: span 9;\n }\n }\n\n .mdc-layout-grid__cell--span-10,\n.mdc-layout-grid__cell--span-10-desktop {\n width: calc(83.3333333333% - 24px);\n width: calc(83.3333333333% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-10,\n.mdc-layout-grid__cell--span-10-desktop {\n width: auto;\n grid-column-end: span 10;\n }\n }\n\n .mdc-layout-grid__cell--span-11,\n.mdc-layout-grid__cell--span-11-desktop {\n width: calc(91.6666666667% - 24px);\n width: calc(91.6666666667% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-11,\n.mdc-layout-grid__cell--span-11-desktop {\n width: auto;\n grid-column-end: span 11;\n }\n }\n\n .mdc-layout-grid__cell--span-12,\n.mdc-layout-grid__cell--span-12-desktop {\n width: calc(100% - 24px);\n width: calc(100% - var(--mdc-layout-grid-gutter-desktop, 24px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-12,\n.mdc-layout-grid__cell--span-12-desktop {\n width: auto;\n grid-column-end: span 12;\n }\n }\n}\n@media (min-width: 600px) and (max-width: 839px) {\n .mdc-layout-grid__cell {\n width: calc(50% - 16px);\n width: calc(50% - var(--mdc-layout-grid-gutter-tablet, 16px));\n box-sizing: border-box;\n margin: 8px;\n margin: calc(var(--mdc-layout-grid-gutter-tablet, 16px) / 2);\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell {\n width: auto;\n grid-column-end: span 4;\n }\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell {\n margin: 0;\n }\n }\n .mdc-layout-grid__cell--span-1,\n.mdc-layout-grid__cell--span-1-tablet {\n width: calc(12.5% - 16px);\n width: calc(12.5% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-1,\n.mdc-layout-grid__cell--span-1-tablet {\n width: auto;\n grid-column-end: span 1;\n }\n }\n\n .mdc-layout-grid__cell--span-2,\n.mdc-layout-grid__cell--span-2-tablet {\n width: calc(25% - 16px);\n width: calc(25% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-2,\n.mdc-layout-grid__cell--span-2-tablet {\n width: auto;\n grid-column-end: span 2;\n }\n }\n\n .mdc-layout-grid__cell--span-3,\n.mdc-layout-grid__cell--span-3-tablet {\n width: calc(37.5% - 16px);\n width: calc(37.5% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-3,\n.mdc-layout-grid__cell--span-3-tablet {\n width: auto;\n grid-column-end: span 3;\n }\n }\n\n .mdc-layout-grid__cell--span-4,\n.mdc-layout-grid__cell--span-4-tablet {\n width: calc(50% - 16px);\n width: calc(50% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-4,\n.mdc-layout-grid__cell--span-4-tablet {\n width: auto;\n grid-column-end: span 4;\n }\n }\n\n .mdc-layout-grid__cell--span-5,\n.mdc-layout-grid__cell--span-5-tablet {\n width: calc(62.5% - 16px);\n width: calc(62.5% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-5,\n.mdc-layout-grid__cell--span-5-tablet {\n width: auto;\n grid-column-end: span 5;\n }\n }\n\n .mdc-layout-grid__cell--span-6,\n.mdc-layout-grid__cell--span-6-tablet {\n width: calc(75% - 16px);\n width: calc(75% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-6,\n.mdc-layout-grid__cell--span-6-tablet {\n width: auto;\n grid-column-end: span 6;\n }\n }\n\n .mdc-layout-grid__cell--span-7,\n.mdc-layout-grid__cell--span-7-tablet {\n width: calc(87.5% - 16px);\n width: calc(87.5% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-7,\n.mdc-layout-grid__cell--span-7-tablet {\n width: auto;\n grid-column-end: span 7;\n }\n }\n\n .mdc-layout-grid__cell--span-8,\n.mdc-layout-grid__cell--span-8-tablet {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-8,\n.mdc-layout-grid__cell--span-8-tablet {\n width: auto;\n grid-column-end: span 8;\n }\n }\n\n .mdc-layout-grid__cell--span-9,\n.mdc-layout-grid__cell--span-9-tablet {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-9,\n.mdc-layout-grid__cell--span-9-tablet {\n width: auto;\n grid-column-end: span 8;\n }\n }\n\n .mdc-layout-grid__cell--span-10,\n.mdc-layout-grid__cell--span-10-tablet {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-10,\n.mdc-layout-grid__cell--span-10-tablet {\n width: auto;\n grid-column-end: span 8;\n }\n }\n\n .mdc-layout-grid__cell--span-11,\n.mdc-layout-grid__cell--span-11-tablet {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-11,\n.mdc-layout-grid__cell--span-11-tablet {\n width: auto;\n grid-column-end: span 8;\n }\n }\n\n .mdc-layout-grid__cell--span-12,\n.mdc-layout-grid__cell--span-12-tablet {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-12,\n.mdc-layout-grid__cell--span-12-tablet {\n width: auto;\n grid-column-end: span 8;\n }\n }\n}\n@media (max-width: 599px) {\n .mdc-layout-grid__cell {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));\n box-sizing: border-box;\n margin: 8px;\n margin: calc(var(--mdc-layout-grid-gutter-phone, 16px) / 2);\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell {\n width: auto;\n grid-column-end: span 4;\n }\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell {\n margin: 0;\n }\n }\n .mdc-layout-grid__cell--span-1,\n.mdc-layout-grid__cell--span-1-phone {\n width: calc(25% - 16px);\n width: calc(25% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-1,\n.mdc-layout-grid__cell--span-1-phone {\n width: auto;\n grid-column-end: span 1;\n }\n }\n\n .mdc-layout-grid__cell--span-2,\n.mdc-layout-grid__cell--span-2-phone {\n width: calc(50% - 16px);\n width: calc(50% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-2,\n.mdc-layout-grid__cell--span-2-phone {\n width: auto;\n grid-column-end: span 2;\n }\n }\n\n .mdc-layout-grid__cell--span-3,\n.mdc-layout-grid__cell--span-3-phone {\n width: calc(75% - 16px);\n width: calc(75% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-3,\n.mdc-layout-grid__cell--span-3-phone {\n width: auto;\n grid-column-end: span 3;\n }\n }\n\n .mdc-layout-grid__cell--span-4,\n.mdc-layout-grid__cell--span-4-phone {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-4,\n.mdc-layout-grid__cell--span-4-phone {\n width: auto;\n grid-column-end: span 4;\n }\n }\n\n .mdc-layout-grid__cell--span-5,\n.mdc-layout-grid__cell--span-5-phone {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-5,\n.mdc-layout-grid__cell--span-5-phone {\n width: auto;\n grid-column-end: span 4;\n }\n }\n\n .mdc-layout-grid__cell--span-6,\n.mdc-layout-grid__cell--span-6-phone {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-6,\n.mdc-layout-grid__cell--span-6-phone {\n width: auto;\n grid-column-end: span 4;\n }\n }\n\n .mdc-layout-grid__cell--span-7,\n.mdc-layout-grid__cell--span-7-phone {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-7,\n.mdc-layout-grid__cell--span-7-phone {\n width: auto;\n grid-column-end: span 4;\n }\n }\n\n .mdc-layout-grid__cell--span-8,\n.mdc-layout-grid__cell--span-8-phone {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-8,\n.mdc-layout-grid__cell--span-8-phone {\n width: auto;\n grid-column-end: span 4;\n }\n }\n\n .mdc-layout-grid__cell--span-9,\n.mdc-layout-grid__cell--span-9-phone {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-9,\n.mdc-layout-grid__cell--span-9-phone {\n width: auto;\n grid-column-end: span 4;\n }\n }\n\n .mdc-layout-grid__cell--span-10,\n.mdc-layout-grid__cell--span-10-phone {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-10,\n.mdc-layout-grid__cell--span-10-phone {\n width: auto;\n grid-column-end: span 4;\n }\n }\n\n .mdc-layout-grid__cell--span-11,\n.mdc-layout-grid__cell--span-11-phone {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-11,\n.mdc-layout-grid__cell--span-11-phone {\n width: auto;\n grid-column-end: span 4;\n }\n }\n\n .mdc-layout-grid__cell--span-12,\n.mdc-layout-grid__cell--span-12-phone {\n width: calc(100% - 16px);\n width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));\n }\n @supports (display: grid) {\n .mdc-layout-grid__cell--span-12,\n.mdc-layout-grid__cell--span-12-phone {\n width: auto;\n grid-column-end: span 4;\n }\n }\n}\n.mdc-layout-grid__cell--order-1 {\n order: 1;\n}\n.mdc-layout-grid__cell--order-2 {\n order: 2;\n}\n.mdc-layout-grid__cell--order-3 {\n order: 3;\n}\n.mdc-layout-grid__cell--order-4 {\n order: 4;\n}\n.mdc-layout-grid__cell--order-5 {\n order: 5;\n}\n.mdc-layout-grid__cell--order-6 {\n order: 6;\n}\n.mdc-layout-grid__cell--order-7 {\n order: 7;\n}\n.mdc-layout-grid__cell--order-8 {\n order: 8;\n}\n.mdc-layout-grid__cell--order-9 {\n order: 9;\n}\n.mdc-layout-grid__cell--order-10 {\n order: 10;\n}\n.mdc-layout-grid__cell--order-11 {\n order: 11;\n}\n.mdc-layout-grid__cell--order-12 {\n order: 12;\n}\n.mdc-layout-grid__cell--align-top {\n align-self: flex-start;\n}\n@supports (display: grid) {\n .mdc-layout-grid__cell--align-top {\n align-self: start;\n }\n}\n.mdc-layout-grid__cell--align-middle {\n align-self: center;\n}\n.mdc-layout-grid__cell--align-bottom {\n align-self: flex-end;\n}\n@supports (display: grid) {\n .mdc-layout-grid__cell--align-bottom {\n align-self: end;\n }\n}\n\n@media (min-width: 840px) {\n .mdc-layout-grid--fixed-column-width {\n width: 1176px;\n width: calc( var(--mdc-layout-grid-column-width-desktop, 72px) * 12 + var(--mdc-layout-grid-gutter-desktop, 24px) * 11 + var(--mdc-layout-grid-margin-desktop, 24px) * 2 );\n }\n}\n@media (min-width: 600px) and (max-width: 839px) {\n .mdc-layout-grid--fixed-column-width {\n width: 720px;\n width: calc( var(--mdc-layout-grid-column-width-tablet, 72px) * 8 + var(--mdc-layout-grid-gutter-tablet, 16px) * 7 + var(--mdc-layout-grid-margin-tablet, 16px) * 2 );\n }\n}\n@media (max-width: 599px) {\n .mdc-layout-grid--fixed-column-width {\n width: 368px;\n width: calc( var(--mdc-layout-grid-column-width-phone, 72px) * 4 + var(--mdc-layout-grid-gutter-phone, 16px) * 3 + var(--mdc-layout-grid-margin-phone, 16px) * 2 );\n }\n}\n\n.mdc-layout-grid--align-left {\n margin-right: auto;\n margin-left: 0;\n}\n\n.mdc-layout-grid--align-right {\n margin-right: 0;\n margin-left: auto;\n}\n\n@keyframes mdc-linear-progress-primary-indeterminate-translate {\n 0% {\n transform: translateX(0);\n }\n 20% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(0);\n }\n 59.15% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(83.67142%);\n /* @alternate */\n transform: translateX(var(--mdc-linear-progress-primary-half, 83.67142%));\n }\n 100% {\n transform: translateX(200.611057%);\n /* @alternate */\n transform: translateX(var(--mdc-linear-progress-primary-full, 200.611057%));\n }\n}\n@keyframes mdc-linear-progress-primary-indeterminate-scale {\n 0% {\n transform: scaleX(0.08);\n }\n 36.65% {\n animation-timing-function: cubic-bezier(0.334731, 0.12482, 0.785844, 1);\n transform: scaleX(0.08);\n }\n 69.15% {\n animation-timing-function: cubic-bezier(0.06, 0.11, 0.6, 1);\n transform: scaleX(0.661479);\n }\n 100% {\n transform: scaleX(0.08);\n }\n}\n@keyframes mdc-linear-progress-secondary-indeterminate-translate {\n 0% {\n animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);\n transform: translateX(0);\n }\n 25% {\n animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);\n transform: translateX(37.651913%);\n /* @alternate */\n transform: translateX(var(--mdc-linear-progress-secondary-quarter, 37.651913%));\n }\n 48.35% {\n animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);\n transform: translateX(84.386165%);\n /* @alternate */\n transform: translateX(var(--mdc-linear-progress-secondary-half, 84.386165%));\n }\n 100% {\n transform: translateX(160.277782%);\n /* @alternate */\n transform: translateX(var(--mdc-linear-progress-secondary-full, 160.277782%));\n }\n}\n@keyframes mdc-linear-progress-secondary-indeterminate-scale {\n 0% {\n animation-timing-function: cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);\n transform: scaleX(0.08);\n }\n 19.15% {\n animation-timing-function: cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);\n transform: scaleX(0.457104);\n }\n 44.15% {\n animation-timing-function: cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);\n transform: scaleX(0.72796);\n }\n 100% {\n transform: scaleX(0.08);\n }\n}\n@keyframes mdc-linear-progress-buffering {\n from {\n transform: rotate(180deg) translateX(-10px);\n }\n}\n@keyframes mdc-linear-progress-primary-indeterminate-translate-reverse {\n 0% {\n transform: translateX(0);\n }\n 20% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(0);\n }\n 59.15% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(-83.67142%);\n /* @alternate */\n transform: translateX(var(--mdc-linear-progress-primary-half-neg, -83.67142%));\n }\n 100% {\n transform: translateX(-200.611057%);\n /* @alternate */\n transform: translateX(var(--mdc-linear-progress-primary-full-neg, -200.611057%));\n }\n}\n@keyframes mdc-linear-progress-secondary-indeterminate-translate-reverse {\n 0% {\n animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);\n transform: translateX(0);\n }\n 25% {\n animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);\n transform: translateX(-37.651913%);\n /* @alternate */\n transform: translateX(var(--mdc-linear-progress-secondary-quarter-neg, -37.651913%));\n }\n 48.35% {\n animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);\n transform: translateX(-84.386165%);\n /* @alternate */\n transform: translateX(var(--mdc-linear-progress-secondary-half-neg, -84.386165%));\n }\n 100% {\n transform: translateX(-160.277782%);\n /* @alternate */\n transform: translateX(var(--mdc-linear-progress-secondary-full-neg, -160.277782%));\n }\n}\n@keyframes mdc-linear-progress-buffering-reverse {\n from {\n transform: translateX(-10px);\n }\n}\n.mdc-linear-progress {\n position: relative;\n width: 100%;\n height: 4px;\n transform: translateZ(0);\n outline: 1px solid transparent;\n overflow: hidden;\n transition: opacity 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n}\n.mdc-linear-progress__bar {\n position: absolute;\n width: 100%;\n height: 100%;\n animation: none;\n transform-origin: top left;\n transition: transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n}\n.mdc-linear-progress__bar-inner {\n display: inline-block;\n position: absolute;\n width: 100%;\n animation: none;\n border-top: 4px solid;\n}\n.mdc-linear-progress__buffer {\n display: flex;\n position: absolute;\n width: 100%;\n height: 100%;\n}\n.mdc-linear-progress__buffer-dots {\n background-repeat: repeat-x;\n background-size: 10px 4px;\n flex: auto;\n transform: rotate(180deg);\n animation: mdc-linear-progress-buffering 250ms infinite linear;\n}\n.mdc-linear-progress__buffer-bar {\n flex: 0 1 100%;\n transition: flex-basis 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n}\n.mdc-linear-progress__primary-bar {\n transform: scaleX(0);\n}\n.mdc-linear-progress__secondary-bar {\n visibility: hidden;\n}\n.mdc-linear-progress--indeterminate .mdc-linear-progress__bar {\n transition: none;\n}\n.mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar {\n left: -145.166611%;\n}\n.mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar {\n left: -54.888891%;\n visibility: visible;\n}\n.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar {\n animation: mdc-linear-progress-primary-indeterminate-translate 2s infinite linear;\n}\n.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar > .mdc-linear-progress__bar-inner {\n animation: mdc-linear-progress-primary-indeterminate-scale 2s infinite linear;\n}\n.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar {\n animation: mdc-linear-progress-secondary-indeterminate-translate 2s infinite linear;\n}\n.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar > .mdc-linear-progress__bar-inner {\n animation: mdc-linear-progress-secondary-indeterminate-scale 2s infinite linear;\n}\n[dir=rtl] .mdc-linear-progress:not([dir=ltr]) .mdc-linear-progress__bar, .mdc-linear-progress[dir=rtl]:not([dir=ltr]) .mdc-linear-progress__bar {\n /* @noflip */\n right: 0;\n /* @noflip */\n transform-origin: center right;\n}\n[dir=rtl] .mdc-linear-progress:not([dir=ltr]).mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar, .mdc-linear-progress[dir=rtl]:not([dir=ltr]).mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar {\n animation-name: mdc-linear-progress-primary-indeterminate-translate-reverse;\n}\n[dir=rtl] .mdc-linear-progress:not([dir=ltr]).mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar, .mdc-linear-progress[dir=rtl]:not([dir=ltr]).mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar {\n animation-name: mdc-linear-progress-secondary-indeterminate-translate-reverse;\n}\n[dir=rtl] .mdc-linear-progress:not([dir=ltr]) .mdc-linear-progress__buffer-dots, .mdc-linear-progress[dir=rtl]:not([dir=ltr]) .mdc-linear-progress__buffer-dots {\n animation: mdc-linear-progress-buffering-reverse 250ms infinite linear;\n transform: rotate(0);\n}\n[dir=rtl] .mdc-linear-progress:not([dir=ltr]).mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar, .mdc-linear-progress[dir=rtl]:not([dir=ltr]).mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar {\n /* @noflip */\n right: -145.166611%;\n /* @noflip */\n left: auto;\n}\n[dir=rtl] .mdc-linear-progress:not([dir=ltr]).mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar, .mdc-linear-progress[dir=rtl]:not([dir=ltr]).mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar {\n /* @noflip */\n right: -54.888891%;\n /* @noflip */\n left: auto;\n}\n.mdc-linear-progress--closed {\n opacity: 0;\n}\n.mdc-linear-progress--closed-animation-off .mdc-linear-progress__buffer-dots {\n animation: none;\n}\n.mdc-linear-progress--closed-animation-off.mdc-linear-progress--indeterminate .mdc-linear-progress__bar,\n.mdc-linear-progress--closed-animation-off.mdc-linear-progress--indeterminate .mdc-linear-progress__bar .mdc-linear-progress__bar-inner {\n animation: none;\n}\n\n.mdc-linear-progress__bar-inner {\n border-color: #6200ee;\n /* @alternate */\n border-color: var(--mdc-theme-primary, #6200ee);\n}\n\n.mdc-linear-progress__buffer-dots {\n background-image: url(\"data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' enable-background='new 0 0 5 2' xml:space='preserve' viewBox='0 0 5 2' preserveAspectRatio='none slice'%3E%3Ccircle cx='1' cy='1' r='1' fill='%23e6e6e6'/%3E%3C/svg%3E\");\n}\n\n.mdc-linear-progress__buffer-bar {\n background-color: #e6e6e6;\n}\n\n.mdc-list {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle1-font-size, 1rem);\n line-height: 1.75rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle1-line-height, 1.75rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle1-font-weight, 400);\n letter-spacing: 0.009375em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle1-text-transform, inherit);\n /* @alternate */\n line-height: 1.5rem;\n margin: 0;\n padding: 8px 0;\n list-style-type: none;\n color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));\n}\n.mdc-list:focus {\n outline: none;\n}\n\n.mdc-list-item {\n height: 48px;\n}\n\n.mdc-list-item__secondary-text {\n color: rgba(0, 0, 0, 0.54);\n /* @alternate */\n color: var(--mdc-theme-text-secondary-on-background, rgba(0, 0, 0, 0.54));\n}\n\n.mdc-list-item__graphic {\n background-color: transparent;\n}\n\n.mdc-list-item__graphic {\n color: rgba(0, 0, 0, 0.38);\n /* @alternate */\n color: var(--mdc-theme-text-icon-on-background, rgba(0, 0, 0, 0.38));\n}\n\n.mdc-list-item__meta {\n color: rgba(0, 0, 0, 0.38);\n /* @alternate */\n color: var(--mdc-theme-text-hint-on-background, rgba(0, 0, 0, 0.38));\n}\n\n.mdc-list-group__subheader {\n color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));\n}\n\n.mdc-list-item--disabled .mdc-list-item__text {\n opacity: 0.38;\n}\n\n.mdc-list-item--disabled .mdc-list-item__text,\n.mdc-list-item--disabled .mdc-list-item__primary-text,\n.mdc-list-item--disabled .mdc-list-item__secondary-text {\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n}\n\n.mdc-list-item--selected,\n.mdc-list-item--activated {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-list-item--selected .mdc-list-item__graphic,\n.mdc-list-item--activated .mdc-list-item__graphic {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n\n.mdc-list--dense {\n padding-top: 4px;\n padding-bottom: 4px;\n font-size: 0.812rem;\n}\n\n.mdc-list-item {\n display: flex;\n position: relative;\n align-items: center;\n justify-content: flex-start;\n overflow: hidden;\n padding: 0;\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n height: 48px;\n}\n.mdc-list-item:focus {\n outline: none;\n}\n.mdc-list-item:not(.mdc-list-item--selected):focus::before, .mdc-list-item.mdc-ripple-upgraded--background-focused::before {\n position: absolute;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n border: 1px solid transparent;\n border-radius: inherit;\n content: \"\";\n}\n.mdc-list-item.mdc-list-item--selected::before {\n position: absolute;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n border: 3px double transparent;\n border-radius: inherit;\n content: \"\";\n}\n[dir=rtl] .mdc-list-item, .mdc-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-list--icon-list .mdc-list-item {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n height: 56px;\n}\n[dir=rtl] .mdc-list--icon-list .mdc-list-item, .mdc-list--icon-list .mdc-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-list--avatar-list .mdc-list-item {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n height: 56px;\n}\n[dir=rtl] .mdc-list--avatar-list .mdc-list-item, .mdc-list--avatar-list .mdc-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-list--thumbnail-list .mdc-list-item {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n height: 56px;\n}\n[dir=rtl] .mdc-list--thumbnail-list .mdc-list-item, .mdc-list--thumbnail-list .mdc-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-list--image-list .mdc-list-item {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n height: 72px;\n}\n[dir=rtl] .mdc-list--image-list .mdc-list-item, .mdc-list--image-list .mdc-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-list--video-list .mdc-list-item {\n /* @noflip */\n padding-left: 0px;\n /* @noflip */\n padding-right: 16px;\n height: 72px;\n}\n[dir=rtl] .mdc-list--video-list .mdc-list-item, .mdc-list--video-list .mdc-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 0px;\n}\n\n.mdc-list--dense .mdc-list-item__graphic {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n width: 20px;\n height: 20px;\n}\n[dir=rtl] .mdc-list--dense .mdc-list-item__graphic, .mdc-list--dense .mdc-list-item__graphic[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n}\n\n.mdc-list-item__graphic {\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n fill: currentColor;\n object-fit: cover;\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 32px;\n width: 24px;\n height: 24px;\n}\n[dir=rtl] .mdc-list-item__graphic, .mdc-list-item__graphic[dir=rtl] {\n /* @noflip */\n margin-left: 32px;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-list--icon-list .mdc-list-item__graphic {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 32px;\n width: 24px;\n height: 24px;\n}\n[dir=rtl] .mdc-list--icon-list .mdc-list-item__graphic, .mdc-list--icon-list .mdc-list-item__graphic[dir=rtl] {\n /* @noflip */\n margin-left: 32px;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-list--avatar-list .mdc-list-item__graphic {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n width: 40px;\n height: 40px;\n border-radius: 50%;\n}\n[dir=rtl] .mdc-list--avatar-list .mdc-list-item__graphic, .mdc-list--avatar-list .mdc-list-item__graphic[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-list--thumbnail-list .mdc-list-item__graphic {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n width: 40px;\n height: 40px;\n}\n[dir=rtl] .mdc-list--thumbnail-list .mdc-list-item__graphic, .mdc-list--thumbnail-list .mdc-list-item__graphic[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-list--image-list .mdc-list-item__graphic {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n width: 56px;\n height: 56px;\n}\n[dir=rtl] .mdc-list--image-list .mdc-list-item__graphic, .mdc-list--image-list .mdc-list-item__graphic[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-list--video-list .mdc-list-item__graphic {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n width: 100px;\n height: 56px;\n}\n[dir=rtl] .mdc-list--video-list .mdc-list-item__graphic, .mdc-list--video-list .mdc-list-item__graphic[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n}\n\n.mdc-list .mdc-list-item__graphic {\n display: inline-flex;\n}\n\n.mdc-list-item__meta {\n /* @noflip */\n margin-left: auto;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-list-item__meta:not(.material-icons) {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.75rem;\n /* @alternate */\n font-size: var(--mdc-typography-caption-font-size, 0.75rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-caption-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-caption-font-weight, 400);\n letter-spacing: 0.0333333333em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-caption-letter-spacing, 0.0333333333em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-caption-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-caption-text-transform, inherit);\n}\n.mdc-list-item[dir=rtl] .mdc-list-item__meta, [dir=rtl] .mdc-list-item .mdc-list-item__meta {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: auto;\n}\n\n.mdc-list-item__text {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n\n.mdc-list-item__text[for] {\n pointer-events: none;\n}\n\n.mdc-list-item__primary-text {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 28px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n.mdc-list--video-list .mdc-list-item__primary-text, .mdc-list--image-list .mdc-list-item__primary-text, .mdc-list--thumbnail-list .mdc-list-item__primary-text, .mdc-list--avatar-list .mdc-list-item__primary-text, .mdc-list--icon-list .mdc-list-item__primary-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-list--video-list .mdc-list-item__primary-text::before, .mdc-list--image-list .mdc-list-item__primary-text::before, .mdc-list--thumbnail-list .mdc-list-item__primary-text::before, .mdc-list--avatar-list .mdc-list-item__primary-text::before, .mdc-list--icon-list .mdc-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-list--video-list .mdc-list-item__primary-text::after, .mdc-list--image-list .mdc-list-item__primary-text::after, .mdc-list--thumbnail-list .mdc-list-item__primary-text::after, .mdc-list--avatar-list .mdc-list-item__primary-text::after, .mdc-list--icon-list .mdc-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n.mdc-list--dense .mdc-list-item__primary-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-list--dense .mdc-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 24px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-list--dense .mdc-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n\n.mdc-list-item__secondary-text {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-list-item__secondary-text::before {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-list--dense .mdc-list-item__secondary-text {\n font-size: inherit;\n}\n\n.mdc-list--dense .mdc-list-item {\n height: 40px;\n}\n\n.mdc-list--two-line .mdc-list-item__text {\n align-self: flex-start;\n}\n\n.mdc-list--two-line .mdc-list-item {\n height: 64px;\n}\n.mdc-list--two-line.mdc-list--video-list .mdc-list-item, .mdc-list--two-line.mdc-list--image-list .mdc-list-item, .mdc-list--two-line.mdc-list--thumbnail-list .mdc-list-item, .mdc-list--two-line.mdc-list--avatar-list .mdc-list-item, .mdc-list--two-line.mdc-list--icon-list .mdc-list-item {\n height: 72px;\n}\n.mdc-list--two-line.mdc-list--icon-list .mdc-list-item__graphic {\n align-self: flex-start;\n margin-top: 16px;\n}\n\n.mdc-list--two-line.mdc-list--dense .mdc-list-item,\n.mdc-list--avatar-list.mdc-list--dense .mdc-list-item {\n height: 60px;\n}\n\n.mdc-list--avatar-list.mdc-list--dense .mdc-list-item__graphic {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n width: 36px;\n height: 36px;\n}\n[dir=rtl] .mdc-list--avatar-list.mdc-list--dense .mdc-list-item__graphic, .mdc-list--avatar-list.mdc-list--dense .mdc-list-item__graphic[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n}\n\n:not(.mdc-list-item--disabled).mdc-list-item {\n cursor: pointer;\n}\n\na.mdc-list-item {\n color: inherit;\n text-decoration: none;\n}\n\n.mdc-list-divider {\n height: 0;\n margin: 0;\n border: none;\n border-bottom-width: 1px;\n border-bottom-style: solid;\n}\n\n.mdc-list-divider {\n border-bottom-color: rgba(0, 0, 0, 0.12);\n}\n\n.mdc-list-divider--padded {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 32px);\n}\n[dir=rtl] .mdc-list-divider--padded, .mdc-list-divider--padded[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n\n.mdc-list-divider--inset {\n /* @noflip */\n margin-left: 72px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 72px);\n}\n[dir=rtl] .mdc-list-divider--inset, .mdc-list-divider--inset[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 72px;\n}\n\n.mdc-list-divider--inset.mdc-list-divider--padded {\n /* @noflip */\n margin-left: 72px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 88px);\n}\n[dir=rtl] .mdc-list-divider--inset.mdc-list-divider--padded, .mdc-list-divider--inset.mdc-list-divider--padded[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 72px;\n}\n\n.mdc-list .mdc-list-divider--inset-leading {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 16px);\n}\n[dir=rtl] .mdc-list .mdc-list-divider--inset-leading, .mdc-list .mdc-list-divider--inset-leading[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-list .mdc-list-divider--inset-trailing {\n width: calc(100% - 16px);\n}\n.mdc-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 32px);\n}\n[dir=rtl] .mdc-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing, .mdc-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-list .mdc-list-divider--inset-leading.mdc-list-divider--padding {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 16px);\n}\n[dir=rtl] .mdc-list .mdc-list-divider--inset-leading.mdc-list-divider--padding, .mdc-list .mdc-list-divider--inset-leading.mdc-list-divider--padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 32px);\n}\n[dir=rtl] .mdc-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding, .mdc-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n\n.mdc-list--icon-list .mdc-list-divider--inset-leading {\n /* @noflip */\n margin-left: 72px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 72px);\n}\n[dir=rtl] .mdc-list--icon-list .mdc-list-divider--inset-leading, .mdc-list--icon-list .mdc-list-divider--inset-leading[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 72px;\n}\n.mdc-list--icon-list .mdc-list-divider--inset-trailing {\n width: calc(100% - 16px);\n}\n.mdc-list--icon-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing {\n /* @noflip */\n margin-left: 72px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 88px);\n}\n[dir=rtl] .mdc-list--icon-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing, .mdc-list--icon-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 72px;\n}\n.mdc-list--icon-list .mdc-list-divider--inset-leading.mdc-list-divider--padding {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 16px);\n}\n[dir=rtl] .mdc-list--icon-list .mdc-list-divider--inset-leading.mdc-list-divider--padding, .mdc-list--icon-list .mdc-list-divider--inset-leading.mdc-list-divider--padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-list--icon-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 32px);\n}\n[dir=rtl] .mdc-list--icon-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding, .mdc-list--icon-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n\n.mdc-list--avatar-list .mdc-list-divider--inset-leading {\n /* @noflip */\n margin-left: 72px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 72px);\n}\n[dir=rtl] .mdc-list--avatar-list .mdc-list-divider--inset-leading, .mdc-list--avatar-list .mdc-list-divider--inset-leading[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 72px;\n}\n.mdc-list--avatar-list .mdc-list-divider--inset-trailing {\n width: calc(100% - 16px);\n}\n.mdc-list--avatar-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing {\n /* @noflip */\n margin-left: 72px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 88px);\n}\n[dir=rtl] .mdc-list--avatar-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing, .mdc-list--avatar-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 72px;\n}\n.mdc-list--avatar-list .mdc-list-divider--inset-leading.mdc-list-divider--padding {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 16px);\n}\n[dir=rtl] .mdc-list--avatar-list .mdc-list-divider--inset-leading.mdc-list-divider--padding, .mdc-list--avatar-list .mdc-list-divider--inset-leading.mdc-list-divider--padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-list--avatar-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 32px);\n}\n[dir=rtl] .mdc-list--avatar-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding, .mdc-list--avatar-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n\n.mdc-list--thumbnail-list .mdc-list-divider--inset-leading {\n /* @noflip */\n margin-left: 72px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 72px);\n}\n[dir=rtl] .mdc-list--thumbnail-list .mdc-list-divider--inset-leading, .mdc-list--thumbnail-list .mdc-list-divider--inset-leading[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 72px;\n}\n.mdc-list--thumbnail-list .mdc-list-divider--inset-trailing {\n width: calc(100% - 16px);\n}\n.mdc-list--thumbnail-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing {\n /* @noflip */\n margin-left: 72px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 88px);\n}\n[dir=rtl] .mdc-list--thumbnail-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing, .mdc-list--thumbnail-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 72px;\n}\n.mdc-list--thumbnail-list .mdc-list-divider--inset-leading.mdc-list-divider--padding {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 16px);\n}\n[dir=rtl] .mdc-list--thumbnail-list .mdc-list-divider--inset-leading.mdc-list-divider--padding, .mdc-list--thumbnail-list .mdc-list-divider--inset-leading.mdc-list-divider--padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-list--thumbnail-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 32px);\n}\n[dir=rtl] .mdc-list--thumbnail-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding, .mdc-list--thumbnail-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n\n.mdc-list--image-list .mdc-list-divider--inset-leading {\n /* @noflip */\n margin-left: 88px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 88px);\n}\n[dir=rtl] .mdc-list--image-list .mdc-list-divider--inset-leading, .mdc-list--image-list .mdc-list-divider--inset-leading[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 88px;\n}\n.mdc-list--image-list .mdc-list-divider--inset-trailing {\n width: calc(100% - 16px);\n}\n.mdc-list--image-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing {\n /* @noflip */\n margin-left: 88px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 104px);\n}\n[dir=rtl] .mdc-list--image-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing, .mdc-list--image-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 88px;\n}\n.mdc-list--image-list .mdc-list-divider--inset-leading.mdc-list-divider--padding {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 16px);\n}\n[dir=rtl] .mdc-list--image-list .mdc-list-divider--inset-leading.mdc-list-divider--padding, .mdc-list--image-list .mdc-list-divider--inset-leading.mdc-list-divider--padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-list--image-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 32px);\n}\n[dir=rtl] .mdc-list--image-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding, .mdc-list--image-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n\n.mdc-list--video-list .mdc-list-divider--inset-leading {\n /* @noflip */\n margin-left: 116px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 116px);\n}\n[dir=rtl] .mdc-list--video-list .mdc-list-divider--inset-leading, .mdc-list--video-list .mdc-list-divider--inset-leading[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 116px;\n}\n.mdc-list--video-list .mdc-list-divider--inset-trailing {\n width: calc(100% - 16px);\n}\n.mdc-list--video-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing {\n /* @noflip */\n margin-left: 116px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 132px);\n}\n[dir=rtl] .mdc-list--video-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing, .mdc-list--video-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 116px;\n}\n.mdc-list--video-list .mdc-list-divider--inset-leading.mdc-list-divider--padding {\n /* @noflip */\n margin-left: 0px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 0px);\n}\n[dir=rtl] .mdc-list--video-list .mdc-list-divider--inset-leading.mdc-list-divider--padding, .mdc-list--video-list .mdc-list-divider--inset-leading.mdc-list-divider--padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 0px;\n}\n.mdc-list--video-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding {\n /* @noflip */\n margin-left: 0px;\n /* @noflip */\n margin-right: 0;\n width: calc(100% - 16px);\n}\n[dir=rtl] .mdc-list--video-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding, .mdc-list--video-list .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 0px;\n}\n\n.mdc-list-group .mdc-list {\n padding: 0;\n}\n\n.mdc-list-group__subheader {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle1-font-size, 1rem);\n line-height: 1.75rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle1-line-height, 1.75rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle1-font-weight, 400);\n letter-spacing: 0.009375em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle1-text-transform, inherit);\n margin: calc( (3rem - 1.5rem) / 2 ) 16px;\n}\n\n.mdc-evolution-list-item__primary-text {\n color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));\n}\n\n.mdc-evolution-list-item__secondary-text {\n color: rgba(0, 0, 0, 0.54);\n /* @alternate */\n color: var(--mdc-theme-text-secondary-on-background, rgba(0, 0, 0, 0.54));\n}\n\n.mdc-evolution-list-item--with-leading-icon .mdc-evolution-list-item__start,\n.mdc-evolution-list-item--with-trailing-icon .mdc-evolution-list-item__end {\n background-color: transparent;\n}\n\n.mdc-evolution-list-item--with-leading-icon .mdc-evolution-list-item__start,\n.mdc-evolution-list-item--with-trailing-icon .mdc-evolution-list-item__end {\n color: rgba(0, 0, 0, 0.38);\n /* @alternate */\n color: var(--mdc-theme-text-icon-on-background, rgba(0, 0, 0, 0.38));\n}\n\n.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n color: rgba(0, 0, 0, 0.38);\n /* @alternate */\n color: var(--mdc-theme-text-hint-on-background, rgba(0, 0, 0, 0.38));\n}\n\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__start,\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__content,\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__end {\n opacity: 0.38;\n}\n\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__primary-text {\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n}\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__secondary-text {\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n}\n.mdc-evolution-list-item--disabled.mdc-evolution-list-item--with-leading-icon .mdc-evolution-list-item__start {\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n}\n.mdc-evolution-list-item--disabled.mdc-evolution-list-item--with-trailing-icon .mdc-evolution-list-item__end {\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n}\n.mdc-evolution-list-item--disabled.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n}\n\n.mdc-evolution-list-item--selected .mdc-evolution-list-item__primary-text,\n.mdc-evolution-list-item--activated .mdc-evolution-list-item__primary-text {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-evolution-list-item--selected.mdc-evolution-list-item--with-leading-icon .mdc-evolution-list-item__start,\n.mdc-evolution-list-item--activated.mdc-evolution-list-item--with-leading-icon .mdc-evolution-list-item__start {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n\n.mdc-list-group__subheader {\n color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));\n}\n\n@media screen and (-ms-high-contrast: active) {\n .mdc-evolution-list-divider::after {\n content: \"\";\n display: block;\n border-bottom-width: 1px;\n border-bottom-style: solid;\n border-bottom-color: white;\n }\n}\n.mdc-evolution-list {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle1-font-size, 1rem);\n line-height: 1.75rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle1-line-height, 1.75rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle1-font-weight, 400);\n letter-spacing: 0.009375em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle1-text-transform, inherit);\n /* @alternate */\n line-height: 1.5rem;\n margin: 0;\n padding: 8px 0;\n list-style-type: none;\n}\n.mdc-evolution-list:focus {\n outline: none;\n}\n\n.mdc-evolution-list-item {\n display: flex;\n position: relative;\n align-items: center;\n justify-content: flex-start;\n overflow: hidden;\n padding: 0;\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n align-items: stretch;\n cursor: pointer;\n}\n.mdc-evolution-list-item:focus {\n outline: none;\n}\n[dir=rtl] .mdc-evolution-list-item, .mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-evolution-list-item.mdc-evolution-list-item--with-one-line {\n height: 48px;\n}\n.mdc-evolution-list-item.mdc-evolution-list-item--with-two-lines {\n height: 64px;\n}\n.mdc-evolution-list-item.mdc-evolution-list-item--with-three-lines {\n height: 88px;\n}\n.mdc-evolution-list-item.mdc-evolution-list-item--with-one-line .mdc-evolution-list-item__start {\n align-self: center;\n margin-top: 0;\n}\n.mdc-evolution-list-item.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__start {\n align-self: flex-start;\n margin-top: 16px;\n}\n.mdc-evolution-list-item.mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__start {\n align-self: flex-start;\n margin-top: 16px;\n}\n.mdc-evolution-list-item.mdc-evolution-list-item--with-one-line .mdc-evolution-list-item__end {\n align-self: center;\n margin-top: 0;\n}\n.mdc-evolution-list-item.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__end {\n align-self: center;\n margin-top: 0;\n}\n.mdc-evolution-list-item.mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__end {\n align-self: flex-start;\n margin-top: 16px;\n}\n.mdc-evolution-list-item.mdc-evolution-list-item--disabled, .mdc-evolution-list-item.mdc-evolution-list-item--non-interactive {\n cursor: auto;\n}\n.mdc-evolution-list-item:not(.mdc-evolution-list-item--selected):focus::before, .mdc-evolution-list-item.mdc-ripple-upgraded--background-focused::before {\n position: absolute;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n border: 1px solid transparent;\n border-radius: inherit;\n content: \"\";\n}\n.mdc-evolution-list-item.mdc-evolution-list-item--selected::before {\n position: absolute;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n border: 3px double transparent;\n border-radius: inherit;\n content: \"\";\n}\n\na.mdc-evolution-list-item {\n color: inherit;\n text-decoration: none;\n}\n\n.mdc-evolution-list-item__start {\n fill: currentColor;\n flex-shrink: 0;\n}\n\n.mdc-evolution-list-item__end {\n flex-shrink: 0;\n}\n\n.mdc-evolution-list-item__content {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n align-self: center;\n flex: 1;\n}\n.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__content, .mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__content {\n align-self: stretch;\n}\n.mdc-evolution-list-item__content[for] {\n pointer-events: none;\n}\n\n.mdc-evolution-list-item__primary-text {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle1-font-size, 1rem);\n line-height: 1.75rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle1-line-height, 1.75rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle1-font-weight, 400);\n letter-spacing: 0.009375em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle1-text-transform, inherit);\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text, .mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__primary-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::before, .mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 28px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::after, .mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n\n.mdc-evolution-list-item__secondary-text {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-evolution-list-item__secondary-text::before {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: 0;\n}\n\n.mdc-evolution-list-item__overline-text {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__overline-text, .mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__overline-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__overline-text::before, .mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__overline-text::before {\n display: inline-block;\n width: 0;\n height: 24px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__overline-text::after, .mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__overline-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n\n.mdc-evolution-list-item--with-leading-avatar.mdc-evolution-list-item {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-avatar.mdc-evolution-list-item, .mdc-evolution-list-item--with-leading-avatar.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-evolution-list-item--with-leading-avatar .mdc-evolution-list-item__start {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-avatar .mdc-evolution-list-item__start, .mdc-evolution-list-item--with-leading-avatar .mdc-evolution-list-item__start[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-evolution-list-item--with-leading-avatar .mdc-evolution-list-item__start {\n width: 40px;\n height: 40px;\n}\n.mdc-evolution-list-item--with-leading-avatar.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-evolution-list-item--with-leading-avatar.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-avatar.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n.mdc-evolution-list-item--with-leading-avatar.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-evolution-list-item--with-leading-avatar.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-avatar.mdc-evolution-list-item--with-one-line {\n height: 56px;\n}\n.mdc-evolution-list-item--with-leading-avatar.mdc-evolution-list-item--with-two-lines {\n height: 72px;\n}\n.mdc-evolution-list-item--with-leading-avatar .mdc-evolution-list-item__start {\n border-radius: 50%;\n}\n\n.mdc-evolution-list-item--with-leading-icon .mdc-evolution-list-item__start {\n width: 24px;\n height: 24px;\n}\n.mdc-evolution-list-item--with-leading-icon.mdc-evolution-list-item {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-icon.mdc-evolution-list-item, .mdc-evolution-list-item--with-leading-icon.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-evolution-list-item--with-leading-icon .mdc-evolution-list-item__start {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 32px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-icon .mdc-evolution-list-item__start, .mdc-evolution-list-item--with-leading-icon .mdc-evolution-list-item__start[dir=rtl] {\n /* @noflip */\n margin-left: 32px;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-evolution-list-item--with-leading-icon.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-evolution-list-item--with-leading-icon.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-icon.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n.mdc-evolution-list-item--with-leading-icon.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-evolution-list-item--with-leading-icon.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-icon.mdc-evolution-list-item--with-one-line {\n height: 56px;\n}\n.mdc-evolution-list-item--with-leading-icon.mdc-evolution-list-item--with-two-lines {\n height: 72px;\n}\n\n.mdc-evolution-list-item--with-leading-thumbnail.mdc-evolution-list-item {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-thumbnail.mdc-evolution-list-item, .mdc-evolution-list-item--with-leading-thumbnail.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-evolution-list-item--with-leading-thumbnail .mdc-evolution-list-item__start {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-thumbnail .mdc-evolution-list-item__start, .mdc-evolution-list-item--with-leading-thumbnail .mdc-evolution-list-item__start[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-evolution-list-item--with-leading-thumbnail .mdc-evolution-list-item__start {\n width: 40px;\n height: 40px;\n}\n.mdc-evolution-list-item--with-leading-thumbnail.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-evolution-list-item--with-leading-thumbnail.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-thumbnail.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n.mdc-evolution-list-item--with-leading-thumbnail.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-evolution-list-item--with-leading-thumbnail.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-thumbnail.mdc-evolution-list-item--with-one-line {\n height: 56px;\n}\n.mdc-evolution-list-item--with-leading-thumbnail.mdc-evolution-list-item--with-two-lines {\n height: 72px;\n}\n\n.mdc-evolution-list-item--with-leading-image.mdc-evolution-list-item {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-image.mdc-evolution-list-item, .mdc-evolution-list-item--with-leading-image.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-evolution-list-item--with-leading-image .mdc-evolution-list-item__start {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-image .mdc-evolution-list-item__start, .mdc-evolution-list-item--with-leading-image .mdc-evolution-list-item__start[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-evolution-list-item--with-leading-image .mdc-evolution-list-item__start {\n width: 56px;\n height: 56px;\n}\n.mdc-evolution-list-item--with-leading-image.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-evolution-list-item--with-leading-image.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-image.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n.mdc-evolution-list-item--with-leading-image.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-evolution-list-item--with-leading-image.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-image.mdc-evolution-list-item--with-one-line {\n height: 72px;\n}\n.mdc-evolution-list-item--with-leading-image.mdc-evolution-list-item--with-two-lines {\n height: 72px;\n}\n\n.mdc-evolution-list-item--with-leading-video.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__start {\n align-self: flex-start;\n margin-top: 8px;\n}\n.mdc-evolution-list-item--with-leading-video.mdc-evolution-list-item {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-video.mdc-evolution-list-item, .mdc-evolution-list-item--with-leading-video.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-evolution-list-item--with-leading-video .mdc-evolution-list-item__start {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 16px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-video .mdc-evolution-list-item__start, .mdc-evolution-list-item--with-leading-video .mdc-evolution-list-item__start[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 0;\n}\n.mdc-evolution-list-item--with-leading-video .mdc-evolution-list-item__start {\n width: 100px;\n height: 56px;\n}\n.mdc-evolution-list-item--with-leading-video.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-evolution-list-item--with-leading-video.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-video.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n.mdc-evolution-list-item--with-leading-video.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-evolution-list-item--with-leading-video.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-video.mdc-evolution-list-item--with-one-line {\n height: 72px;\n}\n.mdc-evolution-list-item--with-leading-video.mdc-evolution-list-item--with-two-lines {\n height: 72px;\n}\n\n.mdc-evolution-list-item--with-leading-checkbox.mdc-evolution-list-item {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-checkbox.mdc-evolution-list-item, .mdc-evolution-list-item--with-leading-checkbox.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-evolution-list-item--with-leading-checkbox .mdc-evolution-list-item__start {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 24px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-checkbox .mdc-evolution-list-item__start, .mdc-evolution-list-item--with-leading-checkbox .mdc-evolution-list-item__start[dir=rtl] {\n /* @noflip */\n margin-left: 24px;\n /* @noflip */\n margin-right: 8px;\n}\n.mdc-evolution-list-item--with-leading-checkbox .mdc-evolution-list-item__start {\n width: 40px;\n height: 40px;\n}\n.mdc-evolution-list-item--with-leading-checkbox.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__start {\n align-self: flex-start;\n margin-top: 8px;\n}\n.mdc-evolution-list-item--with-leading-checkbox.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-evolution-list-item--with-leading-checkbox.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-checkbox.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n.mdc-evolution-list-item--with-leading-checkbox.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-evolution-list-item--with-leading-checkbox.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-checkbox.mdc-evolution-list-item--with-one-line {\n height: 56px;\n}\n.mdc-evolution-list-item--with-leading-checkbox.mdc-evolution-list-item--with-two-lines {\n height: 72px;\n}\n\n.mdc-evolution-list-item--with-leading-radio.mdc-evolution-list-item {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-radio.mdc-evolution-list-item, .mdc-evolution-list-item--with-leading-radio.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-evolution-list-item--with-leading-radio .mdc-evolution-list-item__start {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 24px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-radio .mdc-evolution-list-item__start, .mdc-evolution-list-item--with-leading-radio .mdc-evolution-list-item__start[dir=rtl] {\n /* @noflip */\n margin-left: 24px;\n /* @noflip */\n margin-right: 8px;\n}\n.mdc-evolution-list-item--with-leading-radio .mdc-evolution-list-item__start {\n width: 40px;\n height: 40px;\n}\n.mdc-evolution-list-item--with-leading-radio.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__start {\n align-self: flex-start;\n margin-top: 8px;\n}\n.mdc-evolution-list-item--with-leading-radio.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-evolution-list-item--with-leading-radio.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-radio.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n.mdc-evolution-list-item--with-leading-radio.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-evolution-list-item--with-leading-radio.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-radio.mdc-evolution-list-item--with-one-line {\n height: 56px;\n}\n.mdc-evolution-list-item--with-leading-radio.mdc-evolution-list-item--with-two-lines {\n height: 72px;\n}\n\n.mdc-evolution-list-item--with-leading-switch.mdc-evolution-list-item {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-switch.mdc-evolution-list-item, .mdc-evolution-list-item--with-leading-switch.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-evolution-list-item--with-leading-switch .mdc-evolution-list-item__start {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-leading-switch .mdc-evolution-list-item__start, .mdc-evolution-list-item--with-leading-switch .mdc-evolution-list-item__start[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-evolution-list-item--with-leading-switch .mdc-evolution-list-item__start {\n width: 36px;\n height: 20px;\n}\n.mdc-evolution-list-item--with-leading-switch.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__start {\n align-self: flex-start;\n margin-top: 16px;\n}\n.mdc-evolution-list-item--with-leading-switch.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin-bottom: -20px;\n}\n.mdc-evolution-list-item--with-leading-switch.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-switch.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__primary-text::after {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: -20px;\n}\n.mdc-evolution-list-item--with-leading-switch.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-evolution-list-item--with-leading-switch.mdc-evolution-list-item--with-two-lines.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end::before {\n display: inline-block;\n width: 0;\n height: 32px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-leading-switch.mdc-evolution-list-item--with-one-line {\n height: 56px;\n}\n.mdc-evolution-list-item--with-leading-switch.mdc-evolution-list-item--with-two-lines {\n height: 72px;\n}\n\n.mdc-evolution-list-item--with-trailing-icon.mdc-evolution-list-item {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-evolution-list-item--with-trailing-icon.mdc-evolution-list-item, .mdc-evolution-list-item--with-trailing-icon.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n.mdc-evolution-list-item--with-trailing-icon .mdc-evolution-list-item__end {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-trailing-icon .mdc-evolution-list-item__end, .mdc-evolution-list-item--with-trailing-icon .mdc-evolution-list-item__end[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-evolution-list-item--with-trailing-icon .mdc-evolution-list-item__end {\n width: 24px;\n height: 24px;\n}\n\n.mdc-evolution-list-item--with-trailing-meta.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__end {\n align-self: flex-start;\n margin-top: 0;\n}\n.mdc-evolution-list-item--with-trailing-meta.mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__end {\n align-self: flex-start;\n margin-top: 0;\n}\n.mdc-evolution-list-item--with-trailing-meta.mdc-evolution-list-item {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-evolution-list-item--with-trailing-meta.mdc-evolution-list-item, .mdc-evolution-list-item--with-trailing-meta.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n /* @noflip */\n margin-left: 28px;\n /* @noflip */\n margin-right: 16px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end, .mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 28px;\n}\n.mdc-evolution-list-item--with-trailing-meta.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__end {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-evolution-list-item--with-trailing-meta.mdc-evolution-list-item--with-two-lines .mdc-evolution-list-item__end::before {\n display: inline-block;\n width: 0;\n height: 28px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-trailing-meta.mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__end {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n}\n.mdc-evolution-list-item--with-trailing-meta.mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__end::before {\n display: inline-block;\n width: 0;\n height: 28px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-evolution-list-item--with-trailing-meta .mdc-evolution-list-item__end {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.75rem;\n /* @alternate */\n font-size: var(--mdc-typography-caption-font-size, 0.75rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-caption-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-caption-font-weight, 400);\n letter-spacing: 0.0333333333em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-caption-letter-spacing, 0.0333333333em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-caption-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-caption-text-transform, inherit);\n}\n\n.mdc-evolution-list-item--with-trailing-checkbox.mdc-evolution-list-item {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-evolution-list-item--with-trailing-checkbox.mdc-evolution-list-item, .mdc-evolution-list-item--with-trailing-checkbox.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n.mdc-evolution-list-item--with-trailing-checkbox .mdc-evolution-list-item__end {\n /* @noflip */\n margin-left: 24px;\n /* @noflip */\n margin-right: 8px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-trailing-checkbox .mdc-evolution-list-item__end, .mdc-evolution-list-item--with-trailing-checkbox .mdc-evolution-list-item__end[dir=rtl] {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 24px;\n}\n.mdc-evolution-list-item--with-trailing-checkbox .mdc-evolution-list-item__end {\n width: 40px;\n height: 40px;\n}\n.mdc-evolution-list-item--with-trailing-checkbox.mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__end {\n align-self: flex-start;\n margin-top: 8px;\n}\n\n.mdc-evolution-list-item--with-trailing-radio.mdc-evolution-list-item {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-evolution-list-item--with-trailing-radio.mdc-evolution-list-item, .mdc-evolution-list-item--with-trailing-radio.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n.mdc-evolution-list-item--with-trailing-radio .mdc-evolution-list-item__end {\n /* @noflip */\n margin-left: 24px;\n /* @noflip */\n margin-right: 8px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-trailing-radio .mdc-evolution-list-item__end, .mdc-evolution-list-item--with-trailing-radio .mdc-evolution-list-item__end[dir=rtl] {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 24px;\n}\n.mdc-evolution-list-item--with-trailing-radio .mdc-evolution-list-item__end {\n width: 40px;\n height: 40px;\n}\n.mdc-evolution-list-item--with-trailing-radio.mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__end {\n align-self: flex-start;\n margin-top: 8px;\n}\n\n.mdc-evolution-list-item--with-trailing-switch.mdc-evolution-list-item {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-evolution-list-item--with-trailing-switch.mdc-evolution-list-item, .mdc-evolution-list-item--with-trailing-switch.mdc-evolution-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: auto;\n}\n.mdc-evolution-list-item--with-trailing-switch .mdc-evolution-list-item__end {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n[dir=rtl] .mdc-evolution-list-item--with-trailing-switch .mdc-evolution-list-item__end, .mdc-evolution-list-item--with-trailing-switch .mdc-evolution-list-item__end[dir=rtl] {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 16px;\n}\n.mdc-evolution-list-item--with-trailing-switch .mdc-evolution-list-item__end {\n width: 36px;\n height: 20px;\n}\n.mdc-evolution-list-item--with-trailing-switch.mdc-evolution-list-item--with-three-lines .mdc-evolution-list-item__end {\n align-self: flex-start;\n margin-top: 16px;\n}\n\n.mdc-evolution-list-group .mdc-list {\n padding: 0;\n}\n\n.mdc-evolution-list-group__subheader {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle1-font-size, 1rem);\n line-height: 1.75rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle1-line-height, 1.75rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle1-font-weight, 400);\n letter-spacing: 0.009375em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle1-text-transform, inherit);\n margin: calc( (3rem - 1.5rem) / 2 ) 16px;\n}\n\n.mdc-evolution-list-divider {\n background-color: rgba(0, 0, 0, 0.12);\n}\n\n.mdc-evolution-list-divider {\n height: 1px;\n padding: 0;\n background-clip: content-box;\n}\n.mdc-evolution-list-divider.mdc-evolution-list-divider--with-leading-padding {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-divider.mdc-evolution-list-divider--with-leading-padding, .mdc-evolution-list-divider.mdc-evolution-list-divider--with-leading-padding[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-evolution-list-divider.mdc-evolution-list-divider--with-leading-inset {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-divider.mdc-evolution-list-divider--with-leading-inset, .mdc-evolution-list-divider.mdc-evolution-list-divider--with-leading-inset[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-evolution-list-divider.mdc-evolution-list-divider--with-trailing-inset {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 16px;\n}\n[dir=rtl] .mdc-evolution-list-divider.mdc-evolution-list-divider--with-trailing-inset, .mdc-evolution-list-divider.mdc-evolution-list-divider--with-trailing-inset[dir=rtl] {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: auto;\n}\n\n.mdc-evolution-list-divider--with-leading-icon.mdc-evolution-list-divider--with-leading-inset {\n /* @noflip */\n padding-left: 72px;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-divider--with-leading-icon.mdc-evolution-list-divider--with-leading-inset, .mdc-evolution-list-divider--with-leading-icon.mdc-evolution-list-divider--with-leading-inset[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 72px;\n}\n\n.mdc-evolution-list-divider--with-leading-image.mdc-evolution-list-divider--with-leading-inset {\n /* @noflip */\n padding-left: 88px;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-divider--with-leading-image.mdc-evolution-list-divider--with-leading-inset, .mdc-evolution-list-divider--with-leading-image.mdc-evolution-list-divider--with-leading-inset[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 88px;\n}\n\n.mdc-evolution-list-divider--with-leading-thumbnail.mdc-evolution-list-divider--with-leading-inset {\n /* @noflip */\n padding-left: 72px;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-divider--with-leading-thumbnail.mdc-evolution-list-divider--with-leading-inset, .mdc-evolution-list-divider--with-leading-thumbnail.mdc-evolution-list-divider--with-leading-inset[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 72px;\n}\n\n.mdc-evolution-list-divider--with-leading-video.mdc-evolution-list-divider--with-leading-padding {\n /* @noflip */\n padding-left: 0px;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-divider--with-leading-video.mdc-evolution-list-divider--with-leading-padding, .mdc-evolution-list-divider--with-leading-video.mdc-evolution-list-divider--with-leading-padding[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 0px;\n}\n.mdc-evolution-list-divider--with-leading-video.mdc-evolution-list-divider--with-leading-inset {\n /* @noflip */\n padding-left: 116px;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-divider--with-leading-video.mdc-evolution-list-divider--with-leading-inset, .mdc-evolution-list-divider--with-leading-video.mdc-evolution-list-divider--with-leading-inset[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 116px;\n}\n\n.mdc-evolution-list-divider--with-leading-avatar.mdc-evolution-list-divider--with-leading-inset {\n /* @noflip */\n padding-left: 72px;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-divider--with-leading-avatar.mdc-evolution-list-divider--with-leading-inset, .mdc-evolution-list-divider--with-leading-avatar.mdc-evolution-list-divider--with-leading-inset[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 72px;\n}\n\n.mdc-evolution-list-divider--with-leading-checkbox.mdc-evolution-list-divider--with-leading-inset {\n /* @noflip */\n padding-left: 72px;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-divider--with-leading-checkbox.mdc-evolution-list-divider--with-leading-inset, .mdc-evolution-list-divider--with-leading-checkbox.mdc-evolution-list-divider--with-leading-inset[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 72px;\n}\n\n.mdc-evolution-list-divider--with-leading-switch.mdc-evolution-list-divider--with-leading-inset {\n /* @noflip */\n padding-left: 84px;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-divider--with-leading-switch.mdc-evolution-list-divider--with-leading-inset, .mdc-evolution-list-divider--with-leading-switch.mdc-evolution-list-divider--with-leading-inset[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 84px;\n}\n\n.mdc-evolution-list-divider--with-leading-radio.mdc-evolution-list-divider--with-leading-inset {\n /* @noflip */\n padding-left: 72px;\n /* @noflip */\n padding-right: auto;\n}\n[dir=rtl] .mdc-evolution-list-divider--with-leading-radio.mdc-evolution-list-divider--with-leading-inset, .mdc-evolution-list-divider--with-leading-radio.mdc-evolution-list-divider--with-leading-inset[dir=rtl] {\n /* @noflip */\n padding-left: auto;\n /* @noflip */\n padding-right: 72px;\n}\n\n:not(.mdc-list-item--disabled).mdc-list-item {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n:not(.mdc-list-item--disabled).mdc-list-item .mdc-list-item__ripple::before,\n:not(.mdc-list-item--disabled).mdc-list-item .mdc-list-item__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n:not(.mdc-list-item--disabled).mdc-list-item .mdc-list-item__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n:not(.mdc-list-item--disabled).mdc-list-item .mdc-list-item__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n:not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded .mdc-list-item__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n:not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded .mdc-list-item__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n:not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded--unbounded .mdc-list-item__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n:not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded--foreground-activation .mdc-list-item__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n:not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded--foreground-deactivation .mdc-list-item__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n:not(.mdc-list-item--disabled).mdc-list-item .mdc-list-item__ripple::before,\n:not(.mdc-list-item--disabled).mdc-list-item .mdc-list-item__ripple::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n:not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded .mdc-list-item__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n:not(.mdc-list-item--disabled).mdc-list-item .mdc-list-item__ripple::before, :not(.mdc-list-item--disabled).mdc-list-item .mdc-list-item__ripple::after {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-ripple-color, #000);\n}\n:not(.mdc-list-item--disabled).mdc-list-item:hover .mdc-list-item__ripple::before, :not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-surface--hover .mdc-list-item__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n:not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded--background-focused .mdc-list-item__ripple::before, :not(.mdc-list-item--disabled).mdc-list-item:not(.mdc-ripple-upgraded):focus .mdc-list-item__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n:not(.mdc-list-item--disabled).mdc-list-item:not(.mdc-ripple-upgraded) .mdc-list-item__ripple::after {\n transition: opacity 150ms linear;\n}\n:not(.mdc-list-item--disabled).mdc-list-item:not(.mdc-ripple-upgraded):active .mdc-list-item__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n:not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n:not(.mdc-list-item--disabled).mdc-list-item--activated .mdc-list-item__ripple::before {\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-activated-opacity, 0.12);\n}\n:not(.mdc-list-item--disabled).mdc-list-item--activated .mdc-list-item__ripple::before, :not(.mdc-list-item--disabled).mdc-list-item--activated .mdc-list-item__ripple::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n:not(.mdc-list-item--disabled).mdc-list-item--activated:hover .mdc-list-item__ripple::before, :not(.mdc-list-item--disabled).mdc-list-item--activated.mdc-ripple-surface--hover .mdc-list-item__ripple::before {\n opacity: 0.16;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.16);\n}\n:not(.mdc-list-item--disabled).mdc-list-item--activated.mdc-ripple-upgraded--background-focused .mdc-list-item__ripple::before, :not(.mdc-list-item--disabled).mdc-list-item--activated:not(.mdc-ripple-upgraded):focus .mdc-list-item__ripple::before {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.24);\n}\n:not(.mdc-list-item--disabled).mdc-list-item--activated:not(.mdc-ripple-upgraded) .mdc-list-item__ripple::after {\n transition: opacity 150ms linear;\n}\n:not(.mdc-list-item--disabled).mdc-list-item--activated:not(.mdc-ripple-upgraded):active .mdc-list-item__ripple::after {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n:not(.mdc-list-item--disabled).mdc-list-item--activated.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n:not(.mdc-list-item--disabled).mdc-list-item--selected .mdc-list-item__ripple::before {\n opacity: 0.08;\n /* @alternate */\n opacity: var(--mdc-ripple-selected-opacity, 0.08);\n}\n:not(.mdc-list-item--disabled).mdc-list-item--selected .mdc-list-item__ripple::before, :not(.mdc-list-item--disabled).mdc-list-item--selected .mdc-list-item__ripple::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n:not(.mdc-list-item--disabled).mdc-list-item--selected:hover .mdc-list-item__ripple::before, :not(.mdc-list-item--disabled).mdc-list-item--selected.mdc-ripple-surface--hover .mdc-list-item__ripple::before {\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.12);\n}\n:not(.mdc-list-item--disabled).mdc-list-item--selected.mdc-ripple-upgraded--background-focused .mdc-list-item__ripple::before, :not(.mdc-list-item--disabled).mdc-list-item--selected:not(.mdc-ripple-upgraded):focus .mdc-list-item__ripple::before {\n transition-duration: 75ms;\n opacity: 0.2;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.2);\n}\n:not(.mdc-list-item--disabled).mdc-list-item--selected:not(.mdc-ripple-upgraded) .mdc-list-item__ripple::after {\n transition: opacity 150ms linear;\n}\n:not(.mdc-list-item--disabled).mdc-list-item--selected:not(.mdc-ripple-upgraded):active .mdc-list-item__ripple::after {\n transition-duration: 75ms;\n opacity: 0.2;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.2);\n}\n:not(.mdc-list-item--disabled).mdc-list-item--selected.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.2);\n}\n:not(.mdc-list-item--disabled).mdc-list-item .mdc-list-item__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n}\n\n.mdc-list-item--disabled {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-list-item--disabled .mdc-list-item__ripple::before,\n.mdc-list-item--disabled .mdc-list-item__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-list-item--disabled .mdc-list-item__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-list-item--disabled .mdc-list-item__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-list-item--disabled.mdc-ripple-upgraded .mdc-list-item__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-list-item--disabled.mdc-ripple-upgraded .mdc-list-item__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-list-item--disabled.mdc-ripple-upgraded--unbounded .mdc-list-item__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-list-item--disabled.mdc-ripple-upgraded--foreground-activation .mdc-list-item__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-list-item--disabled.mdc-ripple-upgraded--foreground-deactivation .mdc-list-item__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-list-item--disabled .mdc-list-item__ripple::before,\n.mdc-list-item--disabled .mdc-list-item__ripple::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n.mdc-list-item--disabled.mdc-ripple-upgraded .mdc-list-item__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-list-item--disabled .mdc-list-item__ripple::before,\n.mdc-list-item--disabled .mdc-list-item__ripple::after {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-ripple-color, #000);\n}\n.mdc-list-item--disabled.mdc-ripple-upgraded--background-focused .mdc-list-item__ripple::before, .mdc-list-item--disabled:not(.mdc-ripple-upgraded):focus .mdc-list-item__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-list-item--disabled .mdc-list-item__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n}\n\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item .mdc-evolution-list-item__ripple::before,\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item .mdc-evolution-list-item__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item .mdc-evolution-list-item__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item .mdc-evolution-list-item__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item.mdc-ripple-upgraded .mdc-evolution-list-item__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item.mdc-ripple-upgraded .mdc-evolution-list-item__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item.mdc-ripple-upgraded--unbounded .mdc-evolution-list-item__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item.mdc-ripple-upgraded--foreground-activation .mdc-evolution-list-item__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item.mdc-ripple-upgraded--foreground-deactivation .mdc-evolution-list-item__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item .mdc-evolution-list-item__ripple::before,\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item .mdc-evolution-list-item__ripple::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item.mdc-ripple-upgraded .mdc-evolution-list-item__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item .mdc-evolution-list-item__ripple::before, :not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item .mdc-evolution-list-item__ripple::after {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-ripple-color, #000);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item:hover .mdc-evolution-list-item__ripple::before, :not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item.mdc-ripple-surface--hover .mdc-evolution-list-item__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item.mdc-ripple-upgraded--background-focused .mdc-evolution-list-item__ripple::before, :not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item:not(.mdc-ripple-upgraded):focus .mdc-evolution-list-item__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item:not(.mdc-ripple-upgraded) .mdc-evolution-list-item__ripple::after {\n transition: opacity 150ms linear;\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item:not(.mdc-ripple-upgraded):active .mdc-evolution-list-item__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--activated .mdc-evolution-list-item__ripple::before {\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-activated-opacity, 0.12);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--activated .mdc-evolution-list-item__ripple::before, :not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--activated .mdc-evolution-list-item__ripple::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--activated:hover .mdc-evolution-list-item__ripple::before, :not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--activated.mdc-ripple-surface--hover .mdc-evolution-list-item__ripple::before {\n opacity: 0.16;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.16);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--activated.mdc-ripple-upgraded--background-focused .mdc-evolution-list-item__ripple::before, :not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--activated:not(.mdc-ripple-upgraded):focus .mdc-evolution-list-item__ripple::before {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.24);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--activated:not(.mdc-ripple-upgraded) .mdc-evolution-list-item__ripple::after {\n transition: opacity 150ms linear;\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--activated:not(.mdc-ripple-upgraded):active .mdc-evolution-list-item__ripple::after {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--activated.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--selected .mdc-evolution-list-item__ripple::before {\n opacity: 0.08;\n /* @alternate */\n opacity: var(--mdc-ripple-selected-opacity, 0.08);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--selected .mdc-evolution-list-item__ripple::before, :not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--selected .mdc-evolution-list-item__ripple::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--selected:hover .mdc-evolution-list-item__ripple::before, :not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--selected.mdc-ripple-surface--hover .mdc-evolution-list-item__ripple::before {\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.12);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--selected.mdc-ripple-upgraded--background-focused .mdc-evolution-list-item__ripple::before, :not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--selected:not(.mdc-ripple-upgraded):focus .mdc-evolution-list-item__ripple::before {\n transition-duration: 75ms;\n opacity: 0.2;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.2);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--selected:not(.mdc-ripple-upgraded) .mdc-evolution-list-item__ripple::after {\n transition: opacity 150ms linear;\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--selected:not(.mdc-ripple-upgraded):active .mdc-evolution-list-item__ripple::after {\n transition-duration: 75ms;\n opacity: 0.2;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.2);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item--selected.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.2);\n}\n:not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item .mdc-evolution-list-item__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n}\n\n.mdc-evolution-list-item--disabled {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__ripple::before,\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-evolution-list-item--disabled.mdc-ripple-upgraded .mdc-evolution-list-item__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-evolution-list-item--disabled.mdc-ripple-upgraded .mdc-evolution-list-item__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-evolution-list-item--disabled.mdc-ripple-upgraded--unbounded .mdc-evolution-list-item__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-evolution-list-item--disabled.mdc-ripple-upgraded--foreground-activation .mdc-evolution-list-item__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-evolution-list-item--disabled.mdc-ripple-upgraded--foreground-deactivation .mdc-evolution-list-item__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__ripple::before,\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__ripple::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n.mdc-evolution-list-item--disabled.mdc-ripple-upgraded .mdc-evolution-list-item__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__ripple::before,\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__ripple::after {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-ripple-color, #000);\n}\n.mdc-evolution-list-item--disabled.mdc-ripple-upgraded--background-focused .mdc-evolution-list-item__ripple::before, .mdc-evolution-list-item--disabled:not(.mdc-ripple-upgraded):focus .mdc-evolution-list-item__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-evolution-list-item--disabled .mdc-evolution-list-item__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n}\n\n.mdc-menu {\n min-width: 112px;\n /* @alternate */\n min-width: var(--mdc-menu-min-width, 112px);\n}\n.mdc-menu .mdc-list-item__meta {\n color: rgba(0, 0, 0, 0.87);\n}\n.mdc-menu .mdc-list-item__graphic {\n color: rgba(0, 0, 0, 0.87);\n}\n.mdc-menu .mdc-list {\n color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n position: relative;\n}\n.mdc-menu .mdc-list .mdc-elevation-overlay {\n width: 100%;\n height: 100%;\n top: 0;\n /* @noflip */\n left: 0;\n}\n.mdc-menu .mdc-list-divider {\n margin: 8px 0;\n}\n.mdc-menu .mdc-list-item {\n user-select: none;\n}\n.mdc-menu .mdc-list-item--disabled {\n cursor: auto;\n}\n.mdc-menu a.mdc-list-item .mdc-list-item__text,\n.mdc-menu a.mdc-list-item .mdc-list-item__graphic {\n pointer-events: none;\n}\n\n.mdc-menu__selection-group {\n padding: 0;\n fill: currentColor;\n}\n.mdc-menu__selection-group .mdc-list-item {\n /* @noflip */\n padding-left: 56px;\n /* @noflip */\n padding-right: 16px;\n}\n[dir=rtl] .mdc-menu__selection-group .mdc-list-item, .mdc-menu__selection-group .mdc-list-item[dir=rtl] {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 56px;\n}\n.mdc-menu__selection-group .mdc-menu__selection-group-icon {\n /* @noflip */\n left: 16px;\n /* @noflip */\n right: initial;\n display: none;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n}\n[dir=rtl] .mdc-menu__selection-group .mdc-menu__selection-group-icon, .mdc-menu__selection-group .mdc-menu__selection-group-icon[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 16px;\n}\n\n.mdc-menu-item--selected .mdc-menu__selection-group-icon {\n display: inline;\n}\n\n.mdc-menu-surface {\n display: none;\n position: absolute;\n box-sizing: border-box;\n max-width: calc(100vw - 32px);\n /* @alternate */\n max-width: var(--mdc-menu-max-width, calc(100vw - 32px));\n max-height: calc(100vh - 32px);\n /* @alternate */\n max-height: var(--mdc-menu-max-height, calc(100vh - 32px));\n margin: 0;\n padding: 0;\n transform: scale(1);\n transform-origin: top left;\n opacity: 0;\n overflow: auto;\n will-change: transform, opacity;\n z-index: 8;\n transition: opacity 0.03s linear, transform 0.12s cubic-bezier(0, 0, 0.2, 1), height 250ms cubic-bezier(0, 0, 0.2, 1);\n /* @alternate */\n box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n color: #000;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000);\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-medium, 4px);\n /* @noflip */\n transform-origin-left: top left;\n /* @noflip */\n transform-origin-right: top right;\n}\n.mdc-menu-surface:focus {\n outline: none;\n}\n.mdc-menu-surface--open {\n display: inline-block;\n transform: scale(1);\n opacity: 1;\n}\n.mdc-menu-surface--animating-open {\n display: inline-block;\n transform: scale(0.8);\n opacity: 0;\n}\n.mdc-menu-surface--animating-closed {\n display: inline-block;\n opacity: 0;\n transition: opacity 0.075s linear;\n}\n[dir=rtl] .mdc-menu-surface, .mdc-menu-surface[dir=rtl] {\n /* @noflip */\n transform-origin-left: top right;\n /* @noflip */\n transform-origin-right: top left;\n}\n\n.mdc-menu-surface--anchor {\n position: relative;\n overflow: visible;\n}\n\n.mdc-menu-surface--fixed {\n position: fixed;\n}\n\n.mdc-menu-surface--fullwidth {\n width: 100%;\n}\n\n.mdc-radio {\n padding: 10px;\n display: inline-block;\n position: relative;\n flex: 0 0 auto;\n box-sizing: content-box;\n width: 20px;\n height: 20px;\n cursor: pointer;\n /* @alternate */\n will-change: opacity, transform, border-color, color;\n}\n.mdc-radio .mdc-radio__native-control:enabled:not(:checked) + .mdc-radio__background .mdc-radio__outer-circle {\n border-color: rgba(0, 0, 0, 0.54);\n}\n.mdc-radio .mdc-radio__native-control:enabled:checked + .mdc-radio__background .mdc-radio__outer-circle {\n border-color: #018786;\n /* @alternate */\n border-color: var(--mdc-theme-secondary, #018786);\n}\n.mdc-radio .mdc-radio__native-control:enabled + .mdc-radio__background .mdc-radio__inner-circle {\n border-color: #018786;\n /* @alternate */\n border-color: var(--mdc-theme-secondary, #018786);\n}\n.mdc-radio [aria-disabled=true] .mdc-radio__native-control:not(:checked) + .mdc-radio__background .mdc-radio__outer-circle,\n.mdc-radio .mdc-radio__native-control:disabled:not(:checked) + .mdc-radio__background .mdc-radio__outer-circle {\n border-color: rgba(0, 0, 0, 0.38);\n}\n.mdc-radio [aria-disabled=true] .mdc-radio__native-control:checked + .mdc-radio__background .mdc-radio__outer-circle,\n.mdc-radio .mdc-radio__native-control:disabled:checked + .mdc-radio__background .mdc-radio__outer-circle {\n border-color: rgba(0, 0, 0, 0.38);\n}\n.mdc-radio [aria-disabled=true] .mdc-radio__native-control + .mdc-radio__background .mdc-radio__inner-circle,\n.mdc-radio .mdc-radio__native-control:disabled + .mdc-radio__background .mdc-radio__inner-circle {\n border-color: rgba(0, 0, 0, 0.38);\n}\n.mdc-radio .mdc-radio__background::before {\n background-color: #018786;\n /* @alternate */\n background-color: var(--mdc-theme-secondary, #018786);\n}\n.mdc-radio .mdc-radio__background::before {\n top: -10px;\n left: -10px;\n width: 40px;\n height: 40px;\n}\n.mdc-radio .mdc-radio__native-control {\n top: 0px;\n right: 0px;\n left: 0px;\n width: 40px;\n height: 40px;\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-radio [aria-disabled=true] .mdc-radio__native-control:not(:checked) + .mdc-radio__background .mdc-radio__outer-circle,\n.mdc-radio .mdc-radio__native-control:disabled:not(:checked) + .mdc-radio__background .mdc-radio__outer-circle {\n border-color: GrayText;\n }\n .mdc-radio [aria-disabled=true] .mdc-radio__native-control:checked + .mdc-radio__background .mdc-radio__outer-circle,\n.mdc-radio .mdc-radio__native-control:disabled:checked + .mdc-radio__background .mdc-radio__outer-circle {\n border-color: GrayText;\n }\n .mdc-radio [aria-disabled=true] .mdc-radio__native-control + .mdc-radio__background .mdc-radio__inner-circle,\n.mdc-radio .mdc-radio__native-control:disabled + .mdc-radio__background .mdc-radio__inner-circle {\n border-color: GrayText;\n }\n}\n.mdc-radio__background {\n display: inline-block;\n position: relative;\n box-sizing: border-box;\n width: 20px;\n height: 20px;\n}\n.mdc-radio__background::before {\n position: absolute;\n transform: scale(0, 0);\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n}\n.mdc-radio__outer-circle {\n position: absolute;\n top: 0;\n left: 0;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n border-width: 2px;\n border-style: solid;\n border-radius: 50%;\n transition: border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n}\n.mdc-radio__inner-circle {\n position: absolute;\n top: 0;\n left: 0;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n transform: scale(0, 0);\n border-width: 10px;\n border-style: solid;\n border-radius: 50%;\n transition: transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);\n}\n.mdc-radio__native-control {\n position: absolute;\n margin: 0;\n padding: 0;\n opacity: 0;\n cursor: inherit;\n z-index: 1;\n}\n.mdc-radio--touch {\n margin-top: 4px;\n margin-bottom: 4px;\n margin-right: 4px;\n margin-left: 4px;\n}\n.mdc-radio--touch .mdc-radio__native-control {\n top: -4px;\n right: -4px;\n left: -4px;\n width: 48px;\n height: 48px;\n}\n\n.mdc-radio__native-control:checked + .mdc-radio__background,\n.mdc-radio__native-control:disabled + .mdc-radio__background {\n transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n.mdc-radio__native-control:checked + .mdc-radio__background .mdc-radio__outer-circle,\n.mdc-radio__native-control:disabled + .mdc-radio__background .mdc-radio__outer-circle {\n transition: border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n.mdc-radio__native-control:checked + .mdc-radio__background .mdc-radio__inner-circle,\n.mdc-radio__native-control:disabled + .mdc-radio__background .mdc-radio__inner-circle {\n transition: transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.mdc-radio--disabled {\n cursor: default;\n pointer-events: none;\n}\n\n.mdc-radio__native-control:checked + .mdc-radio__background .mdc-radio__inner-circle {\n transform: scale(0.5);\n transition: transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.mdc-radio__native-control:disabled + .mdc-radio__background,\n[aria-disabled=true] .mdc-radio__native-control + .mdc-radio__background {\n cursor: default;\n}\n\n.mdc-radio__native-control:focus + .mdc-radio__background::before {\n transform: scale(1);\n opacity: 0.12;\n transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.mdc-radio {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-radio .mdc-radio__ripple::before,\n.mdc-radio .mdc-radio__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-radio .mdc-radio__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-radio .mdc-radio__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-radio.mdc-ripple-upgraded .mdc-radio__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-radio.mdc-ripple-upgraded .mdc-radio__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-radio.mdc-ripple-upgraded--unbounded .mdc-radio__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-radio.mdc-ripple-upgraded--foreground-activation .mdc-radio__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-radio.mdc-ripple-upgraded--foreground-deactivation .mdc-radio__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-radio .mdc-radio__ripple::before,\n.mdc-radio .mdc-radio__ripple::after {\n top: calc(50% - 50%);\n /* @noflip */\n left: calc(50% - 50%);\n width: 100%;\n height: 100%;\n}\n.mdc-radio.mdc-ripple-upgraded .mdc-radio__ripple::before,\n.mdc-radio.mdc-ripple-upgraded .mdc-radio__ripple::after {\n top: var(--mdc-ripple-top, calc(50% - 50%));\n /* @noflip */\n left: var(--mdc-ripple-left, calc(50% - 50%));\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-radio.mdc-ripple-upgraded .mdc-radio__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-radio .mdc-radio__ripple::before, .mdc-radio .mdc-radio__ripple::after {\n background-color: #018786;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-secondary, #018786));\n}\n.mdc-radio:hover .mdc-radio__ripple::before, .mdc-radio.mdc-ripple-surface--hover .mdc-radio__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__ripple::before, .mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-radio:not(.mdc-ripple-upgraded) .mdc-radio__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-radio:not(.mdc-ripple-upgraded):active .mdc-radio__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-radio.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__background::before {\n content: none;\n}\n\n.mdc-radio__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n}\n\n.mdc-ripple-surface {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n position: relative;\n outline: none;\n overflow: hidden;\n}\n.mdc-ripple-surface::before, .mdc-ripple-surface::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-ripple-surface::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-ripple-surface::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-ripple-surface.mdc-ripple-upgraded::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-ripple-surface.mdc-ripple-upgraded::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-ripple-surface.mdc-ripple-upgraded--foreground-activation::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-ripple-surface.mdc-ripple-upgraded--foreground-deactivation::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-ripple-surface::before, .mdc-ripple-surface::after {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-ripple-color, #000);\n}\n.mdc-ripple-surface:hover::before, .mdc-ripple-surface.mdc-ripple-surface--hover::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-ripple-surface.mdc-ripple-upgraded--background-focused::before, .mdc-ripple-surface:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-ripple-surface:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-ripple-surface:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-ripple-surface.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-ripple-surface::before, .mdc-ripple-surface::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n.mdc-ripple-surface.mdc-ripple-upgraded::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n\n.mdc-ripple-surface[data-mdc-ripple-is-unbounded],\n.mdc-ripple-upgraded--unbounded {\n overflow: visible;\n}\n.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::before, .mdc-ripple-surface[data-mdc-ripple-is-unbounded]::after,\n.mdc-ripple-upgraded--unbounded::before,\n.mdc-ripple-upgraded--unbounded::after {\n top: calc(50% - 50%);\n /* @noflip */\n left: calc(50% - 50%);\n width: 100%;\n height: 100%;\n}\n.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::before, .mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,\n.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::before,\n.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after {\n top: var(--mdc-ripple-top, calc(50% - 50%));\n /* @noflip */\n left: var(--mdc-ripple-left, calc(50% - 50%));\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,\n.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n\n.mdc-segmented-button {\n display: inline-block;\n font-size: 0;\n}\n\n.mdc-segmented-button__segment {\n border-color: rgba(0, 0, 0, 0.12);\n /* @alternate */\n border-color: var(--mdc-segmented-button-outline-color, rgba(0, 0, 0, 0.12));\n}\n\n.mdc-segmented-button__segment {\n color: rgba(0, 0, 0, 0.6);\n /* @alternate */\n color: var(--mdc-segmented-button-unselected-ink-color, rgba(0, 0, 0, 0.6));\n}\n\n.mdc-segmented-button__segment {\n background-color: white;\n /* @alternate */\n background-color: var(--mdc-segmented-button-unselected-container-fill-color, white);\n}\n\n.mdc-segmented-button__segment--selected {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-segmented-button-selected-ink-color, #6200ee);\n}\n\n.mdc-segmented-button__segment--selected {\n background-color: rgba(98, 0, 238, 0.08);\n /* @alternate */\n background-color: var(--mdc-segmented-button-selected-container-fill-color, rgba(98, 0, 238, 0.08));\n}\n\n.mdc-segmented-button__segment {\n /* @alternate */\n position: relative;\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-button-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-button-font-size, 0.875rem);\n line-height: 2.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-button-line-height, 2.25rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-button-font-weight, 500);\n letter-spacing: 0.0892857143em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-button-letter-spacing, 0.0892857143em);\n text-decoration: none;\n /* @alternate */\n text-decoration: var(--mdc-typography-button-text-decoration, none);\n text-transform: uppercase;\n /* @alternate */\n text-transform: var(--mdc-typography-button-text-transform, uppercase);\n display: inline-flex;\n vertical-align: top;\n align-items: center;\n height: 36px;\n min-width: 48px;\n padding: 0 12px;\n border-width: 1px 0 1px 1px;\n}\n.mdc-segmented-button__segment .mdc-elevation-overlay {\n width: 100%;\n height: 100%;\n top: 0;\n /* @noflip */\n left: 0;\n}\n.mdc-segmented-button__segment:hover {\n cursor: pointer;\n}\n.mdc-segmented-button__segment:focus {\n outline-width: 0;\n}\n.mdc-segmented-button__segment:first-child {\n border-radius: 4px 0 0 4px;\n}\n.mdc-segmented-button__segment:last-child {\n border-right-width: 1px;\n border-radius: 0 4px 4px 0;\n}\n.mdc-segmented-button__segment .mdc-segmented-button__segment__touch {\n position: absolute;\n top: 50%;\n right: 0;\n height: 48px;\n left: 0;\n transform: translateY(-50%);\n}\n.mdc-segmented-button__segment .mdc-segmented-button__segment--touch {\n margin-top: 0px;\n margin-bottom: 0px;\n}\n\n.mdc-touch-target-wrapper .mdc-segmented-button__segment {\n border-radius: 0;\n border-right-width: 0;\n}\n.mdc-touch-target-wrapper:first-child .mdc-segmented-button__segment {\n border-radius: 4px 0 0 4px;\n}\n.mdc-touch-target-wrapper:last-child .mdc-segmented-button__segment {\n border-right-width: 1px;\n border-radius: 0 4px 4px 0;\n}\n\n.mdc-segmented-button__icon {\n width: 24px;\n font-size: 18px;\n}\n\n.mdc-segmented-button__icon + .mdc-segmented-button__label {\n padding-left: 6px;\n}\n\n.mdc-segmented-button__segment {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n overflow: hidden;\n}\n.mdc-segmented-button__segment .mdc-segmented-button__ripple::before,\n.mdc-segmented-button__segment .mdc-segmented-button__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-segmented-button__segment .mdc-segmented-button__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-segmented-button__segment .mdc-segmented-button__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-segmented-button__segment.mdc-ripple-upgraded .mdc-segmented-button__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-segmented-button__segment.mdc-ripple-upgraded .mdc-segmented-button__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-segmented-button__segment.mdc-ripple-upgraded--unbounded .mdc-segmented-button__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-segmented-button__segment.mdc-ripple-upgraded--foreground-activation .mdc-segmented-button__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-segmented-button__segment.mdc-ripple-upgraded--foreground-deactivation .mdc-segmented-button__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-segmented-button__segment .mdc-segmented-button__ripple::before,\n.mdc-segmented-button__segment .mdc-segmented-button__ripple::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n.mdc-segmented-button__segment.mdc-ripple-upgraded .mdc-segmented-button__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-segmented-button__segment .mdc-segmented-button__ripple::before, .mdc-segmented-button__segment .mdc-segmented-button__ripple::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, #6200ee);\n}\n.mdc-segmented-button__segment:hover .mdc-segmented-button__ripple::before, .mdc-segmented-button__segment.mdc-ripple-surface--hover .mdc-segmented-button__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-segmented-button__segment.mdc-ripple-upgraded--background-focused .mdc-segmented-button__ripple::before, .mdc-segmented-button__segment.mdc-ripple-upgraded:focus-within .mdc-segmented-button__ripple::before, .mdc-segmented-button__segment:not(.mdc-ripple-upgraded):focus .mdc-segmented-button__ripple::before, .mdc-segmented-button__segment:not(.mdc-ripple-upgraded):focus-within .mdc-segmented-button__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-segmented-button__segment:not(.mdc-ripple-upgraded) .mdc-segmented-button__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-segmented-button__segment:not(.mdc-ripple-upgraded):active .mdc-segmented-button__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-segmented-button__segment.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-segmented-button__segment .mdc-segmented-button__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n}\n\n.mdc-slider__thumb {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-slider__thumb::before, .mdc-slider__thumb::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-slider__thumb::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-slider__thumb::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-slider__thumb.mdc-ripple-upgraded::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-slider__thumb.mdc-ripple-upgraded::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-slider__thumb.mdc-ripple-upgraded--unbounded::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-slider__thumb.mdc-ripple-upgraded--foreground-activation::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-slider__thumb.mdc-ripple-upgraded--foreground-deactivation::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-slider__thumb::before, .mdc-slider__thumb::after {\n top: calc(50% - 50%);\n /* @noflip */\n left: calc(50% - 50%);\n width: 100%;\n height: 100%;\n}\n.mdc-slider__thumb.mdc-ripple-upgraded::before, .mdc-slider__thumb.mdc-ripple-upgraded::after {\n top: var(--mdc-ripple-top, calc(50% - 50%));\n /* @noflip */\n left: var(--mdc-ripple-left, calc(50% - 50%));\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-slider__thumb.mdc-ripple-upgraded::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-slider__thumb::before, .mdc-slider__thumb::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n.mdc-slider__thumb:hover::before, .mdc-slider__thumb.mdc-ripple-surface--hover::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-slider__thumb.mdc-ripple-upgraded--background-focused::before, .mdc-slider__thumb:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-slider__thumb:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-slider__thumb:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-slider__thumb.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n\n.mdc-slider {\n cursor: pointer;\n height: 48px;\n margin: 0 24px;\n position: relative;\n touch-action: pan-y;\n}\n.mdc-slider .mdc-slider__track {\n height: 4px;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n width: 100%;\n}\n.mdc-slider .mdc-slider__track--active,\n.mdc-slider .mdc-slider__track--inactive {\n display: flex;\n height: 100%;\n position: absolute;\n width: 100%;\n}\n.mdc-slider .mdc-slider__track--active {\n border-radius: 3px;\n height: 6px;\n overflow: hidden;\n top: -1px;\n}\n.mdc-slider .mdc-slider__track--active_fill {\n border: 6px solid;\n box-sizing: border-box;\n height: 100%;\n width: 100%;\n position: relative;\n /* @noflip */\n transform-origin: left;\n}\n[dir=rtl] .mdc-slider .mdc-slider__track--active_fill, .mdc-slider .mdc-slider__track--active_fill[dir=rtl] {\n /* @noflip */\n transform-origin: right;\n}\n.mdc-slider .mdc-slider__track--inactive {\n border-radius: 2px;\n height: 4px;\n left: 0;\n outline: 1px solid transparent;\n top: 0;\n}\n.mdc-slider .mdc-slider__track--active_fill {\n border-color: #6200ee;\n /* @alternate */\n border-color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-slider.mdc-slider--disabled .mdc-slider__track--active_fill {\n border-color: #000;\n /* @alternate */\n border-color: var(--mdc-theme-on-surface, #000);\n}\n.mdc-slider .mdc-slider__track--inactive {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-theme-primary, #6200ee);\n opacity: 0.24;\n}\n.mdc-slider.mdc-slider--disabled .mdc-slider__track--inactive {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-theme-on-surface, #000);\n opacity: 0.24;\n}\n.mdc-slider .mdc-slider__value-indicator-container {\n bottom: 44px;\n left: 50%;\n pointer-events: none;\n position: absolute;\n transform: translateX(-50%);\n}\n.mdc-slider .mdc-slider__value-indicator {\n transition: transform 100ms 0ms cubic-bezier(0.4, 0, 1, 1);\n align-items: center;\n border-radius: 4px;\n display: flex;\n height: 32px;\n outline: 1px solid transparent;\n padding: 0 12px;\n transform: scale(0);\n transform-origin: bottom;\n}\n.mdc-slider .mdc-slider__value-indicator::before {\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid;\n bottom: -5px;\n content: \"\";\n height: 0;\n left: 50%;\n position: absolute;\n transform: translateX(-50%);\n width: 0;\n}\n.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator-container {\n pointer-events: auto;\n}\n.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator {\n transition: transform 100ms 0ms cubic-bezier(0, 0, 0.2, 1);\n transform: scale(1);\n}\n@media (prefers-reduced-motion) {\n .mdc-slider .mdc-slider__value-indicator,\n.mdc-slider .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator {\n transition: none;\n }\n}\n.mdc-slider .mdc-slider__value-indicator-text {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle2-font-size, 0.875rem);\n line-height: 1.375rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle2-line-height, 1.375rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle2-font-weight, 500);\n letter-spacing: 0.0071428571em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle2-letter-spacing, 0.0071428571em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle2-text-transform, inherit);\n}\n.mdc-slider .mdc-slider__value-indicator {\n background-color: #000;\n opacity: 0.6;\n}\n.mdc-slider .mdc-slider__value-indicator::before {\n border-top-color: #000;\n}\n.mdc-slider .mdc-slider__value-indicator {\n color: #fff;\n /* @alternate */\n color: var(--mdc-theme-on-primary, #fff);\n}\n.mdc-slider .mdc-slider__thumb {\n display: flex;\n height: 48px;\n left: -24px;\n outline: none;\n position: absolute;\n user-select: none;\n width: 48px;\n}\n.mdc-slider .mdc-slider__thumb--top {\n z-index: 1;\n}\n.mdc-slider .mdc-slider__thumb--top .mdc-slider__thumb-knob {\n border: 1px solid;\n box-sizing: content-box;\n border-color: #fff;\n}\n.mdc-slider .mdc-slider__thumb-knob {\n /* @alternate */\n box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);\n border: 10px solid;\n border-radius: 50%;\n box-sizing: border-box;\n height: 20px;\n /* @noflip */\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n width: 20px;\n}\n.mdc-slider .mdc-slider__thumb-knob {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-theme-primary, #6200ee);\n border-color: #6200ee;\n /* @alternate */\n border-color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-slider.mdc-slider--disabled .mdc-slider__thumb-knob {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-theme-on-surface, #000);\n border-color: #000;\n /* @alternate */\n border-color: var(--mdc-theme-on-surface, #000);\n}\n.mdc-slider .mdc-slider__thumb::before, .mdc-slider .mdc-slider__thumb::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n.mdc-slider .mdc-slider__thumb:hover::before, .mdc-slider .mdc-slider__thumb.mdc-ripple-surface--hover::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-slider .mdc-slider__thumb.mdc-ripple-upgraded--background-focused::before, .mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-slider .mdc-slider__thumb:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-slider .mdc-slider__thumb.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-slider .mdc-slider__tick-marks {\n align-items: center;\n box-sizing: border-box;\n display: flex;\n height: 100%;\n justify-content: space-between;\n padding: 0 1px;\n position: absolute;\n width: 100%;\n}\n.mdc-slider .mdc-slider__tick-mark--active,\n.mdc-slider .mdc-slider__tick-mark--inactive {\n border-radius: 50%;\n height: 2px;\n width: 2px;\n}\n.mdc-slider .mdc-slider__tick-mark--active {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-on-primary, #fff);\n opacity: 0.6;\n}\n.mdc-slider.mdc-slider--disabled .mdc-slider__tick-mark--active {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-on-primary, #fff);\n opacity: 0.6;\n}\n.mdc-slider .mdc-slider__tick-mark--inactive {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-theme-primary, #6200ee);\n opacity: 0.6;\n}\n.mdc-slider.mdc-slider--disabled .mdc-slider__tick-mark--inactive {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-theme-on-surface, #000);\n opacity: 0.6;\n}\n.mdc-slider.mdc-slider--disabled {\n opacity: 0.38;\n cursor: auto;\n}\n.mdc-slider.mdc-slider--disabled .mdc-slider__thumb {\n pointer-events: none;\n}\n.mdc-slider--discrete .mdc-slider__thumb,\n.mdc-slider--discrete .mdc-slider__track--active_fill {\n transition: transform 80ms ease;\n}\n@media (prefers-reduced-motion) {\n .mdc-slider--discrete .mdc-slider__thumb,\n.mdc-slider--discrete .mdc-slider__track--active_fill {\n transition: none;\n }\n}\n\n.mdc-slider__input {\n cursor: pointer;\n left: 0;\n margin: 0;\n height: 100%;\n opacity: 0;\n pointer-events: none;\n position: absolute;\n top: 0;\n width: 100%;\n}\n\n.mdc-snackbar {\n z-index: 8;\n margin: 8px;\n display: none;\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n pointer-events: none;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\n.mdc-snackbar__surface {\n background-color: #333333;\n}\n\n.mdc-snackbar__label {\n color: rgba(255, 255, 255, 0.87);\n}\n\n.mdc-snackbar__surface {\n min-width: 344px;\n}\n@media (max-width: 480px), (max-width: 344px) {\n .mdc-snackbar__surface {\n min-width: 100%;\n }\n}\n\n.mdc-snackbar__surface {\n max-width: 672px;\n}\n\n.mdc-snackbar__surface {\n /* @alternate */\n box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);\n}\n\n.mdc-snackbar__surface {\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-small, 4px);\n}\n\n.mdc-snackbar--opening,\n.mdc-snackbar--open,\n.mdc-snackbar--closing {\n display: flex;\n}\n\n.mdc-snackbar--open .mdc-snackbar__label,\n.mdc-snackbar--open .mdc-snackbar__actions {\n visibility: visible;\n}\n\n.mdc-snackbar--leading {\n justify-content: flex-start;\n}\n\n.mdc-snackbar--stacked .mdc-snackbar__label {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 8px;\n padding-bottom: 12px;\n}\n[dir=rtl] .mdc-snackbar--stacked .mdc-snackbar__label, .mdc-snackbar--stacked .mdc-snackbar__label[dir=rtl] {\n /* @noflip */\n padding-left: 8px;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-snackbar--stacked .mdc-snackbar__surface {\n flex-direction: column;\n align-items: flex-start;\n}\n.mdc-snackbar--stacked .mdc-snackbar__actions {\n align-self: flex-end;\n margin-bottom: 8px;\n}\n\n.mdc-snackbar__surface {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 8px;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n box-sizing: border-box;\n transform: scale(0.8);\n opacity: 0;\n}\n.mdc-snackbar__surface::before {\n position: absolute;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n border: 1px solid transparent;\n border-radius: inherit;\n content: \"\";\n}\n[dir=rtl] .mdc-snackbar__surface, .mdc-snackbar__surface[dir=rtl] {\n /* @noflip */\n padding-left: 8px;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-snackbar--open .mdc-snackbar__surface {\n transform: scale(1);\n opacity: 1;\n pointer-events: auto;\n transition: opacity 150ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 150ms 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n.mdc-snackbar--closing .mdc-snackbar__surface {\n transform: scale(1);\n transition: opacity 75ms 0ms cubic-bezier(0.4, 0, 1, 1);\n}\n\n.mdc-snackbar__label {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 8px;\n width: 100%;\n flex-grow: 1;\n box-sizing: border-box;\n margin: 0;\n visibility: hidden;\n padding-top: 14px;\n padding-bottom: 14px;\n}\n[dir=rtl] .mdc-snackbar__label, .mdc-snackbar__label[dir=rtl] {\n /* @noflip */\n padding-left: 8px;\n /* @noflip */\n padding-right: 16px;\n}\n\n.mdc-snackbar__label::before {\n display: inline;\n content: attr(data-mdc-snackbar-label-text);\n}\n\n.mdc-snackbar__actions {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n box-sizing: border-box;\n visibility: hidden;\n}\n\n.mdc-snackbar__action:not(:disabled) {\n color: #bb86fc;\n}\n.mdc-snackbar__action::before, .mdc-snackbar__action::after {\n background-color: #bb86fc;\n /* @alternate */\n background-color: var(--mdc-ripple-color, #bb86fc);\n}\n.mdc-snackbar__action:hover::before, .mdc-snackbar__action.mdc-ripple-surface--hover::before {\n opacity: 0.08;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.08);\n}\n.mdc-snackbar__action.mdc-ripple-upgraded--background-focused::before, .mdc-snackbar__action:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.24);\n}\n.mdc-snackbar__action:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-snackbar__action:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n.mdc-snackbar__action.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n\n.mdc-snackbar__dismiss {\n color: rgba(255, 255, 255, 0.87);\n}\n.mdc-snackbar__dismiss::before, .mdc-snackbar__dismiss::after {\n background-color: rgba(255, 255, 255, 0.87);\n /* @alternate */\n background-color: var(--mdc-ripple-color, rgba(255, 255, 255, 0.87));\n}\n.mdc-snackbar__dismiss:hover::before, .mdc-snackbar__dismiss.mdc-ripple-surface--hover::before {\n opacity: 0.08;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.08);\n}\n.mdc-snackbar__dismiss.mdc-ripple-upgraded--background-focused::before, .mdc-snackbar__dismiss:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.24);\n}\n.mdc-snackbar__dismiss:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-snackbar__dismiss:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n.mdc-snackbar__dismiss.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n\n.mdc-snackbar__dismiss.mdc-snackbar__dismiss {\n width: 36px;\n height: 36px;\n padding: 9px;\n font-size: 18px;\n}\n.mdc-snackbar__dismiss.mdc-snackbar__dismiss svg,\n.mdc-snackbar__dismiss.mdc-snackbar__dismiss img {\n width: 18px;\n height: 18px;\n}\n\n.mdc-snackbar__action + .mdc-snackbar__dismiss {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 0;\n}\n[dir=rtl] .mdc-snackbar__action + .mdc-snackbar__dismiss, .mdc-snackbar__action + .mdc-snackbar__dismiss[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 8px;\n}\n\n.mdc-switch__thumb-underlay {\n /* @noflip */\n left: -14px;\n /* @noflip */\n right: initial;\n top: -17px;\n width: 48px;\n height: 48px;\n}\n[dir=rtl] .mdc-switch__thumb-underlay, .mdc-switch__thumb-underlay[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: -14px;\n}\n\n.mdc-switch__native-control {\n width: 64px;\n height: 48px;\n}\n\n.mdc-switch {\n display: inline-block;\n position: relative;\n outline: none;\n user-select: none;\n}\n.mdc-switch.mdc-switch--checked .mdc-switch__track {\n background-color: #018786;\n /* @alternate */\n background-color: var(--mdc-theme-secondary, #018786);\n}\n.mdc-switch.mdc-switch--checked .mdc-switch__thumb {\n background-color: #018786;\n /* @alternate */\n background-color: var(--mdc-theme-secondary, #018786);\n border-color: #018786;\n /* @alternate */\n border-color: var(--mdc-theme-secondary, #018786);\n}\n.mdc-switch:not(.mdc-switch--checked) .mdc-switch__track {\n background-color: #000;\n /* @alternate */\n background-color: var(--mdc-theme-on-surface, #000);\n}\n.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n border-color: #fff;\n /* @alternate */\n border-color: var(--mdc-theme-surface, #fff);\n}\n\n.mdc-switch__native-control {\n /* @noflip */\n left: 0;\n /* @noflip */\n right: initial;\n position: absolute;\n top: 0;\n margin: 0;\n opacity: 0;\n cursor: pointer;\n pointer-events: auto;\n transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n[dir=rtl] .mdc-switch__native-control, .mdc-switch__native-control[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 0;\n}\n\n.mdc-switch__track {\n box-sizing: border-box;\n width: 36px;\n height: 14px;\n border: 1px solid transparent;\n border-radius: 7px;\n opacity: 0.38;\n transition: opacity 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), border-color 90ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.mdc-switch__thumb-underlay {\n display: flex;\n position: absolute;\n align-items: center;\n justify-content: center;\n transform: translateX(0);\n transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), border-color 90ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.mdc-switch__thumb {\n /* @alternate */\n box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);\n box-sizing: border-box;\n width: 20px;\n height: 20px;\n border: 10px solid;\n border-radius: 50%;\n pointer-events: none;\n z-index: 1;\n}\n\n.mdc-switch--checked .mdc-switch__track {\n opacity: 0.54;\n}\n.mdc-switch--checked .mdc-switch__thumb-underlay {\n transform: translateX(16px);\n}\n[dir=rtl] .mdc-switch--checked .mdc-switch__thumb-underlay, .mdc-switch--checked .mdc-switch__thumb-underlay[dir=rtl] {\n transform: translateX(-16px);\n}\n.mdc-switch--checked .mdc-switch__native-control {\n transform: translateX(-16px);\n}\n[dir=rtl] .mdc-switch--checked .mdc-switch__native-control, .mdc-switch--checked .mdc-switch__native-control[dir=rtl] {\n transform: translateX(16px);\n}\n\n.mdc-switch--disabled {\n opacity: 0.38;\n pointer-events: none;\n}\n.mdc-switch--disabled .mdc-switch__thumb {\n border-width: 1px;\n}\n.mdc-switch--disabled .mdc-switch__native-control {\n cursor: default;\n pointer-events: none;\n}\n\n.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::before, .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::after {\n background-color: #9e9e9e;\n /* @alternate */\n background-color: var(--mdc-ripple-color, #9e9e9e);\n}\n.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:hover::before, .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-surface--hover::before {\n opacity: 0.08;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.08);\n}\n.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before, .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.24);\n}\n.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n\n.mdc-switch__thumb-underlay {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-switch__thumb-underlay::before, .mdc-switch__thumb-underlay::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-switch__thumb-underlay::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-switch__thumb-underlay::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-switch__thumb-underlay.mdc-ripple-upgraded::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-switch__thumb-underlay.mdc-ripple-upgraded::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-switch__thumb-underlay.mdc-ripple-upgraded--unbounded::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-switch__thumb-underlay.mdc-ripple-upgraded--foreground-activation::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-switch__thumb-underlay.mdc-ripple-upgraded--foreground-deactivation::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-switch__thumb-underlay::before, .mdc-switch__thumb-underlay::after {\n top: calc(50% - 50%);\n /* @noflip */\n left: calc(50% - 50%);\n width: 100%;\n height: 100%;\n}\n.mdc-switch__thumb-underlay.mdc-ripple-upgraded::before, .mdc-switch__thumb-underlay.mdc-ripple-upgraded::after {\n top: var(--mdc-ripple-top, calc(50% - 50%));\n /* @noflip */\n left: var(--mdc-ripple-left, calc(50% - 50%));\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-switch__thumb-underlay.mdc-ripple-upgraded::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-switch__thumb-underlay::before, .mdc-switch__thumb-underlay::after {\n background-color: #018786;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-secondary, #018786));\n}\n.mdc-switch__thumb-underlay:hover::before, .mdc-switch__thumb-underlay.mdc-ripple-surface--hover::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before, .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-switch__thumb-underlay.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n\n.mdc-tab {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-button-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-button-font-size, 0.875rem);\n line-height: 2.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-button-line-height, 2.25rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-button-font-weight, 500);\n letter-spacing: 0.0892857143em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-button-letter-spacing, 0.0892857143em);\n text-decoration: none;\n /* @alternate */\n text-decoration: var(--mdc-typography-button-text-decoration, none);\n text-transform: uppercase;\n /* @alternate */\n text-transform: var(--mdc-typography-button-text-transform, uppercase);\n padding-right: 24px;\n padding-left: 24px;\n min-width: 90px;\n position: relative;\n display: flex;\n flex: 1 0 auto;\n justify-content: center;\n box-sizing: border-box;\n margin: 0;\n padding-top: 0;\n padding-bottom: 0;\n border: none;\n outline: none;\n background: none;\n text-align: center;\n white-space: nowrap;\n cursor: pointer;\n -webkit-appearance: none;\n z-index: 1;\n}\n.mdc-tab .mdc-tab__text-label {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-tab .mdc-tab__icon {\n color: rgba(0, 0, 0, 0.54);\n fill: currentColor;\n}\n.mdc-tab::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\n\n.mdc-tab--min-width {\n flex: 0 1 auto;\n}\n\n.mdc-tab__content {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n height: inherit;\n pointer-events: none;\n}\n\n.mdc-tab__text-label {\n transition: 150ms color linear;\n display: inline-block;\n line-height: 1;\n z-index: 2;\n}\n\n.mdc-tab__icon {\n transition: 150ms color linear;\n width: 24px;\n height: 24px;\n font-size: 24px;\n z-index: 2;\n}\n\n.mdc-tab--stacked .mdc-tab__content {\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n.mdc-tab--stacked .mdc-tab__text-label {\n padding-top: 6px;\n padding-bottom: 4px;\n}\n\n.mdc-tab--active .mdc-tab__text-label {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-tab--active .mdc-tab__icon {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n fill: currentColor;\n}\n.mdc-tab--active .mdc-tab__text-label,\n.mdc-tab--active .mdc-tab__icon {\n transition-delay: 100ms;\n}\n\n.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon + .mdc-tab__text-label {\n /* @noflip */\n padding-left: 8px;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon + .mdc-tab__text-label, .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon + .mdc-tab__text-label[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 8px;\n}\n\n.mdc-tab {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.mdc-tab .mdc-tab__ripple::before,\n.mdc-tab .mdc-tab__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-tab .mdc-tab__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-tab .mdc-tab__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-tab.mdc-ripple-upgraded .mdc-tab__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-tab.mdc-ripple-upgraded .mdc-tab__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-tab.mdc-ripple-upgraded--unbounded .mdc-tab__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-tab.mdc-ripple-upgraded--foreground-activation .mdc-tab__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-tab.mdc-ripple-upgraded--foreground-deactivation .mdc-tab__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-tab .mdc-tab__ripple::before,\n.mdc-tab .mdc-tab__ripple::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n.mdc-tab.mdc-ripple-upgraded .mdc-tab__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n.mdc-tab .mdc-tab__ripple::before, .mdc-tab .mdc-tab__ripple::after {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-primary, #6200ee));\n}\n.mdc-tab:hover .mdc-tab__ripple::before, .mdc-tab.mdc-ripple-surface--hover .mdc-tab__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-tab.mdc-ripple-upgraded--background-focused .mdc-tab__ripple::before, .mdc-tab:not(.mdc-ripple-upgraded):focus .mdc-tab__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-tab:not(.mdc-ripple-upgraded) .mdc-tab__ripple::after {\n transition: opacity 150ms linear;\n}\n.mdc-tab:not(.mdc-ripple-upgraded):active .mdc-tab__ripple::after {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n.mdc-tab.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.12);\n}\n\n.mdc-tab__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n overflow: hidden;\n will-change: transform, opacity;\n}\n\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n.mdc-tab-bar {\n width: 100%;\n}\n\n.mdc-tab {\n height: 48px;\n}\n\n.mdc-tab--stacked {\n height: 72px;\n}\n\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n.mdc-tab-indicator {\n display: flex;\n position: absolute;\n top: 0;\n left: 0;\n justify-content: center;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: 1;\n}\n.mdc-tab-indicator .mdc-tab-indicator__content--underline {\n border-color: #6200ee;\n /* @alternate */\n border-color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-tab-indicator .mdc-tab-indicator__content--icon {\n color: #018786;\n /* @alternate */\n color: var(--mdc-theme-secondary, #018786);\n}\n.mdc-tab-indicator .mdc-tab-indicator__content--underline {\n border-top-width: 2px;\n}\n.mdc-tab-indicator .mdc-tab-indicator__content--icon {\n height: 34px;\n font-size: 34px;\n}\n\n.mdc-tab-indicator__content {\n transform-origin: left;\n opacity: 0;\n}\n\n.mdc-tab-indicator__content--underline {\n align-self: flex-end;\n box-sizing: border-box;\n width: 100%;\n border-top-style: solid;\n}\n\n.mdc-tab-indicator__content--icon {\n align-self: center;\n margin: 0 auto;\n}\n\n.mdc-tab-indicator--active .mdc-tab-indicator__content {\n opacity: 1;\n}\n\n.mdc-tab-indicator .mdc-tab-indicator__content {\n transition: 250ms transform cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.mdc-tab-indicator--no-transition .mdc-tab-indicator__content {\n transition: none;\n}\n\n.mdc-tab-indicator--fade .mdc-tab-indicator__content {\n transition: 150ms opacity linear;\n}\n\n.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content {\n transition-delay: 100ms;\n}\n\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n.mdc-tab-scroller {\n overflow-y: hidden;\n}\n.mdc-tab-scroller.mdc-tab-scroller--animating .mdc-tab-scroller__scroll-content {\n transition: 250ms transform cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.mdc-tab-scroller__test {\n position: absolute;\n top: -9999px;\n width: 100px;\n height: 100px;\n overflow-x: scroll;\n}\n\n.mdc-tab-scroller__scroll-area {\n -webkit-overflow-scrolling: touch;\n display: flex;\n overflow-x: hidden;\n}\n\n.mdc-tab-scroller__scroll-area::-webkit-scrollbar,\n.mdc-tab-scroller__test::-webkit-scrollbar {\n display: none;\n}\n\n.mdc-tab-scroller__scroll-area--scroll {\n overflow-x: scroll;\n}\n\n.mdc-tab-scroller__scroll-content {\n position: relative;\n display: flex;\n flex: 1 0 auto;\n transform: none;\n will-change: transform;\n}\n\n.mdc-tab-scroller--align-start .mdc-tab-scroller__scroll-content {\n justify-content: flex-start;\n}\n\n.mdc-tab-scroller--align-end .mdc-tab-scroller__scroll-content {\n justify-content: flex-end;\n}\n\n.mdc-tab-scroller--align-center .mdc-tab-scroller__scroll-content {\n justify-content: center;\n}\n\n.mdc-tab-scroller--animating .mdc-tab-scroller__scroll-area {\n -webkit-overflow-scrolling: auto;\n}\n\n.mdc-text-field--filled {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n will-change: transform, opacity;\n}\n.mdc-text-field--filled .mdc-text-field__ripple::before,\n.mdc-text-field--filled .mdc-text-field__ripple::after {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: \"\";\n}\n.mdc-text-field--filled .mdc-text-field__ripple::before {\n transition: opacity 15ms linear, background-color 15ms linear;\n z-index: 1;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 1);\n}\n.mdc-text-field--filled .mdc-text-field__ripple::after {\n z-index: 0;\n /* @alternate */\n z-index: var(--mdc-ripple-z-index, 0);\n}\n.mdc-text-field--filled.mdc-ripple-upgraded .mdc-text-field__ripple::before {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-text-field--filled.mdc-ripple-upgraded .mdc-text-field__ripple::after {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n}\n.mdc-text-field--filled.mdc-ripple-upgraded--unbounded .mdc-text-field__ripple::after {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n}\n.mdc-text-field--filled.mdc-ripple-upgraded--foreground-activation .mdc-text-field__ripple::after {\n animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;\n}\n.mdc-text-field--filled.mdc-ripple-upgraded--foreground-deactivation .mdc-text-field__ripple::after {\n animation: mdc-ripple-fg-opacity-out 150ms;\n transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));\n}\n.mdc-text-field--filled .mdc-text-field__ripple::before,\n.mdc-text-field--filled .mdc-text-field__ripple::after {\n top: calc(50% - 100%);\n /* @noflip */\n left: calc(50% - 100%);\n width: 200%;\n height: 200%;\n}\n.mdc-text-field--filled.mdc-ripple-upgraded .mdc-text-field__ripple::after {\n width: var(--mdc-ripple-fg-size, 100%);\n height: var(--mdc-ripple-fg-size, 100%);\n}\n\n.mdc-text-field__ripple {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n}\n\n.mdc-text-field {\n border-top-left-radius: 4px;\n /* @alternate */\n border-top-left-radius: var(--mdc-shape-small, 4px);\n border-top-right-radius: 4px;\n /* @alternate */\n border-top-right-radius: var(--mdc-shape-small, 4px);\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n display: inline-flex;\n align-items: baseline;\n padding: 0 16px;\n position: relative;\n box-sizing: border-box;\n overflow: hidden;\n /* @alternate */\n will-change: opacity, transform, color;\n}\n.mdc-text-field:not(.mdc-text-field--disabled) .mdc-floating-label {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input {\n color: rgba(0, 0, 0, 0.87);\n}\n@media all {\n .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {\n color: rgba(0, 0, 0, 0.54);\n }\n}\n@media all {\n .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {\n color: rgba(0, 0, 0, 0.54);\n }\n}\n.mdc-text-field .mdc-text-field__input {\n caret-color: #6200ee;\n /* @alternate */\n caret-color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-text-field:not(.mdc-text-field--disabled) + .mdc-text-field-helper-line .mdc-text-field-helper-text {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field-character-counter,\n.mdc-text-field:not(.mdc-text-field--disabled) + .mdc-text-field-helper-line .mdc-text-field-character-counter {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__icon--leading {\n color: rgba(0, 0, 0, 0.54);\n}\n.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__icon--trailing {\n color: rgba(0, 0, 0, 0.54);\n}\n.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__affix--prefix {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__affix--suffix {\n color: rgba(0, 0, 0, 0.6);\n}\n.mdc-text-field .mdc-floating-label {\n top: 50%;\n transform: translateY(-50%);\n pointer-events: none;\n}\n\n.mdc-text-field__input {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle1-font-size, 1rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle1-font-weight, 400);\n letter-spacing: 0.009375em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle1-text-transform, inherit);\n height: 28px;\n transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);\n width: 100%;\n min-width: 0;\n border: none;\n border-radius: 0;\n background: none;\n appearance: none;\n padding: 0;\n}\n.mdc-text-field__input::-ms-clear {\n display: none;\n}\n.mdc-text-field__input::-webkit-calendar-picker-indicator {\n display: none;\n}\n.mdc-text-field__input:focus {\n outline: none;\n}\n.mdc-text-field__input:invalid {\n box-shadow: none;\n}\n@media all {\n .mdc-text-field__input::placeholder {\n transition: opacity 67ms cubic-bezier(0.4, 0, 0.2, 1);\n opacity: 0;\n }\n}\n@media all {\n .mdc-text-field__input:-ms-input-placeholder {\n transition: opacity 67ms cubic-bezier(0.4, 0, 0.2, 1);\n opacity: 0;\n }\n}\n@media all {\n .mdc-text-field--no-label .mdc-text-field__input::placeholder, .mdc-text-field--focused .mdc-text-field__input::placeholder {\n transition-delay: 40ms;\n transition-duration: 110ms;\n opacity: 1;\n }\n}\n@media all {\n .mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder, .mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder {\n transition-delay: 40ms;\n transition-duration: 110ms;\n opacity: 1;\n }\n}\n\n.mdc-text-field__affix {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle1-font-size, 1rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle1-font-weight, 400);\n letter-spacing: 0.009375em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle1-text-transform, inherit);\n height: 28px;\n transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);\n opacity: 0;\n white-space: nowrap;\n}\n.mdc-text-field--label-floating .mdc-text-field__affix, .mdc-text-field--no-label .mdc-text-field__affix {\n opacity: 1;\n}\n@supports (-webkit-hyphens: none) {\n .mdc-text-field--outlined .mdc-text-field__affix {\n align-items: center;\n align-self: center;\n display: inline-flex;\n height: 100%;\n }\n}\n\n.mdc-text-field__affix--prefix {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 2px;\n}\n[dir=rtl] .mdc-text-field__affix--prefix, .mdc-text-field__affix--prefix[dir=rtl] {\n /* @noflip */\n padding-left: 2px;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-text-field--end-aligned .mdc-text-field__affix--prefix {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 12px;\n}\n[dir=rtl] .mdc-text-field--end-aligned .mdc-text-field__affix--prefix, .mdc-text-field--end-aligned .mdc-text-field__affix--prefix[dir=rtl] {\n /* @noflip */\n padding-left: 12px;\n /* @noflip */\n padding-right: 0;\n}\n\n.mdc-text-field__affix--suffix {\n /* @noflip */\n padding-left: 12px;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-text-field__affix--suffix, .mdc-text-field__affix--suffix[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 12px;\n}\n.mdc-text-field--end-aligned .mdc-text-field__affix--suffix {\n /* @noflip */\n padding-left: 2px;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-text-field--end-aligned .mdc-text-field__affix--suffix, .mdc-text-field--end-aligned .mdc-text-field__affix--suffix[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 2px;\n}\n\n.mdc-text-field--filled {\n height: 56px;\n}\n.mdc-text-field--filled .mdc-text-field__ripple::before,\n.mdc-text-field--filled .mdc-text-field__ripple::after {\n background-color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n background-color: var(--mdc-ripple-color, rgba(0, 0, 0, 0.87));\n}\n.mdc-text-field--filled:hover .mdc-text-field__ripple::before, .mdc-text-field--filled.mdc-ripple-surface--hover .mdc-text-field__ripple::before {\n opacity: 0.04;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.04);\n}\n.mdc-text-field--filled.mdc-ripple-upgraded--background-focused .mdc-text-field__ripple::before, .mdc-text-field--filled:not(.mdc-ripple-upgraded):focus .mdc-text-field__ripple::before {\n transition-duration: 75ms;\n opacity: 0.12;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.12);\n}\n.mdc-text-field--filled::before {\n display: inline-block;\n width: 0;\n height: 40px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-text-field--filled:not(.mdc-text-field--disabled) {\n background-color: whitesmoke;\n}\n.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::before {\n border-bottom-color: rgba(0, 0, 0, 0.42);\n}\n.mdc-text-field--filled:not(.mdc-text-field--disabled):hover .mdc-line-ripple::before {\n border-bottom-color: rgba(0, 0, 0, 0.87);\n}\n.mdc-text-field--filled .mdc-line-ripple::after {\n border-bottom-color: #6200ee;\n /* @alternate */\n border-bottom-color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-text-field--filled .mdc-floating-label {\n /* @noflip */\n left: 16px;\n /* @noflip */\n right: initial;\n}\n[dir=rtl] .mdc-text-field--filled .mdc-floating-label, .mdc-text-field--filled .mdc-floating-label[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 16px;\n}\n.mdc-text-field--filled .mdc-floating-label--float-above {\n transform: translateY(-106%) scale(0.75);\n}\n.mdc-text-field--filled.mdc-text-field--no-label .mdc-text-field__input {\n height: 100%;\n}\n.mdc-text-field--filled.mdc-text-field--no-label .mdc-floating-label {\n display: none;\n}\n.mdc-text-field--filled.mdc-text-field--no-label::before {\n display: none;\n}\n@supports (-webkit-hyphens: none) {\n .mdc-text-field--filled.mdc-text-field--no-label .mdc-text-field__affix {\n align-items: center;\n align-self: center;\n display: inline-flex;\n height: 100%;\n }\n}\n\n.mdc-text-field--outlined {\n height: 56px;\n overflow: visible;\n}\n.mdc-text-field--outlined .mdc-floating-label--float-above {\n transform: translateY(-37.25px) scale(1);\n}\n.mdc-text-field--outlined .mdc-floating-label--float-above {\n font-size: 0.75rem;\n}\n.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n transform: translateY(-34.75px) scale(0.75);\n}\n.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n font-size: 1rem;\n}\n.mdc-text-field--outlined .mdc-floating-label--shake {\n animation: mdc-floating-label-shake-float-above-text-field-outlined 250ms 1;\n}\n@keyframes mdc-floating-label-shake-float-above-text-field-outlined {\n 0% {\n transform: translateX(calc(0 - 0%)) translateY(-34.75px) scale(0.75);\n }\n 33% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(calc(4% - 0%)) translateY(-34.75px) scale(0.75);\n }\n 66% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(calc(-4% - 0%)) translateY(-34.75px) scale(0.75);\n }\n 100% {\n transform: translateX(calc(0 - 0%)) translateY(-34.75px) scale(0.75);\n }\n}\n.mdc-text-field--outlined .mdc-text-field__input {\n height: 100%;\n}\n.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__leading,\n.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__notch,\n.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__trailing {\n border-color: rgba(0, 0, 0, 0.38);\n}\n.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__leading,\n.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__notch,\n.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__trailing {\n border-color: rgba(0, 0, 0, 0.87);\n}\n.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__leading,\n.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__notch,\n.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__trailing {\n border-color: #6200ee;\n /* @alternate */\n border-color: var(--mdc-theme-primary, #6200ee);\n}\n.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading {\n /* @noflip */\n border-top-left-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-top-left-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-top-right-radius: 0;\n /* @noflip */\n border-bottom-right-radius: 0;\n /* @noflip */\n border-bottom-left-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-bottom-left-radius: var(--mdc-shape-small, 4px);\n}\n[dir=rtl] .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading, .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading[dir=rtl] {\n /* @noflip */\n border-top-left-radius: 0;\n /* @noflip */\n border-top-right-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-top-right-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-bottom-right-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-bottom-right-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-bottom-left-radius: 0;\n}\n@supports (top: max(0%)) {\n .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading {\n width: max(12px, var(--mdc-shape-small, 4px));\n }\n}\n@supports (top: max(0%)) {\n .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__notch {\n max-width: calc(100% - max(12px, var(--mdc-shape-small, 4px)) * 2);\n }\n}\n.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__trailing {\n /* @noflip */\n border-top-left-radius: 0;\n /* @noflip */\n border-top-right-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-top-right-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-bottom-right-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-bottom-right-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-bottom-left-radius: 0;\n}\n[dir=rtl] .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__trailing, .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__trailing[dir=rtl] {\n /* @noflip */\n border-top-left-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-top-left-radius: var(--mdc-shape-small, 4px);\n /* @noflip */\n border-top-right-radius: 0;\n /* @noflip */\n border-bottom-right-radius: 0;\n /* @noflip */\n border-bottom-left-radius: 4px;\n /* @alternate */\n /* @noflip */\n border-bottom-left-radius: var(--mdc-shape-small, 4px);\n}\n@supports (top: max(0%)) {\n .mdc-text-field--outlined {\n /* @noflip */\n padding-left: max(16px, calc(var(--mdc-shape-small, 4px) + 4px));\n }\n}\n@supports (top: max(0%)) {\n .mdc-text-field--outlined {\n /* @noflip */\n padding-right: max(16px, var(--mdc-shape-small, 4px));\n }\n}\n@supports (top: max(0%)) {\n .mdc-text-field--outlined + .mdc-text-field-helper-line {\n /* @noflip */\n padding-left: max(16px, calc(var(--mdc-shape-small, 4px) + 4px));\n }\n}\n@supports (top: max(0%)) {\n .mdc-text-field--outlined + .mdc-text-field-helper-line {\n /* @noflip */\n padding-right: max(16px, var(--mdc-shape-small, 4px));\n }\n}\n.mdc-text-field--outlined.mdc-text-field--with-leading-icon {\n /* @noflip */\n padding-left: 0;\n}\n@supports (top: max(0%)) {\n .mdc-text-field--outlined.mdc-text-field--with-leading-icon {\n /* @noflip */\n padding-right: max(16px, var(--mdc-shape-small, 4px));\n }\n}\n[dir=rtl] .mdc-text-field--outlined.mdc-text-field--with-leading-icon, .mdc-text-field--outlined.mdc-text-field--with-leading-icon[dir=rtl] {\n /* @noflip */\n padding-right: 0;\n}\n@supports (top: max(0%)) {\n [dir=rtl] .mdc-text-field--outlined.mdc-text-field--with-leading-icon, .mdc-text-field--outlined.mdc-text-field--with-leading-icon[dir=rtl] {\n /* @noflip */\n padding-left: max(16px, var(--mdc-shape-small, 4px));\n }\n}\n.mdc-text-field--outlined.mdc-text-field--with-trailing-icon {\n /* @noflip */\n padding-right: 0;\n}\n@supports (top: max(0%)) {\n .mdc-text-field--outlined.mdc-text-field--with-trailing-icon {\n /* @noflip */\n padding-left: max(16px, calc(var(--mdc-shape-small, 4px) + 4px));\n }\n}\n[dir=rtl] .mdc-text-field--outlined.mdc-text-field--with-trailing-icon, .mdc-text-field--outlined.mdc-text-field--with-trailing-icon[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n}\n@supports (top: max(0%)) {\n [dir=rtl] .mdc-text-field--outlined.mdc-text-field--with-trailing-icon, .mdc-text-field--outlined.mdc-text-field--with-trailing-icon[dir=rtl] {\n /* @noflip */\n padding-right: max(16px, calc(var(--mdc-shape-small, 4px) + 4px));\n }\n}\n.mdc-text-field--outlined.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch {\n padding-top: 1px;\n}\n.mdc-text-field--outlined .mdc-text-field__ripple::before,\n.mdc-text-field--outlined .mdc-text-field__ripple::after {\n content: none;\n}\n.mdc-text-field--outlined .mdc-floating-label {\n /* @noflip */\n left: 4px;\n /* @noflip */\n right: initial;\n}\n[dir=rtl] .mdc-text-field--outlined .mdc-floating-label, .mdc-text-field--outlined .mdc-floating-label[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 4px;\n}\n.mdc-text-field--outlined .mdc-text-field__input {\n display: flex;\n border: none !important;\n background-color: transparent;\n}\n.mdc-text-field--outlined .mdc-notched-outline {\n z-index: 1;\n}\n\n.mdc-text-field--textarea {\n flex-direction: column;\n align-items: center;\n width: auto;\n height: auto;\n padding: 0;\n transition: none;\n}\n.mdc-text-field--textarea .mdc-floating-label {\n top: 19px;\n}\n.mdc-text-field--textarea .mdc-floating-label:not(.mdc-floating-label--float-above) {\n transform: none;\n}\n.mdc-text-field--textarea .mdc-text-field__input {\n flex-grow: 1;\n height: auto;\n min-height: 1.5rem;\n overflow-x: hidden;\n overflow-y: auto;\n box-sizing: border-box;\n resize: none;\n padding: 0 16px;\n line-height: 1.5rem;\n}\n.mdc-text-field--textarea.mdc-text-field--filled::before {\n display: none;\n}\n.mdc-text-field--textarea.mdc-text-field--filled .mdc-floating-label--float-above {\n transform: translateY(-10.25px) scale(0.75);\n}\n.mdc-text-field--textarea.mdc-text-field--filled .mdc-floating-label--shake {\n animation: mdc-floating-label-shake-float-above-textarea-filled 250ms 1;\n}\n@keyframes mdc-floating-label-shake-float-above-textarea-filled {\n 0% {\n transform: translateX(calc(0 - 0%)) translateY(-10.25px) scale(0.75);\n }\n 33% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(calc(4% - 0%)) translateY(-10.25px) scale(0.75);\n }\n 66% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(calc(-4% - 0%)) translateY(-10.25px) scale(0.75);\n }\n 100% {\n transform: translateX(calc(0 - 0%)) translateY(-10.25px) scale(0.75);\n }\n}\n.mdc-text-field--textarea.mdc-text-field--filled .mdc-text-field__input {\n margin-top: 23px;\n margin-bottom: 9px;\n}\n.mdc-text-field--textarea.mdc-text-field--filled.mdc-text-field--no-label .mdc-text-field__input {\n margin-top: 16px;\n margin-bottom: 16px;\n}\n.mdc-text-field--textarea.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch {\n padding-top: 0;\n}\n.mdc-text-field--textarea.mdc-text-field--outlined .mdc-floating-label--float-above {\n transform: translateY(-27.25px) scale(1);\n}\n.mdc-text-field--textarea.mdc-text-field--outlined .mdc-floating-label--float-above {\n font-size: 0.75rem;\n}\n.mdc-text-field--textarea.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-text-field--textarea.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n transform: translateY(-24.75px) scale(0.75);\n}\n.mdc-text-field--textarea.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-text-field--textarea.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n font-size: 1rem;\n}\n.mdc-text-field--textarea.mdc-text-field--outlined .mdc-floating-label--shake {\n animation: mdc-floating-label-shake-float-above-textarea-outlined 250ms 1;\n}\n@keyframes mdc-floating-label-shake-float-above-textarea-outlined {\n 0% {\n transform: translateX(calc(0 - 0%)) translateY(-24.75px) scale(0.75);\n }\n 33% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(calc(4% - 0%)) translateY(-24.75px) scale(0.75);\n }\n 66% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(calc(-4% - 0%)) translateY(-24.75px) scale(0.75);\n }\n 100% {\n transform: translateX(calc(0 - 0%)) translateY(-24.75px) scale(0.75);\n }\n}\n.mdc-text-field--textarea.mdc-text-field--outlined .mdc-text-field__input {\n margin-top: 16px;\n margin-bottom: 16px;\n}\n.mdc-text-field--textarea.mdc-text-field--outlined .mdc-floating-label {\n top: 18px;\n}\n.mdc-text-field--textarea.mdc-text-field--with-internal-counter .mdc-text-field__input {\n margin-bottom: 2px;\n}\n.mdc-text-field--textarea.mdc-text-field--with-internal-counter .mdc-text-field-character-counter {\n align-self: flex-end;\n padding: 0 16px;\n}\n.mdc-text-field--textarea.mdc-text-field--with-internal-counter .mdc-text-field-character-counter::after {\n display: inline-block;\n width: 0;\n height: 16px;\n content: \"\";\n vertical-align: -16px;\n}\n.mdc-text-field--textarea.mdc-text-field--with-internal-counter .mdc-text-field-character-counter::before {\n display: none;\n}\n\n.mdc-text-field__resizer {\n align-self: stretch;\n display: inline-flex;\n flex-direction: column;\n flex-grow: 1;\n max-height: 100%;\n max-width: 100%;\n min-height: 56px;\n min-width: fit-content;\n /* @alternate */\n min-width: -moz-available;\n /* @alternate */\n min-width: -webkit-fill-available;\n overflow: hidden;\n resize: both;\n}\n.mdc-text-field--filled .mdc-text-field__resizer {\n transform: translateY(-1px);\n}\n.mdc-text-field--filled .mdc-text-field__resizer .mdc-text-field__input,\n.mdc-text-field--filled .mdc-text-field__resizer .mdc-text-field-character-counter {\n transform: translateY(1px);\n}\n.mdc-text-field--outlined .mdc-text-field__resizer {\n transform: translateX(-1px) translateY(-1px);\n}\n[dir=rtl] .mdc-text-field--outlined .mdc-text-field__resizer, .mdc-text-field--outlined .mdc-text-field__resizer[dir=rtl] {\n transform: translateX(1px) translateY(-1px);\n}\n.mdc-text-field--outlined .mdc-text-field__resizer .mdc-text-field__input,\n.mdc-text-field--outlined .mdc-text-field__resizer .mdc-text-field-character-counter {\n transform: translateX(1px) translateY(1px);\n}\n[dir=rtl] .mdc-text-field--outlined .mdc-text-field__resizer .mdc-text-field__input, .mdc-text-field--outlined .mdc-text-field__resizer .mdc-text-field__input[dir=rtl],\n[dir=rtl] .mdc-text-field--outlined .mdc-text-field__resizer .mdc-text-field-character-counter,\n.mdc-text-field--outlined .mdc-text-field__resizer .mdc-text-field-character-counter[dir=rtl] {\n transform: translateX(-1px) translateY(1px);\n}\n\n.mdc-text-field--with-leading-icon {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 16px;\n}\n[dir=rtl] .mdc-text-field--with-leading-icon, .mdc-text-field--with-leading-icon[dir=rtl] {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-text-field--with-leading-icon.mdc-text-field--filled .mdc-floating-label {\n max-width: calc(100% - 48px);\n /* @noflip */\n left: 48px;\n /* @noflip */\n right: initial;\n}\n[dir=rtl] .mdc-text-field--with-leading-icon.mdc-text-field--filled .mdc-floating-label, .mdc-text-field--with-leading-icon.mdc-text-field--filled .mdc-floating-label[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 48px;\n}\n.mdc-text-field--with-leading-icon.mdc-text-field--filled .mdc-floating-label--float-above {\n max-width: calc(100% / 0.75 - 64px / 0.75);\n}\n.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label {\n /* @noflip */\n left: 36px;\n /* @noflip */\n right: initial;\n}\n[dir=rtl] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label, .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label[dir=rtl] {\n /* @noflip */\n left: initial;\n /* @noflip */\n right: 36px;\n}\n.mdc-text-field--with-leading-icon.mdc-text-field--outlined :not(.mdc-notched-outline--notched) .mdc-notched-outline__notch {\n max-width: calc(100% - 60px);\n}\n.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above {\n transform: translateY(-37.25px) translateX(-32px) scale(1);\n}\n[dir=rtl] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above, .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above[dir=rtl] {\n transform: translateY(-37.25px) translateX(32px) scale(1);\n}\n.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above {\n font-size: 0.75rem;\n}\n.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n transform: translateY(-34.75px) translateX(-32px) scale(0.75);\n}\n[dir=rtl] .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above, .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above[dir=rtl],\n[dir=rtl] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above[dir=rtl] {\n transform: translateY(-34.75px) translateX(32px) scale(0.75);\n}\n.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,\n.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {\n font-size: 1rem;\n}\n.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--shake {\n animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon 250ms 1;\n}\n@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon {\n 0% {\n transform: translateX(calc(0 - 32px)) translateY(-34.75px) scale(0.75);\n }\n 33% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(calc(4% - 32px)) translateY(-34.75px) scale(0.75);\n }\n 66% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(calc(-4% - 32px)) translateY(-34.75px) scale(0.75);\n }\n 100% {\n transform: translateX(calc(0 - 32px)) translateY(-34.75px) scale(0.75);\n }\n}\n[dir=rtl] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--shake, .mdc-text-field--with-leading-icon.mdc-text-field--outlined[dir=rtl] .mdc-floating-label--shake {\n animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon 250ms 1;\n}\n@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl {\n 0% {\n transform: translateX(calc(0 - -32px)) translateY(-34.75px) scale(0.75);\n }\n 33% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(calc(4% - -32px)) translateY(-34.75px) scale(0.75);\n }\n 66% {\n animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);\n transform: translateX(calc(-4% - -32px)) translateY(-34.75px) scale(0.75);\n }\n 100% {\n transform: translateX(calc(0 - -32px)) translateY(-34.75px) scale(0.75);\n }\n}\n\n.mdc-text-field--with-trailing-icon {\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-text-field--with-trailing-icon, .mdc-text-field--with-trailing-icon[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 16px;\n}\n.mdc-text-field--with-trailing-icon.mdc-text-field--filled .mdc-floating-label {\n max-width: calc(100% - 64px);\n}\n.mdc-text-field--with-trailing-icon.mdc-text-field--filled .mdc-floating-label--float-above {\n max-width: calc(100% / 0.75 - 64px / 0.75);\n}\n.mdc-text-field--with-trailing-icon.mdc-text-field--outlined :not(.mdc-notched-outline--notched) .mdc-notched-outline__notch {\n max-width: calc(100% - 60px);\n}\n\n.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 0;\n}\n.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon.mdc-text-field--filled .mdc-floating-label {\n max-width: calc(100% - 96px);\n}\n.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon.mdc-text-field--filled .mdc-floating-label--float-above {\n max-width: calc(100% / 0.75 - 96px / 0.75);\n}\n\n.mdc-text-field-helper-line {\n display: flex;\n justify-content: space-between;\n box-sizing: border-box;\n}\n.mdc-text-field + .mdc-text-field-helper-line {\n padding-right: 16px;\n padding-left: 16px;\n}\n\n.mdc-form-field > .mdc-text-field + label {\n align-self: flex-start;\n}\n\n.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label {\n color: rgba(98, 0, 238, 0.87);\n}\n.mdc-text-field--focused .mdc-notched-outline__leading,\n.mdc-text-field--focused .mdc-notched-outline__notch,\n.mdc-text-field--focused .mdc-notched-outline__trailing {\n border-width: 2px;\n}\n.mdc-text-field--focused + .mdc-text-field-helper-line .mdc-text-field-helper-text:not(.mdc-text-field-helper-text--validation-msg) {\n opacity: 1;\n}\n.mdc-text-field--focused.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch {\n padding-top: 2px;\n}\n.mdc-text-field--focused.mdc-text-field--outlined.mdc-text-field--textarea .mdc-notched-outline--notched .mdc-notched-outline__notch {\n padding-top: 0;\n}\n\n.mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-line-ripple::before {\n border-bottom-color: #b00020;\n /* @alternate */\n border-bottom-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple::after {\n border-bottom-color: #b00020;\n /* @alternate */\n border-bottom-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-floating-label {\n color: #b00020;\n /* @alternate */\n color: var(--mdc-theme-error, #b00020);\n}\n.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--invalid + .mdc-text-field-helper-line .mdc-text-field-helper-text--validation-msg {\n color: #b00020;\n /* @alternate */\n color: var(--mdc-theme-error, #b00020);\n}\n.mdc-text-field--invalid .mdc-text-field__input {\n caret-color: #b00020;\n /* @alternate */\n caret-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__icon--trailing {\n color: #b00020;\n /* @alternate */\n color: var(--mdc-theme-error, #b00020);\n}\n.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple::before {\n border-bottom-color: #b00020;\n /* @alternate */\n border-bottom-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__leading,\n.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__notch,\n.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__trailing {\n border-color: #b00020;\n /* @alternate */\n border-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__leading,\n.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__notch,\n.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__trailing {\n border-color: #b00020;\n /* @alternate */\n border-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__leading,\n.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__notch,\n.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__trailing {\n border-color: #b00020;\n /* @alternate */\n border-color: var(--mdc-theme-error, #b00020);\n}\n.mdc-text-field--invalid + .mdc-text-field-helper-line .mdc-text-field-helper-text--validation-msg {\n opacity: 1;\n}\n\n.mdc-text-field--disabled {\n pointer-events: none;\n}\n.mdc-text-field--disabled .mdc-text-field__input {\n color: rgba(0, 0, 0, 0.38);\n}\n@media all {\n .mdc-text-field--disabled .mdc-text-field__input::placeholder {\n color: rgba(0, 0, 0, 0.38);\n }\n}\n@media all {\n .mdc-text-field--disabled .mdc-text-field__input:-ms-input-placeholder {\n color: rgba(0, 0, 0, 0.38);\n }\n}\n.mdc-text-field--disabled .mdc-floating-label {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-text-field--disabled + .mdc-text-field-helper-line .mdc-text-field-helper-text {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-text-field--disabled .mdc-text-field-character-counter,\n.mdc-text-field--disabled + .mdc-text-field-helper-line .mdc-text-field-character-counter {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-text-field--disabled .mdc-text-field__icon--leading {\n color: rgba(0, 0, 0, 0.3);\n}\n.mdc-text-field--disabled .mdc-text-field__icon--trailing {\n color: rgba(0, 0, 0, 0.3);\n}\n.mdc-text-field--disabled .mdc-text-field__affix--prefix {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-text-field--disabled .mdc-text-field__affix--suffix {\n color: rgba(0, 0, 0, 0.38);\n}\n.mdc-text-field--disabled .mdc-line-ripple::before {\n border-bottom-color: rgba(0, 0, 0, 0.06);\n}\n.mdc-text-field--disabled .mdc-notched-outline__leading,\n.mdc-text-field--disabled .mdc-notched-outline__notch,\n.mdc-text-field--disabled .mdc-notched-outline__trailing {\n border-color: rgba(0, 0, 0, 0.06);\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-text-field--disabled .mdc-text-field__input::placeholder {\n color: GrayText;\n }\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-text-field--disabled .mdc-text-field__input:-ms-input-placeholder {\n color: GrayText;\n }\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-text-field--disabled .mdc-floating-label {\n color: GrayText;\n }\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-text-field--disabled + .mdc-text-field-helper-line .mdc-text-field-helper-text {\n color: GrayText;\n }\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-text-field--disabled .mdc-text-field-character-counter,\n.mdc-text-field--disabled + .mdc-text-field-helper-line .mdc-text-field-character-counter {\n color: GrayText;\n }\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-text-field--disabled .mdc-text-field__icon--leading {\n color: GrayText;\n }\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-text-field--disabled .mdc-text-field__icon--trailing {\n color: GrayText;\n }\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-text-field--disabled .mdc-text-field__affix--prefix {\n color: GrayText;\n }\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-text-field--disabled .mdc-text-field__affix--suffix {\n color: GrayText;\n }\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-text-field--disabled .mdc-line-ripple::before {\n border-bottom-color: GrayText;\n }\n}\n@media screen and (-ms-high-contrast: active) {\n .mdc-text-field--disabled .mdc-notched-outline__leading,\n.mdc-text-field--disabled .mdc-notched-outline__notch,\n.mdc-text-field--disabled .mdc-notched-outline__trailing {\n border-color: GrayText;\n }\n}\n.mdc-text-field--disabled .mdc-floating-label {\n cursor: default;\n}\n.mdc-text-field--disabled.mdc-text-field--filled {\n background-color: #fafafa;\n}\n.mdc-text-field--disabled.mdc-text-field--filled .mdc-text-field__ripple {\n display: none;\n}\n.mdc-text-field--disabled .mdc-text-field__input {\n pointer-events: auto;\n}\n\n.mdc-text-field--end-aligned .mdc-text-field__input {\n /* @noflip */\n text-align: right;\n}\n[dir=rtl] .mdc-text-field--end-aligned .mdc-text-field__input, .mdc-text-field--end-aligned .mdc-text-field__input[dir=rtl] {\n /* @noflip */\n text-align: left;\n}\n\n[dir=rtl] .mdc-text-field--ltr-text .mdc-text-field__input,\n[dir=rtl] .mdc-text-field--ltr-text .mdc-text-field__affix, .mdc-text-field--ltr-text[dir=rtl] .mdc-text-field__input,\n.mdc-text-field--ltr-text[dir=rtl] .mdc-text-field__affix {\n /* @noflip */\n direction: ltr;\n}\n[dir=rtl] .mdc-text-field--ltr-text .mdc-text-field__affix--prefix, .mdc-text-field--ltr-text[dir=rtl] .mdc-text-field__affix--prefix {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 2px;\n}\n[dir=rtl] .mdc-text-field--ltr-text .mdc-text-field__affix--suffix, .mdc-text-field--ltr-text[dir=rtl] .mdc-text-field__affix--suffix {\n /* @noflip */\n padding-left: 12px;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-text-field--ltr-text .mdc-text-field__icon--leading, .mdc-text-field--ltr-text[dir=rtl] .mdc-text-field__icon--leading {\n order: 1;\n}\n[dir=rtl] .mdc-text-field--ltr-text .mdc-text-field__affix--suffix, .mdc-text-field--ltr-text[dir=rtl] .mdc-text-field__affix--suffix {\n order: 2;\n}\n[dir=rtl] .mdc-text-field--ltr-text .mdc-text-field__input, .mdc-text-field--ltr-text[dir=rtl] .mdc-text-field__input {\n order: 3;\n}\n[dir=rtl] .mdc-text-field--ltr-text .mdc-text-field__affix--prefix, .mdc-text-field--ltr-text[dir=rtl] .mdc-text-field__affix--prefix {\n order: 4;\n}\n[dir=rtl] .mdc-text-field--ltr-text .mdc-text-field__icon--trailing, .mdc-text-field--ltr-text[dir=rtl] .mdc-text-field__icon--trailing {\n order: 5;\n}\n[dir=rtl] .mdc-text-field--ltr-text.mdc-text-field--end-aligned .mdc-text-field__input, .mdc-text-field--ltr-text.mdc-text-field--end-aligned[dir=rtl] .mdc-text-field__input {\n /* @noflip */\n text-align: right;\n}\n[dir=rtl] .mdc-text-field--ltr-text.mdc-text-field--end-aligned .mdc-text-field__affix--prefix, .mdc-text-field--ltr-text.mdc-text-field--end-aligned[dir=rtl] .mdc-text-field__affix--prefix {\n /* @noflip */\n padding-right: 12px;\n}\n[dir=rtl] .mdc-text-field--ltr-text.mdc-text-field--end-aligned .mdc-text-field__affix--suffix, .mdc-text-field--ltr-text.mdc-text-field--end-aligned[dir=rtl] .mdc-text-field__affix--suffix {\n /* @noflip */\n padding-left: 2px;\n}\n\n.mdc-text-field-helper-text {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.75rem;\n /* @alternate */\n font-size: var(--mdc-typography-caption-font-size, 0.75rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-caption-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-caption-font-weight, 400);\n letter-spacing: 0.0333333333em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-caption-letter-spacing, 0.0333333333em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-caption-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-caption-text-transform, inherit);\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n margin: 0;\n opacity: 0;\n will-change: opacity;\n transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n.mdc-text-field-helper-text::before {\n display: inline-block;\n width: 0;\n height: 16px;\n content: \"\";\n vertical-align: 0;\n}\n\n.mdc-text-field-helper-text--persistent {\n transition: none;\n opacity: 1;\n will-change: initial;\n}\n\n.mdc-text-field-character-counter {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.75rem;\n /* @alternate */\n font-size: var(--mdc-typography-caption-font-size, 0.75rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-caption-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-caption-font-weight, 400);\n letter-spacing: 0.0333333333em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-caption-letter-spacing, 0.0333333333em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-caption-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-caption-text-transform, inherit);\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n /* @noflip */\n margin-left: auto;\n /* @noflip */\n margin-right: 0;\n /* @noflip */\n padding-left: 16px;\n /* @noflip */\n padding-right: 0;\n white-space: nowrap;\n}\n.mdc-text-field-character-counter::before {\n display: inline-block;\n width: 0;\n height: 16px;\n content: \"\";\n vertical-align: 0;\n}\n[dir=rtl] .mdc-text-field-character-counter, .mdc-text-field-character-counter[dir=rtl] {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: auto;\n}\n[dir=rtl] .mdc-text-field-character-counter, .mdc-text-field-character-counter[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 16px;\n}\n\n.mdc-text-field__icon {\n align-self: center;\n cursor: pointer;\n}\n.mdc-text-field__icon:not([tabindex]), .mdc-text-field__icon[tabindex=\"-1\"] {\n cursor: default;\n pointer-events: none;\n}\n.mdc-text-field__icon svg {\n display: block;\n}\n\n.mdc-text-field__icon--leading {\n /* @noflip */\n margin-left: 16px;\n /* @noflip */\n margin-right: 8px;\n}\n[dir=rtl] .mdc-text-field__icon--leading, .mdc-text-field__icon--leading[dir=rtl] {\n /* @noflip */\n margin-left: 8px;\n /* @noflip */\n margin-right: 16px;\n}\n\n.mdc-text-field__icon--trailing {\n padding: 12px;\n /* @noflip */\n margin-left: 0px;\n /* @noflip */\n margin-right: 0px;\n}\n[dir=rtl] .mdc-text-field__icon--trailing, .mdc-text-field__icon--trailing[dir=rtl] {\n /* @noflip */\n margin-left: 0px;\n /* @noflip */\n margin-right: 0px;\n}\n\n:root {\n --mdc-theme-primary: #6200ee;\n --mdc-theme-secondary: #018786;\n --mdc-theme-background: #fff;\n --mdc-theme-surface: #fff;\n --mdc-theme-error: #b00020;\n --mdc-theme-on-primary: #fff;\n --mdc-theme-on-secondary: #fff;\n --mdc-theme-on-surface: #000;\n --mdc-theme-on-error: #fff;\n --mdc-theme-text-primary-on-background: rgba(0, 0, 0, 0.87);\n --mdc-theme-text-secondary-on-background: rgba(0, 0, 0, 0.54);\n --mdc-theme-text-hint-on-background: rgba(0, 0, 0, 0.38);\n --mdc-theme-text-disabled-on-background: rgba(0, 0, 0, 0.38);\n --mdc-theme-text-icon-on-background: rgba(0, 0, 0, 0.38);\n --mdc-theme-text-primary-on-light: rgba(0, 0, 0, 0.87);\n --mdc-theme-text-secondary-on-light: rgba(0, 0, 0, 0.54);\n --mdc-theme-text-hint-on-light: rgba(0, 0, 0, 0.38);\n --mdc-theme-text-disabled-on-light: rgba(0, 0, 0, 0.38);\n --mdc-theme-text-icon-on-light: rgba(0, 0, 0, 0.38);\n --mdc-theme-text-primary-on-dark: white;\n --mdc-theme-text-secondary-on-dark: rgba(255, 255, 255, 0.7);\n --mdc-theme-text-hint-on-dark: rgba(255, 255, 255, 0.5);\n --mdc-theme-text-disabled-on-dark: rgba(255, 255, 255, 0.5);\n --mdc-theme-text-icon-on-dark: rgba(255, 255, 255, 0.5);\n}\n\n.mdc-theme--primary {\n color: #6200ee !important;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee) !important;\n}\n\n.mdc-theme--secondary {\n color: #018786 !important;\n /* @alternate */\n color: var(--mdc-theme-secondary, #018786) !important;\n}\n\n.mdc-theme--background {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-background, #fff);\n}\n\n.mdc-theme--surface {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-theme-surface, #fff);\n}\n\n.mdc-theme--error {\n color: #b00020 !important;\n /* @alternate */\n color: var(--mdc-theme-error, #b00020) !important;\n}\n\n.mdc-theme--on-primary {\n color: #fff !important;\n /* @alternate */\n color: var(--mdc-theme-on-primary, #fff) !important;\n}\n\n.mdc-theme--on-secondary {\n color: #fff !important;\n /* @alternate */\n color: var(--mdc-theme-on-secondary, #fff) !important;\n}\n\n.mdc-theme--on-surface {\n color: #000 !important;\n /* @alternate */\n color: var(--mdc-theme-on-surface, #000) !important;\n}\n\n.mdc-theme--on-error {\n color: #fff !important;\n /* @alternate */\n color: var(--mdc-theme-on-error, #fff) !important;\n}\n\n.mdc-theme--text-primary-on-background {\n color: rgba(0, 0, 0, 0.87) !important;\n /* @alternate */\n color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87)) !important;\n}\n\n.mdc-theme--text-secondary-on-background {\n color: rgba(0, 0, 0, 0.54) !important;\n /* @alternate */\n color: var(--mdc-theme-text-secondary-on-background, rgba(0, 0, 0, 0.54)) !important;\n}\n\n.mdc-theme--text-hint-on-background {\n color: rgba(0, 0, 0, 0.38) !important;\n /* @alternate */\n color: var(--mdc-theme-text-hint-on-background, rgba(0, 0, 0, 0.38)) !important;\n}\n\n.mdc-theme--text-disabled-on-background {\n color: rgba(0, 0, 0, 0.38) !important;\n /* @alternate */\n color: var(--mdc-theme-text-disabled-on-background, rgba(0, 0, 0, 0.38)) !important;\n}\n\n.mdc-theme--text-icon-on-background {\n color: rgba(0, 0, 0, 0.38) !important;\n /* @alternate */\n color: var(--mdc-theme-text-icon-on-background, rgba(0, 0, 0, 0.38)) !important;\n}\n\n.mdc-theme--text-primary-on-light {\n color: rgba(0, 0, 0, 0.87) !important;\n /* @alternate */\n color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87)) !important;\n}\n\n.mdc-theme--text-secondary-on-light {\n color: rgba(0, 0, 0, 0.54) !important;\n /* @alternate */\n color: var(--mdc-theme-text-secondary-on-light, rgba(0, 0, 0, 0.54)) !important;\n}\n\n.mdc-theme--text-hint-on-light {\n color: rgba(0, 0, 0, 0.38) !important;\n /* @alternate */\n color: var(--mdc-theme-text-hint-on-light, rgba(0, 0, 0, 0.38)) !important;\n}\n\n.mdc-theme--text-disabled-on-light {\n color: rgba(0, 0, 0, 0.38) !important;\n /* @alternate */\n color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38)) !important;\n}\n\n.mdc-theme--text-icon-on-light {\n color: rgba(0, 0, 0, 0.38) !important;\n /* @alternate */\n color: var(--mdc-theme-text-icon-on-light, rgba(0, 0, 0, 0.38)) !important;\n}\n\n.mdc-theme--text-primary-on-dark {\n color: white !important;\n /* @alternate */\n color: var(--mdc-theme-text-primary-on-dark, white) !important;\n}\n\n.mdc-theme--text-secondary-on-dark {\n color: rgba(255, 255, 255, 0.7) !important;\n /* @alternate */\n color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7)) !important;\n}\n\n.mdc-theme--text-hint-on-dark {\n color: rgba(255, 255, 255, 0.5) !important;\n /* @alternate */\n color: var(--mdc-theme-text-hint-on-dark, rgba(255, 255, 255, 0.5)) !important;\n}\n\n.mdc-theme--text-disabled-on-dark {\n color: rgba(255, 255, 255, 0.5) !important;\n /* @alternate */\n color: var(--mdc-theme-text-disabled-on-dark, rgba(255, 255, 255, 0.5)) !important;\n}\n\n.mdc-theme--text-icon-on-dark {\n color: rgba(255, 255, 255, 0.5) !important;\n /* @alternate */\n color: var(--mdc-theme-text-icon-on-dark, rgba(255, 255, 255, 0.5)) !important;\n}\n\n.mdc-theme--primary-bg {\n background-color: #6200ee !important;\n /* @alternate */\n background-color: var(--mdc-theme-primary, #6200ee) !important;\n}\n\n.mdc-theme--secondary-bg {\n background-color: #018786 !important;\n /* @alternate */\n background-color: var(--mdc-theme-secondary, #018786) !important;\n}\n\n.mdc-tooltip__surface {\n border-radius: 4px;\n /* @alternate */\n border-radius: var(--mdc-shape-small, 4px);\n}\n\n.mdc-tooltip__surface {\n color: white;\n /* @alternate */\n color: var(--mdc-theme-text-primary-on-dark, white);\n}\n\n.mdc-tooltip__surface {\n background-color: rgba(0, 0, 0, 0.6);\n}\n\n.mdc-tooltip__surface {\n word-break: break-all;\n /* @alternate */\n word-break: var(--mdc-tooltip-word-break, normal);\n overflow-wrap: anywhere;\n}\n\n.mdc-tooltip {\n z-index: 2;\n}\n\n.mdc-tooltip--showing-transition .mdc-tooltip__surface {\n transition: opacity 150ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 150ms 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.mdc-tooltip--hide-transition .mdc-tooltip__surface {\n transition: opacity 75ms 0ms cubic-bezier(0.4, 0, 1, 1);\n}\n\n.mdc-tooltip__title {\n color: rgba(0, 0, 0, 0.87);\n /* @alternate */\n color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));\n}\n\n.mdc-tooltip__content {\n color: rgba(0, 0, 0, 0.6);\n}\n\n.mdc-tooltip__content-link {\n color: #6200ee;\n /* @alternate */\n color: var(--mdc-theme-primary, #6200ee);\n}\n\n.mdc-tooltip {\n position: fixed;\n display: none;\n}\n\n.mdc-tooltip-wrapper--rich {\n position: relative;\n}\n\n.mdc-tooltip--shown,\n.mdc-tooltip--showing,\n.mdc-tooltip--hide {\n display: inline-flex;\n}\n.mdc-tooltip--shown.mdc-tooltip--rich,\n.mdc-tooltip--showing.mdc-tooltip--rich,\n.mdc-tooltip--hide.mdc-tooltip--rich {\n /* @alternate */\n box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);\n display: inline-block;\n border-radius: 8px;\n left: -320px;\n padding: 8px 8px;\n position: absolute;\n}\n.mdc-tooltip--shown.mdc-tooltip--rich .mdc-tooltip__surface,\n.mdc-tooltip--showing.mdc-tooltip--rich .mdc-tooltip__surface,\n.mdc-tooltip--hide.mdc-tooltip--rich .mdc-tooltip__surface {\n background-color: rgba(255, 255, 255, 0.6);\n}\n\n.mdc-tooltip__surface {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.75rem;\n /* @alternate */\n font-size: var(--mdc-typography-caption-font-size, 0.75rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-caption-font-weight, 400);\n letter-spacing: 0.0333333333em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-caption-letter-spacing, 0.0333333333em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-caption-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-caption-text-transform, inherit);\n line-height: 16px;\n padding: 4px 8px;\n min-width: 40px;\n max-width: 200px;\n min-height: 24px;\n max-height: 40vh;\n box-sizing: border-box;\n overflow: hidden;\n text-align: center;\n transform: scale(0.8);\n opacity: 0;\n will-change: transform, opacity;\n outline: 1px solid transparent;\n}\n.mdc-tooltip--rich .mdc-tooltip__surface {\n align-items: flex-start;\n display: flex;\n flex-direction: column;\n min-height: 24px;\n min-width: 40px;\n max-width: 320px;\n}\n.mdc-tooltip--multiline .mdc-tooltip__surface {\n /* @noflip */\n text-align: left;\n}\n[dir=rtl] .mdc-tooltip--multiline .mdc-tooltip__surface, .mdc-tooltip--multiline .mdc-tooltip__surface[dir=rtl] {\n /* @noflip */\n text-align: right;\n}\n.mdc-tooltip--shown .mdc-tooltip__surface {\n transform: scale(1);\n opacity: 1;\n}\n.mdc-tooltip--hide .mdc-tooltip__surface {\n transform: scale(1);\n}\n.mdc-tooltip__surface .mdc-tooltip__title {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle2-font-size, 0.875rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle2-font-weight, 500);\n letter-spacing: 0.0071428571em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle2-letter-spacing, 0.0071428571em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle2-text-transform, inherit);\n margin: 0 8px;\n}\n.mdc-tooltip__surface .mdc-tooltip__title::before {\n display: inline-block;\n width: 0;\n height: 20px;\n content: \"\";\n vertical-align: 0;\n}\n.mdc-tooltip__surface .mdc-tooltip__content {\n display: block;\n margin-top: 0;\n /* @alternate */\n line-height: normal;\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-body1-font-size, 1rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body1-font-weight, 400);\n letter-spacing: 0.03125em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body1-letter-spacing, 0.03125em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body1-text-transform, inherit);\n margin: 0 8px 16px 8px;\n /* @noflip */\n text-align: left;\n}\n.mdc-tooltip__surface .mdc-tooltip__content::before {\n display: inline-block;\n width: 0;\n height: 24px;\n content: \"\";\n vertical-align: 0;\n}\n[dir=rtl] .mdc-tooltip__surface .mdc-tooltip__content, .mdc-tooltip__surface .mdc-tooltip__content[dir=rtl] {\n /* @noflip */\n text-align: right;\n}\n.mdc-tooltip__surface .mdc-tooltip__content-link {\n text-decoration: none;\n}\n\n.mdc-top-app-bar {\n background-color: #6200ee;\n /* @alternate */\n background-color: var(--mdc-theme-primary, #6200ee);\n color: white;\n display: flex;\n position: fixed;\n flex-direction: column;\n justify-content: space-between;\n box-sizing: border-box;\n width: 100%;\n z-index: 4;\n}\n.mdc-top-app-bar .mdc-top-app-bar__action-item,\n.mdc-top-app-bar .mdc-top-app-bar__navigation-icon {\n color: #fff;\n /* @alternate */\n color: var(--mdc-theme-on-primary, #fff);\n}\n.mdc-top-app-bar .mdc-top-app-bar__action-item::before, .mdc-top-app-bar .mdc-top-app-bar__action-item::after,\n.mdc-top-app-bar .mdc-top-app-bar__navigation-icon::before,\n.mdc-top-app-bar .mdc-top-app-bar__navigation-icon::after {\n background-color: #fff;\n /* @alternate */\n background-color: var(--mdc-ripple-color, var(--mdc-theme-on-primary, #fff));\n}\n.mdc-top-app-bar .mdc-top-app-bar__action-item:hover::before, .mdc-top-app-bar .mdc-top-app-bar__action-item.mdc-ripple-surface--hover::before,\n.mdc-top-app-bar .mdc-top-app-bar__navigation-icon:hover::before,\n.mdc-top-app-bar .mdc-top-app-bar__navigation-icon.mdc-ripple-surface--hover::before {\n opacity: 0.08;\n /* @alternate */\n opacity: var(--mdc-ripple-hover-opacity, 0.08);\n}\n.mdc-top-app-bar .mdc-top-app-bar__action-item.mdc-ripple-upgraded--background-focused::before, .mdc-top-app-bar .mdc-top-app-bar__action-item:not(.mdc-ripple-upgraded):focus::before,\n.mdc-top-app-bar .mdc-top-app-bar__navigation-icon.mdc-ripple-upgraded--background-focused::before,\n.mdc-top-app-bar .mdc-top-app-bar__navigation-icon:not(.mdc-ripple-upgraded):focus::before {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-focus-opacity, 0.24);\n}\n.mdc-top-app-bar .mdc-top-app-bar__action-item:not(.mdc-ripple-upgraded)::after,\n.mdc-top-app-bar .mdc-top-app-bar__navigation-icon:not(.mdc-ripple-upgraded)::after {\n transition: opacity 150ms linear;\n}\n.mdc-top-app-bar .mdc-top-app-bar__action-item:not(.mdc-ripple-upgraded):active::after,\n.mdc-top-app-bar .mdc-top-app-bar__navigation-icon:not(.mdc-ripple-upgraded):active::after {\n transition-duration: 75ms;\n opacity: 0.24;\n /* @alternate */\n opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n.mdc-top-app-bar .mdc-top-app-bar__action-item.mdc-ripple-upgraded,\n.mdc-top-app-bar .mdc-top-app-bar__navigation-icon.mdc-ripple-upgraded {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, 0.24);\n}\n.mdc-top-app-bar__row {\n display: flex;\n position: relative;\n box-sizing: border-box;\n width: 100%;\n height: 64px;\n}\n.mdc-top-app-bar__section {\n display: inline-flex;\n flex: 1 1 auto;\n align-items: center;\n min-width: 0;\n padding: 8px 12px;\n z-index: 1;\n}\n.mdc-top-app-bar__section--align-start {\n justify-content: flex-start;\n order: -1;\n}\n.mdc-top-app-bar__section--align-end {\n justify-content: flex-end;\n order: 1;\n}\n.mdc-top-app-bar__title {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-headline6-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1.25rem;\n /* @alternate */\n font-size: var(--mdc-typography-headline6-font-size, 1.25rem);\n line-height: 2rem;\n /* @alternate */\n line-height: var(--mdc-typography-headline6-line-height, 2rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-headline6-font-weight, 500);\n letter-spacing: 0.0125em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-headline6-letter-spacing, 0.0125em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-headline6-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-headline6-text-transform, inherit);\n /* @noflip */\n padding-left: 20px;\n /* @noflip */\n padding-right: 0;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n z-index: 1;\n}\n[dir=rtl] .mdc-top-app-bar__title, .mdc-top-app-bar__title[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 20px;\n}\n\n.mdc-top-app-bar--short-collapsed {\n /* @noflip */\n border-top-left-radius: 0;\n /* @noflip */\n border-top-right-radius: 0;\n /* @noflip */\n border-bottom-right-radius: 24px;\n /* @noflip */\n border-bottom-left-radius: 0;\n}\n[dir=rtl] .mdc-top-app-bar--short-collapsed, .mdc-top-app-bar--short-collapsed[dir=rtl] {\n /* @noflip */\n border-top-left-radius: 0;\n /* @noflip */\n border-top-right-radius: 0;\n /* @noflip */\n border-bottom-right-radius: 0;\n /* @noflip */\n border-bottom-left-radius: 24px;\n}\n\n.mdc-top-app-bar--short {\n top: 0;\n /* @noflip */\n right: auto;\n /* @noflip */\n left: 0;\n width: 100%;\n transition: width 250ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n[dir=rtl] .mdc-top-app-bar--short, .mdc-top-app-bar--short[dir=rtl] {\n /* @noflip */\n right: 0;\n /* @noflip */\n left: auto;\n}\n.mdc-top-app-bar--short .mdc-top-app-bar__row {\n height: 56px;\n}\n.mdc-top-app-bar--short .mdc-top-app-bar__section {\n padding: 4px;\n}\n.mdc-top-app-bar--short .mdc-top-app-bar__title {\n transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1);\n opacity: 1;\n}\n\n.mdc-top-app-bar--short-collapsed {\n /* @alternate */\n box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);\n width: 56px;\n transition: width 300ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n.mdc-top-app-bar--short-collapsed .mdc-top-app-bar__title {\n display: none;\n}\n.mdc-top-app-bar--short-collapsed .mdc-top-app-bar__action-item {\n transition: padding 150ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.mdc-top-app-bar--short-collapsed.mdc-top-app-bar--short-has-action-item {\n width: 112px;\n}\n.mdc-top-app-bar--short-collapsed.mdc-top-app-bar--short-has-action-item .mdc-top-app-bar__section--align-end {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 12px;\n}\n[dir=rtl] .mdc-top-app-bar--short-collapsed.mdc-top-app-bar--short-has-action-item .mdc-top-app-bar__section--align-end, .mdc-top-app-bar--short-collapsed.mdc-top-app-bar--short-has-action-item .mdc-top-app-bar__section--align-end[dir=rtl] {\n /* @noflip */\n padding-left: 12px;\n /* @noflip */\n padding-right: 0;\n}\n\n.mdc-top-app-bar--dense .mdc-top-app-bar__row {\n height: 48px;\n}\n.mdc-top-app-bar--dense .mdc-top-app-bar__section {\n padding: 0 4px;\n}\n.mdc-top-app-bar--dense .mdc-top-app-bar__title {\n /* @noflip */\n padding-left: 12px;\n /* @noflip */\n padding-right: 0;\n}\n[dir=rtl] .mdc-top-app-bar--dense .mdc-top-app-bar__title, .mdc-top-app-bar--dense .mdc-top-app-bar__title[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 12px;\n}\n\n.mdc-top-app-bar--prominent .mdc-top-app-bar__row {\n height: 128px;\n}\n.mdc-top-app-bar--prominent .mdc-top-app-bar__title {\n align-self: flex-end;\n padding-bottom: 2px;\n}\n.mdc-top-app-bar--prominent .mdc-top-app-bar__action-item,\n.mdc-top-app-bar--prominent .mdc-top-app-bar__navigation-icon {\n align-self: flex-start;\n}\n\n.mdc-top-app-bar--fixed {\n transition: box-shadow 200ms linear;\n}\n\n.mdc-top-app-bar--fixed-scrolled {\n /* @alternate */\n box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);\n transition: box-shadow 200ms linear;\n}\n\n.mdc-top-app-bar--dense.mdc-top-app-bar--prominent .mdc-top-app-bar__row {\n height: 96px;\n}\n.mdc-top-app-bar--dense.mdc-top-app-bar--prominent .mdc-top-app-bar__section {\n padding: 0 12px;\n}\n.mdc-top-app-bar--dense.mdc-top-app-bar--prominent .mdc-top-app-bar__title {\n /* @noflip */\n padding-left: 20px;\n /* @noflip */\n padding-right: 0;\n padding-bottom: 9px;\n}\n[dir=rtl] .mdc-top-app-bar--dense.mdc-top-app-bar--prominent .mdc-top-app-bar__title, .mdc-top-app-bar--dense.mdc-top-app-bar--prominent .mdc-top-app-bar__title[dir=rtl] {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 20px;\n}\n\n.mdc-top-app-bar--fixed-adjust {\n padding-top: 64px;\n}\n\n.mdc-top-app-bar--dense-fixed-adjust {\n padding-top: 48px;\n}\n\n.mdc-top-app-bar--short-fixed-adjust {\n padding-top: 56px;\n}\n\n.mdc-top-app-bar--prominent-fixed-adjust {\n padding-top: 128px;\n}\n\n.mdc-top-app-bar--dense-prominent-fixed-adjust {\n padding-top: 96px;\n}\n\n@media (max-width: 599px) {\n .mdc-top-app-bar__row {\n height: 56px;\n }\n\n .mdc-top-app-bar__section {\n padding: 4px;\n }\n\n .mdc-top-app-bar--short {\n transition: width 200ms cubic-bezier(0.4, 0, 0.2, 1);\n }\n\n .mdc-top-app-bar--short-collapsed {\n transition: width 250ms cubic-bezier(0.4, 0, 0.2, 1);\n }\n .mdc-top-app-bar--short-collapsed .mdc-top-app-bar__section--align-end {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 12px;\n }\n [dir=rtl] .mdc-top-app-bar--short-collapsed .mdc-top-app-bar__section--align-end, .mdc-top-app-bar--short-collapsed .mdc-top-app-bar__section--align-end[dir=rtl] {\n /* @noflip */\n padding-left: 12px;\n /* @noflip */\n padding-right: 0;\n }\n\n .mdc-top-app-bar--prominent .mdc-top-app-bar__title {\n padding-bottom: 6px;\n }\n\n .mdc-top-app-bar--fixed-adjust {\n padding-top: 56px;\n }\n}\n.mdc-typography {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-font-family, Roboto, sans-serif);\n}\n\n.mdc-typography--headline1 {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-headline1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 6rem;\n /* @alternate */\n font-size: var(--mdc-typography-headline1-font-size, 6rem);\n line-height: 6rem;\n /* @alternate */\n line-height: var(--mdc-typography-headline1-line-height, 6rem);\n font-weight: 300;\n /* @alternate */\n font-weight: var(--mdc-typography-headline1-font-weight, 300);\n letter-spacing: -0.015625em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-headline1-letter-spacing, -0.015625em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-headline1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-headline1-text-transform, inherit);\n}\n\n.mdc-typography--headline2 {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-headline2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 3.75rem;\n /* @alternate */\n font-size: var(--mdc-typography-headline2-font-size, 3.75rem);\n line-height: 3.75rem;\n /* @alternate */\n line-height: var(--mdc-typography-headline2-line-height, 3.75rem);\n font-weight: 300;\n /* @alternate */\n font-weight: var(--mdc-typography-headline2-font-weight, 300);\n letter-spacing: -0.0083333333em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-headline2-letter-spacing, -0.0083333333em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-headline2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-headline2-text-transform, inherit);\n}\n\n.mdc-typography--headline3 {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-headline3-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 3rem;\n /* @alternate */\n font-size: var(--mdc-typography-headline3-font-size, 3rem);\n line-height: 3.125rem;\n /* @alternate */\n line-height: var(--mdc-typography-headline3-line-height, 3.125rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-headline3-font-weight, 400);\n letter-spacing: normal;\n /* @alternate */\n letter-spacing: var(--mdc-typography-headline3-letter-spacing, normal);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-headline3-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-headline3-text-transform, inherit);\n}\n\n.mdc-typography--headline4 {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-headline4-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 2.125rem;\n /* @alternate */\n font-size: var(--mdc-typography-headline4-font-size, 2.125rem);\n line-height: 2.5rem;\n /* @alternate */\n line-height: var(--mdc-typography-headline4-line-height, 2.5rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-headline4-font-weight, 400);\n letter-spacing: 0.0073529412em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-headline4-letter-spacing, 0.0073529412em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-headline4-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-headline4-text-transform, inherit);\n}\n\n.mdc-typography--headline5 {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-headline5-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1.5rem;\n /* @alternate */\n font-size: var(--mdc-typography-headline5-font-size, 1.5rem);\n line-height: 2rem;\n /* @alternate */\n line-height: var(--mdc-typography-headline5-line-height, 2rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-headline5-font-weight, 400);\n letter-spacing: normal;\n /* @alternate */\n letter-spacing: var(--mdc-typography-headline5-letter-spacing, normal);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-headline5-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-headline5-text-transform, inherit);\n}\n\n.mdc-typography--headline6 {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-headline6-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1.25rem;\n /* @alternate */\n font-size: var(--mdc-typography-headline6-font-size, 1.25rem);\n line-height: 2rem;\n /* @alternate */\n line-height: var(--mdc-typography-headline6-line-height, 2rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-headline6-font-weight, 500);\n letter-spacing: 0.0125em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-headline6-letter-spacing, 0.0125em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-headline6-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-headline6-text-transform, inherit);\n}\n\n.mdc-typography--subtitle1 {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle1-font-size, 1rem);\n line-height: 1.75rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle1-line-height, 1.75rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle1-font-weight, 400);\n letter-spacing: 0.009375em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle1-text-transform, inherit);\n}\n\n.mdc-typography--subtitle2 {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-subtitle2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-subtitle2-font-size, 0.875rem);\n line-height: 1.375rem;\n /* @alternate */\n line-height: var(--mdc-typography-subtitle2-line-height, 1.375rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-subtitle2-font-weight, 500);\n letter-spacing: 0.0071428571em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-subtitle2-letter-spacing, 0.0071428571em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-subtitle2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-subtitle2-text-transform, inherit);\n}\n\n.mdc-typography--body1 {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 1rem;\n /* @alternate */\n font-size: var(--mdc-typography-body1-font-size, 1rem);\n line-height: 1.5rem;\n /* @alternate */\n line-height: var(--mdc-typography-body1-line-height, 1.5rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body1-font-weight, 400);\n letter-spacing: 0.03125em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body1-letter-spacing, 0.03125em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body1-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body1-text-transform, inherit);\n}\n\n.mdc-typography--body2 {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-body2-font-size, 0.875rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-body2-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-body2-font-weight, 400);\n letter-spacing: 0.0178571429em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-body2-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-body2-text-transform, inherit);\n}\n\n.mdc-typography--caption {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.75rem;\n /* @alternate */\n font-size: var(--mdc-typography-caption-font-size, 0.75rem);\n line-height: 1.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-caption-line-height, 1.25rem);\n font-weight: 400;\n /* @alternate */\n font-weight: var(--mdc-typography-caption-font-weight, 400);\n letter-spacing: 0.0333333333em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-caption-letter-spacing, 0.0333333333em);\n text-decoration: inherit;\n /* @alternate */\n text-decoration: var(--mdc-typography-caption-text-decoration, inherit);\n text-transform: inherit;\n /* @alternate */\n text-transform: var(--mdc-typography-caption-text-transform, inherit);\n}\n\n.mdc-typography--button {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-button-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.875rem;\n /* @alternate */\n font-size: var(--mdc-typography-button-font-size, 0.875rem);\n line-height: 2.25rem;\n /* @alternate */\n line-height: var(--mdc-typography-button-line-height, 2.25rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-button-font-weight, 500);\n letter-spacing: 0.0892857143em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-button-letter-spacing, 0.0892857143em);\n text-decoration: none;\n /* @alternate */\n text-decoration: var(--mdc-typography-button-text-decoration, none);\n text-transform: uppercase;\n /* @alternate */\n text-transform: var(--mdc-typography-button-text-transform, uppercase);\n}\n\n.mdc-typography--overline {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: Roboto, sans-serif;\n /* @alternate */\n font-family: var(--mdc-typography-overline-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));\n font-size: 0.75rem;\n /* @alternate */\n font-size: var(--mdc-typography-overline-font-size, 0.75rem);\n line-height: 2rem;\n /* @alternate */\n line-height: var(--mdc-typography-overline-line-height, 2rem);\n font-weight: 500;\n /* @alternate */\n font-weight: var(--mdc-typography-overline-font-weight, 500);\n letter-spacing: 0.1666666667em;\n /* @alternate */\n letter-spacing: var(--mdc-typography-overline-letter-spacing, 0.1666666667em);\n text-decoration: none;\n /* @alternate */\n text-decoration: var(--mdc-typography-overline-text-decoration, none);\n text-transform: uppercase;\n /* @alternate */\n text-transform: var(--mdc-typography-overline-text-transform, uppercase);\n}","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use 'sass:list';\n@use 'sass:map';\n@use 'sass:meta';\n@use './gss';\n\n/// When true, add an additional property/value declaration before declarations\n/// that use advanced features such as custom properties or CSS functions. This\n/// adds fallback support for older browsers such as IE11 that do not support\n/// these features at the cost of additional CSS. Set this variable to false to\n/// disable generating fallback declarations.\n$enable-fallback-declarations: true !default;\n\n/// Writes a CSS property/value declaration. This mixin is used throughout the\n/// theme package for consistency for dynamically setting CSS property values.\n///\n/// This mixin may optionally take a fallback value. For advanced features such\n/// as custom properties or CSS functions like min and max, a fallback value is\n/// recommended to support older browsers.\n///\n/// @param {String} $property - The CSS property of the declaration.\n/// @param {*} $value - The value of the CSS declaration. The value should be\n/// resolved by other theme functions first (i.e. custom property Maps and\n/// Material theme keys are not supported in this mixin). If the value is\n/// null, no declarations will be emitted.\n/// @param {*} $fallback - An optional fallback value for older browsers. If\n/// provided, a second property/value declaration will be added before the\n/// main property/value declaration.\n/// @param {Map} $gss - An optional Map of GSS annotations to add.\n/// @param {Bool} $important - If true, add `!important` to the declaration.\n@mixin declaration(\n $property,\n $value,\n $fallback-value: null,\n $gss: (),\n $important: false\n) {\n // Normally setting a null value to a property will not emit CSS, so mixins\n // wouldn't need to check this. However, Sass will throw an error if the\n // interpolated property is a custom property.\n @if $value != null {\n $important-rule: if($important, '!important', '');\n\n @if $fallback-value and $enable-fallback-declarations {\n @include gss.annotate($gss);\n #{$property}: #{$fallback-value} #{$important-rule};\n\n // Add @alternate to annotations.\n $gss: map.merge(\n $gss,\n (\n alternate: true,\n )\n );\n }\n\n @include gss.annotate($gss);\n #{$property}: #{$value} #{$important-rule};\n }\n}\n\n/// Unpacks shorthand values for CSS properties (i.e. lists of 1-3 values).\n/// If a list of 4 values is given, it is returned as-is.\n///\n/// Examples:\n///\n/// unpack-value(4px) => 4px 4px 4px 4px\n/// unpack-value(4px 2px) => 4px 2px 4px 2px\n/// unpack-value(4px 2px 2px) => 4px 2px 2px 2px\n/// unpack-value(4px 2px 0 2px) => 4px 2px 0 2px\n///\n/// @param {Number | Map | List} $value - List of 1 to 4 value numbers.\n/// @return {List} a List of 4 value numbers.\n@function unpack-value($value) {\n @if meta.type-of($value) == 'map' or list.length($value) == 1 {\n @return $value $value $value $value;\n } @else if list.length($value) == 4 {\n @return $value;\n } @else if list.length($value) == 3 {\n @return list.nth($value, 1) list.nth($value, 2) list.nth($value, 3)\n list.nth($value, 2);\n } @else if list.length($value) == 2 {\n @return list.nth($value, 1) list.nth($value, 2) list.nth($value, 1)\n list.nth($value, 2);\n }\n\n @error \"Invalid CSS property value: '#{$value}' is more than 4 values\";\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n@use 'sass:map';\n\n/// Adds optional GSS annotation comments. Useful for theme mixins where one or\n/// more properties are set indirectly.\n///\n/// @example\n/// `annotate((noflip: true)) => /* @noflip */`\n///\n/// @param {Map} $annotations - Map of annotations. Values must be set to `true`\n/// for an annotation to be added.\n@mixin annotate($annotations) {\n @if (map.get($annotations, alternate) == true) {\n /* @alternate */\n }\n\n // noflip must be the last tag right before the property\n @if (map.get($annotations, noflip) == true) {\n /* @noflip */\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/typography/typography';\n@use '@material/button/button-theme';\n@use '@material/ripple/ripple-theme';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use './banner-theme';\n\n$_text-type-scale: body2;\n$_min-width: 344px;\n$_max-width: 720px;\n// Minimum banner height minus standard text height, divided by 2 for both top\n// and bottom padding. This is used to support two/three line banners.\n$_text-padding-top-bottom: ((52px - 20px) / 2);\n\n$_enter-duration: 300ms;\n$_exit-duration: 250ms;\n\n/// Core styles for banner component.\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include banner-theme.text-color(banner-theme.$text-color, $query: $query);\n @include banner-theme.graphic-color(\n banner-theme.$graphic-color,\n $query: $query\n );\n @include banner-theme.graphic-background-color(\n banner-theme.$graphic-background-color,\n $query: $query\n );\n @include banner-theme.graphic-shape-radius(\n banner-theme.$graphic-shape-radius,\n $query: $query\n );\n @include banner-theme.min-width($_min-width, $query: $query);\n @include banner-theme.max-width($_max-width, $query: $query);\n\n .mdc-banner {\n @include banner-theme.fill-color(banner-theme.$fill-color, $query: $query);\n @include banner-theme.divider-color(\n banner-theme.$divider-color,\n $query: $query\n );\n @include banner-theme.z-index(banner-theme.$z-index, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n // Mobile view styles.\n @media (max-width: banner-theme.$mobile-breakpoint) {\n // Span across viewport for fixed mobile view.\n .mdc-banner__fixed {\n left: 0;\n right: 0;\n }\n\n .mdc-banner__text {\n @include rtl-mixins.reflexive-property(margin, 16px, 36px);\n }\n }\n\n border-bottom-style: solid;\n border-bottom-width: 1px;\n box-sizing: border-box;\n display: none;\n flex-shrink: 0;\n height: 0;\n position: relative;\n width: 100%;\n }\n\n &.mdc-banner--mobile-stacked {\n @include banner-theme.mobile-stacked($query: $query);\n }\n }\n\n .mdc-banner--opening,\n .mdc-banner--open,\n .mdc-banner--closing {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n }\n }\n\n .mdc-banner--open {\n @include feature-targeting.targets($feat-animation) {\n transition: height $_enter-duration ease;\n }\n\n .mdc-banner__content {\n @include feature-targeting.targets($feat-animation) {\n transition: transform $_enter-duration ease;\n }\n\n @include feature-targeting.targets($feat-structure) {\n transform: translateY(0);\n }\n }\n }\n\n .mdc-banner--closing {\n @include feature-targeting.targets($feat-animation) {\n transition: height $_exit-duration ease;\n }\n\n .mdc-banner__content {\n @include feature-targeting.targets($feat-animation) {\n transition: transform $_exit-duration ease;\n }\n }\n }\n\n .mdc-banner--centered {\n @include banner-theme.position-centered($query: $query);\n }\n\n .mdc-banner__fixed {\n @include feature-targeting.targets($feat-structure) {\n border-bottom-style: solid;\n border-bottom-width: 1px;\n box-sizing: border-box;\n height: inherit;\n position: fixed;\n width: 100%;\n }\n }\n\n .mdc-banner__content {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n min-height: 52px;\n position: absolute;\n transform: translateY(-100%);\n width: 100%;\n }\n }\n\n .mdc-banner__graphic-text-wrapper {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n width: 100%;\n }\n }\n\n .mdc-banner__graphic {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(margin, 16px, 0);\n\n flex-shrink: 0;\n height: 40px;\n margin-top: 16px;\n margin-bottom: 16px;\n text-align: center;\n width: 40px;\n }\n }\n\n .mdc-banner__icon {\n @include feature-targeting.targets($feat-structure) {\n position: relative;\n top: 50%;\n transform: translateY(-50%);\n }\n }\n\n .mdc-banner__text {\n @include typography.typography($_text-type-scale, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(margin, 24px, 90px);\n\n align-self: center;\n flex-grow: 1;\n\n padding-top: $_text-padding-top-bottom;\n padding-bottom: $_text-padding-top-bottom;\n }\n }\n\n .mdc-banner__actions {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(padding, 0, 8px);\n\n align-self: flex-end;\n display: flex;\n flex-shrink: 0;\n padding-bottom: 8px;\n padding-top: 8px;\n }\n }\n\n .mdc-banner__primary-action {\n @include button-theme.ink-color(\n banner-theme.$primary-action-text-color,\n $query: $query\n );\n @include ripple-theme.states(\n banner-theme.$primary-action-text-color,\n $query: $query\n );\n }\n\n .mdc-banner__secondary-action {\n @include button-theme.ink-color(\n banner-theme.$secondary-action-text-color,\n $query: $query\n );\n @include ripple-theme.states(\n banner-theme.$secondary-action-text-color,\n $query: $query\n );\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(margin, 0, 8px);\n }\n }\n}\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:list';\n@use 'sass:meta';\n@use '@material/theme/theme';\n\n$include: true !default;\n\n// Creates a rule that will be applied when an MDC Web component is within the context of an RTL layout.\n//\n// Usage Example:\n//\n// ```scss\n// .mdc-foo {\n// position: absolute;\n// left: 0;\n//\n// @include rtl {\n// left: auto;\n// right: 0;\n// }\n//\n// &__bar {\n// margin-left: 4px;\n// @include rtl(\".mdc-foo\") {\n// margin-left: auto;\n// margin-right: 4px;\n// }\n// }\n// }\n//\n// .mdc-foo--mod {\n// padding-left: 4px;\n//\n// @include rtl {\n// padding-left: auto;\n// padding-right: 4px;\n// }\n// }\n// ```\n//\n// Note that this mixin works by checking for an ancestor element with `[dir=\"rtl\"]`.\n// As a result, nested `dir` values are not supported:\n//\n// ```html\n// <html dir=\"rtl\">\n// <!-- ... -->\n// <div dir=\"ltr\">\n// <div class=\"mdc-foo\">Styled incorrectly as RTL!</div>\n// </div>\n// </html>\n// ```\n//\n// In the future, selectors such as the `:dir` pseudo-class (http://mdn.io/css/:dir) will help us mitigate this.\n@mixin rtl($root-selector: null) {\n @if ($include) {\n @if ($root-selector) {\n @at-root {\n #{$root-selector}[dir='rtl'] &,\n [dir='rtl'] #{$root-selector} & {\n @content;\n }\n }\n } @else {\n [dir='rtl'] &,\n &[dir='rtl'] {\n @content;\n }\n }\n }\n}\n\n// Takes a base box-model property name (`margin`, `border`, `padding`, etc.) along with a\n// default direction (`left` or `right`) and value, and emits rules which apply the given value to the\n// specified direction by default and the opposite direction in RTL.\n//\n// For example:\n//\n// ```scss\n// .mdc-foo {\n// @include rtl-reflexive-box(margin, left, 8px);\n// }\n// ```\n//\n// is equivalent to:\n//\n// ```scss\n// .mdc-foo {\n// margin-left: 8px;\n// margin-right: 0;\n//\n// @include rtl {\n// margin-left: 0;\n// margin-right: 8px;\n// }\n// }\n// ```\n//\n// whereas:\n//\n// ```scss\n// .mdc-foo {\n// @include rtl-reflexive-box(margin, right, 8px);\n// }\n// ```\n//\n// is equivalent to:\n//\n// ```scss\n// .mdc-foo {\n// margin-left: 0;\n// margin-right: 8px;\n//\n// @include rtl {\n// margin-left: 8px;\n// margin-right: 0;\n// }\n// }\n// ```\n//\n// You can also pass an optional 4th `$root-selector` argument which will be forwarded to `mdc-rtl`,\n// e.g. `@include rtl-reflexive-box(margin, left, 8px, '.mdc-component')`.\n//\n// Note that this function will always zero out the original value in an RTL context.\n// If you're trying to flip the values, use `mdc-rtl-reflexive-property()` instead.\n@mixin reflexive-box(\n $base-property,\n $default-direction,\n $value,\n $root-selector: null,\n $replace: null\n) {\n @if (list.index((right, left), $default-direction) == null) {\n @error \"Invalid default direction: '#{$default-direction}'. Please specifiy either 'right' or 'left'.\";\n }\n\n $left-value: $value;\n $right-value: 0;\n\n @if ($default-direction == right) {\n $left-value: 0;\n $right-value: $value;\n }\n\n @include reflexive-property(\n $base-property,\n $left-value,\n $right-value,\n $root-selector,\n $replace: $replace\n );\n}\n\n// Takes a base property and emits rules that assign <base-property>-left to <left-value> and\n// <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.\n// For example:\n//\n// ```scss\n// .mdc-foo {\n// @include rtl-reflexive-property(margin, auto, 12px);\n// }\n// ```\n//\n// is equivalent to:\n//\n// ```scss\n// .mdc-foo {\n// margin-left: auto;\n// margin-right: 12px;\n//\n// @include rtl {\n// margin-left: 12px;\n// margin-right: auto;\n// }\n// }\n// ```\n//\n// An optional 4th `$root-selector` argument can be given, which will be passed to `mdc-rtl`.\n@mixin reflexive-property(\n $base-property,\n $left-value,\n $right-value,\n $root-selector: null,\n $replace: null\n) {\n $prop-left: #{$base-property}-left;\n $prop-right: #{$base-property}-right;\n\n @include reflexive(\n $prop-left,\n $left-value,\n $prop-right,\n $right-value,\n $root-selector,\n $replace: $replace\n );\n}\n\n// Takes an argument specifying a horizontal position property (either 'left' or 'right') as well\n// as a value, and applies that value to the specified position in a LTR context, and flips it in a\n// RTL context. For example:\n//\n// ```scss\n// .mdc-foo {\n// @include rtl-reflexive-position(left, 0);\n// }\n// ```\n//\n// is equivalent to:\n//\n// ```scss\n// .mdc-foo {\n// left: 0;\n// right: initial;\n//\n// @include rtl {\n// left: initial;\n// right: 0;\n// }\n// }\n// ```\n//\n// An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.\n@mixin reflexive-position(\n $position-property,\n $value,\n $root-selector: null,\n $replace: null\n) {\n @if (list.index((right, left), $position-property) == null) {\n @error \"Invalid position #{position-property}. Please specifiy either right or left\";\n }\n\n // TODO: 'initial' is not supported in IE 11. https://caniuse.com/#feat=css-initial-value\n $left-value: $value;\n $right-value: initial;\n\n @if ($position-property == right) {\n $right-value: $value;\n $left-value: initial;\n }\n\n @include reflexive(\n left,\n $left-value,\n right,\n $right-value,\n $root-selector,\n $replace: $replace\n );\n}\n\n// Takes pair of properties with values as arguments and flips it in RTL context.\n// For example:\n//\n// ```scss\n// .mdc-foo {\n// @include rtl-reflexive(left, 2px, right, 5px);\n// }\n// ```\n//\n// is equivalent to:\n//\n// ```scss\n// .mdc-foo {\n// left: 2px;\n// right: 5px;\n//\n// @include rtl {\n// right: 2px;\n// left: 5px;\n// }\n// }\n// ```\n//\n// An optional fifth `$root-selector` argument may also be given, which is passed to `mdc-rtl`.\n@mixin reflexive(\n $left-property,\n $left-value,\n $right-property,\n $right-value,\n $root-selector: null,\n $replace: null\n) {\n $left-replace: null;\n $right-replace: null;\n @if $replace {\n @if meta.type-of($left-value) == 'string' {\n $left-replace: $replace;\n }\n\n @if meta.type-of($right-value) == 'string' {\n $right-replace: $replace;\n }\n\n @if $left-replace == null and $right-replace == null {\n @error 'mdc-rtl: $replace may only be used with strings but neither left nor right values are strings.';\n }\n }\n\n @include _property($left-property, $left-value, $replace: $left-replace);\n @include _property($right-property, $right-value, $replace: $right-replace);\n\n @include rtl($root-selector) {\n @include _property($left-property, $right-value, $replace: $right-replace);\n @include _property($right-property, $left-value, $replace: $left-replace);\n }\n}\n\n///\n/// Adds `@noflip` annotation when `$mdc-rtl-include` is true.\n///\n/// @param {String} $property\n/// @param {String} $value\n/// @param {Map} $replace\n///\n@mixin _property($property, $value, $replace: null) {\n @include theme.property(\n $property,\n $value,\n $replace: $replace,\n $gss: (noflip: $include)\n );\n}\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:list';\n@use 'sass:map';\n@use 'sass:string';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/theme';\n\n@function set-styles_($base-styles, $scale-styles, $override-styles) {\n @each $style, $style-props in $scale-styles {\n // Merge base properties for all styles.\n $style-props: map.merge($base-styles, $style-props);\n\n // Merge overrides onto each style.\n $style-props: map.merge($style-props, map.get($override-styles, $style));\n\n // Override original styles with new styles.\n $scale-styles: map.merge($scale-styles, (#{$style}: $style-props));\n }\n\n @return $scale-styles;\n}\n\n@function get-letter-spacing_($tracking, $font-size) {\n @return $tracking / ($font-size * 16) * 1em;\n}\n\n@function pxToRem($px) {\n @return $px / 16px * 1rem;\n}\n\n$font-family: string.unquote('Roboto, sans-serif') !default;\n\n// Override styles\n$styles-headline1: () !default;\n$styles-headline2: () !default;\n$styles-headline3: () !default;\n$styles-headline4: () !default;\n$styles-headline5: () !default;\n$styles-headline6: () !default;\n$styles-subtitle1: () !default;\n$styles-subtitle2: () !default;\n$styles-body1: () !default;\n$styles-body2: () !default;\n$styles-caption: () !default;\n$styles-button: () !default;\n$styles-overline: () !default;\n\n$base: (\n font-family: $font-family,\n) !default;\n\n$font-weight-values: (\n thin: 100,\n light: 300,\n regular: 400,\n medium: 500,\n bold: 700,\n black: 900,\n) !default;\n\n$styles: set-styles_(\n $base,\n (\n headline1: (\n font-size: pxToRem(96px),\n line-height: pxToRem(96px),\n font-weight: map.get($font-weight-values, light),\n letter-spacing: get-letter-spacing_(-1.5, 6),\n text-decoration: inherit,\n text-transform: inherit,\n ),\n headline2: (\n font-size: pxToRem(60px),\n line-height: pxToRem(60px),\n font-weight: map.get($font-weight-values, light),\n letter-spacing: get-letter-spacing_(-0.5, 3.75),\n text-decoration: inherit,\n text-transform: inherit,\n ),\n headline3: (\n font-size: pxToRem(48px),\n line-height: pxToRem(50px),\n font-weight: map.get($font-weight-values, regular),\n letter-spacing: normal,\n text-decoration: inherit,\n text-transform: inherit,\n ),\n headline4: (\n font-size: pxToRem(34px),\n line-height: pxToRem(40px),\n font-weight: map.get($font-weight-values, regular),\n letter-spacing: get-letter-spacing_(0.25, 2.125),\n text-decoration: inherit,\n text-transform: inherit,\n ),\n headline5: (\n font-size: pxToRem(24px),\n line-height: pxToRem(32px),\n font-weight: map.get($font-weight-values, regular),\n letter-spacing: normal,\n text-decoration: inherit,\n text-transform: inherit,\n ),\n headline6: (\n font-size: pxToRem(20px),\n line-height: pxToRem(32px),\n font-weight: map.get($font-weight-values, medium),\n letter-spacing: get-letter-spacing_(0.25, 1.25),\n text-decoration: inherit,\n text-transform: inherit,\n ),\n subtitle1: (\n font-size: pxToRem(16px),\n line-height: pxToRem(28px),\n font-weight: map.get($font-weight-values, regular),\n letter-spacing: get-letter-spacing_(0.15, 1),\n text-decoration: inherit,\n text-transform: inherit,\n ),\n subtitle2: (\n font-size: pxToRem(14px),\n line-height: pxToRem(22px),\n font-weight: map.get($font-weight-values, medium),\n letter-spacing: get-letter-spacing_(0.1, 0.875),\n text-decoration: inherit,\n text-transform: inherit,\n ),\n body1: (\n font-size: pxToRem(16px),\n line-height: pxToRem(24px),\n font-weight: map.get($font-weight-values, regular),\n letter-spacing: get-letter-spacing_(0.5, 1),\n text-decoration: inherit,\n text-transform: inherit,\n ),\n body2: (\n font-size: pxToRem(14px),\n line-height: pxToRem(20px),\n font-weight: map.get($font-weight-values, regular),\n letter-spacing: get-letter-spacing_(0.25, 0.875),\n text-decoration: inherit,\n text-transform: inherit,\n ),\n caption: (\n font-size: pxToRem(12px),\n line-height: pxToRem(20px),\n font-weight: map.get($font-weight-values, regular),\n letter-spacing: get-letter-spacing_(0.4, 0.75),\n text-decoration: inherit,\n text-transform: inherit,\n ),\n button: (\n font-size: pxToRem(14px),\n line-height: pxToRem(36px),\n font-weight: map.get($font-weight-values, medium),\n letter-spacing: get-letter-spacing_(1.25, 0.875),\n text-decoration: none,\n text-transform: uppercase,\n ),\n overline: (\n font-size: pxToRem(12px),\n line-height: pxToRem(32px),\n font-weight: map.get($font-weight-values, medium),\n letter-spacing: get-letter-spacing_(2, 0.75),\n text-decoration: none,\n text-transform: uppercase,\n ),\n ),\n (\n headline1: $styles-headline1,\n headline2: $styles-headline2,\n headline3: $styles-headline3,\n headline4: $styles-headline4,\n headline5: $styles-headline5,\n headline6: $styles-headline6,\n subtitle1: $styles-subtitle1,\n subtitle2: $styles-subtitle2,\n body1: $styles-body1,\n body2: $styles-body2,\n caption: $styles-caption,\n button: $styles-button,\n overline: $styles-overline,\n )\n) !default;\n\n@mixin core-styles($query: feature-targeting.all()) {\n .mdc-typography {\n @include base($query: $query);\n }\n\n @each $style in map.keys($styles) {\n .mdc-typography--#{$style} {\n @include typography($style, $query: $query);\n }\n }\n}\n\n@mixin base($query: feature-targeting.all()) {\n $feat-typography: feature-targeting.create-target($query, typography);\n\n @include smooth-font($query: $query);\n @include feature-targeting.targets($feat-typography) {\n @include theme.property(\n font-family,\n (\n varname: --mdc-typography-font-family,\n fallback: map.get($base, 'font-family'),\n )\n );\n }\n}\n\n@mixin typography($style, $query: feature-targeting.all(), $exclude-props: ()) {\n $feat-typography: feature-targeting.create-target($query, typography);\n $style-props: map.get($styles, $style);\n\n @if not map.has-key($styles, $style) {\n @error \"Invalid style specified! #{$style} doesn't exist. Choose one of #{map.keys($styles)}\";\n }\n\n @include smooth-font($query: $query);\n @include feature-targeting.targets($feat-typography) {\n @each $key, $value in $style-props {\n @if list.index($exclude-props, $key) == null {\n $fallback: $value;\n @if $key == 'font-family' {\n // Each style has its own font-family custom property, but should\n // fallback to a generic font-family property. This allows\n // customizing the font-family for all styles or only specific ones.\n $fallback: (\n varname: --mdc-typography-font-family,\n fallback: $fallback,\n );\n }\n\n @include theme.property(\n $key,\n (\n varname: --mdc-typography-#{$style}-#{$key},\n fallback: $fallback,\n )\n );\n }\n }\n }\n}\n\n/// Applies antialiasing via font-smoothing to text.\n@mixin smooth-font($query: feature-targeting.all()) {\n $feat-typography: feature-targeting.create-target($query, typography);\n\n @include feature-targeting.targets($feat-typography) {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n }\n}\n\n// Element must be `display: block` or `display: inline-block` for this to work.\n@mixin overflow-ellipsis($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n }\n}\n\n/// Sets a container's baseline that text content will align to.\n///\n/// If the `$display` is set to a flexbox display, only `$top` baseline may be\n/// set. A separate element must be added as a child of the container with a\n/// `$bottom` baseline.\n///\n/// @param {Number} $top - the distance from the top of the container to the\n/// text's baseline.\n/// @param {Number} $bottom - the distance from the text's baseline to the\n/// bottom of the container.\n/// @param {String} $display - the display type of the container. May be `flex`,\n/// `inline-flex`, `block`, or `inline-block`.\n@mixin baseline(\n $top: 0,\n $bottom: 0,\n $display: block,\n $query: feature-targeting.all()\n) {\n $validDisplayTypes: (flex, inline-flex, block, inline-block);\n\n @if list.index($validDisplayTypes, $display) == null {\n @error \"mdc-typography: invalid display specified! #{$display} must be one of #{$validDisplayTypes}\";\n }\n\n $isFlexbox: $display == 'flex' or $display == 'inline-flex';\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n display: $display;\n\n @if $isFlexbox {\n align-items: baseline;\n }\n }\n\n @if $top > 0 {\n @include baseline-top($top, $query: $query);\n }\n\n @if $bottom > 0 {\n @if $isFlexbox {\n @error \"mdc-typography: invalid baseline with display type. #{$display} cannot specifiy $bottom. Add a separate child element with its own $bottom.\";\n }\n\n @include baseline-bottom($bottom, $query: $query);\n }\n}\n\n/// Sets the baseline of flow text content.\n///\n/// Separate `$top` and `$bottom` baselines may be specified. You should ensure\n/// that the `$top` baseline matches the previous text content's $bottom\n/// baseline to ensure text is positioned appropriately.\n///\n/// See go/css-baseline for reference on how this mixin works.\n///\n/// This is intended for text flow content only (e.g. `<h1>`, `<p>`, `<span>`,\n/// or `<div>` with only text content). Use `baseline()` to set the baseline of\n/// containers that are flexbox or have non-flow content children.\n///\n/// @param {Number} $top - the distance from the top of the container to the\n/// text's baseline.\n/// @param {Number} $bottom - the distance from the text's baseline to the\n/// bottom of the container.\n/// @param {Boolean} $lineHeight - the line-height to use for the text. This\n/// is the distance between baselines of multiple lines of text.\n/// @param {String} $display - the display type of the container. May be `block`\n/// or `inline-block`.\n@mixin text-baseline(\n $top: 0,\n $bottom: 0,\n $display: block,\n $lineHeight: normal,\n $query: feature-targeting.all()\n) {\n $validDisplayTypes: (block, inline-block);\n\n @if list.index($validDisplayTypes, $display) == null {\n @error \"mdc-typography: invalid display specified! #{$display} must be one of #{$validDisplayTypes}\";\n }\n\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include baseline(\n $display: $display,\n $top: $top,\n $bottom: $bottom,\n $query: $query\n );\n @include feature-targeting.targets($feat-structure) {\n @if $top > 0 {\n margin-top: 0;\n /* @alternate */\n line-height: #{$lineHeight};\n }\n\n @if $bottom > 0 {\n margin-bottom: -1 * $bottom;\n }\n }\n}\n\n/// Creates a baseline strut from the top of a container. This mixin is for\n/// advanced users, prefer `baseline()`.\n///\n/// @param {Number} $distance - The distance from the top of the container to\n/// the text's baseline.\n@mixin baseline-top($distance, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n &::before {\n @include feature-targeting.targets($feat-structure) {\n @include baseline-strut_($distance);\n\n vertical-align: 0;\n }\n }\n}\n\n/// Creates a baseline strut from the baseline to the bottom of a container.\n/// This mixin is for advanced users, prefer `baseline()`.\n///\n/// @param {Number} $distance - The distance from the text's baseline to the\n/// bottom of the container.\n@mixin baseline-bottom($distance, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n &::after {\n @include feature-targeting.targets($feat-structure) {\n @include baseline-strut_($distance);\n\n vertical-align: -1 * $distance;\n }\n }\n}\n\n/// Adds an invisible, zero-width prefix to a container's text.\n/// This ensures that the baseline is always where the text would be, instead\n/// of defaulting to the container bottom when text is empty. Do not use this\n/// mixin if the `baseline` mixin is already applied.\n@mixin zero-width-prefix($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n &::before {\n @include feature-targeting.targets($feat-structure) {\n content: '\\200b';\n }\n }\n}\n\n@mixin baseline-strut_($distance) {\n display: inline-block;\n width: 0;\n height: $distance;\n content: '';\n}\n","//\n// Copyright 2021 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern --\n// Selector '.mdc-*' should only be used in this project.\n\n@use 'sass:map';\n@use '@material/density/functions' as density-functions;\n@use '@material/density/variables' as density-variables;\n@use '@material/dom/mixins' as dom-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple-theme';\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/theme/state';\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n@use '@material/typography/typography';\n@use './button-ripple';\n\n$height: 36px !default;\n$horizontal-padding: 8px !default;\n$contained-horizontal-padding: 16px !default;\n\n$minimum-height: 24px !default;\n$maximum-height: $height !default;\n$density-scale: density-variables.$default-scale !default;\n$density-config: (\n height: (\n default: $height,\n maximum: $maximum-height,\n minimum: $minimum-height,\n ),\n) !default;\n\n$shape-radius: small !default;\n\n$disabled-ink-color: rgba(theme-color.prop-value(on-surface), 0.38) !default;\n$disabled-container-color: rgba(\n theme-color.prop-value(on-surface),\n 0.12\n) !default;\n\n@mixin theme($theme, $query: feature-targeting.all()) {\n @include container-fill-color(\n (\n default: map.get($theme, container-color),\n hover: map.get($theme, container-hover-color),\n focus: map.get($theme, container-focus-color),\n pressed: map.get($theme, container-pressed-color),\n disabled: map.get($theme, container-disabled-color),\n ),\n $query: $query\n );\n\n @include ink-color(\n (\n default: map.get($theme, label-color),\n hover: map.get($theme, label-hover-color),\n focus: map.get($theme, label-focus-color),\n pressed: map.get($theme, label-pressed-color),\n disabled: map.get($theme, label-disabled-color),\n ),\n $query: $query\n );\n\n @include icon-color(\n (\n default: map.get($theme, icon-color),\n hover: map.get($theme, icon-hover-color),\n focus: map.get($theme, icon-focus-color),\n pressed: map.get($theme, icon-pressed-color),\n disabled: map.get($theme, icon-disabled-color),\n ),\n $query: $query\n );\n\n $ripple-color: map.get($theme, ripple-color);\n $ripple-opacity: map.get($theme, ripple-opacity);\n @if $ripple-color {\n @include ripple-states(\n $color: $ripple-color,\n $opacity-map: $ripple-opacity,\n $query: $query\n );\n }\n\n $density: map.get($theme, density);\n @if $density != null {\n @include density($density-scale: $density, $query: $query);\n }\n\n $shape: map.get($theme, shape);\n @if $density == null {\n $density: $density-scale;\n }\n @if $shape {\n @include shape-radius($shape, $density-scale: $density, $query: $query);\n }\n}\n\n///\n/// Sets ripple color for button.\n///\n@mixin ripple-states(\n $color,\n $opacity-map: null,\n $query: feature-targeting.all()\n) {\n @include ripple-theme.states(\n $color: $color,\n $opacity-map: $opacity-map,\n $query: $query,\n $ripple-target: button-ripple.$ripple-target\n );\n}\n\n@mixin filled-accessible(\n $container-fill-color,\n $query: feature-targeting.all()\n) {\n $fill-tone: theme-color.tone($container-fill-color);\n\n @include container-fill-color($container-fill-color, $query);\n\n @if ($fill-tone == 'dark') {\n @include ink-color(text-primary-on-dark, $query);\n @include ripple-states($color: text-primary-on-dark, $query: $query);\n } @else {\n @include ink-color(text-primary-on-light, $query);\n @include ripple-states($color: text-primary-on-light, $query: $query);\n }\n}\n\n///\n/// Sets the container fill color to the given color for an enabled button.\n/// @param {Color|map} $color-or-map - The desired container fill color,\n/// specified either as a flat value or a map of colors with states\n/// {default, hover, focused, pressed, disabled} as keys.\n///\n@mixin container-fill-color($color-or-map, $query: feature-targeting.all()) {\n // :not(:disabled) is used to support link styled as button\n // as link does not support :enabled style\n &:not(:disabled) {\n @include _container-fill-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n\n &:hover {\n @include _container-fill-color(\n state.get-hover-state($color-or-map),\n $query: $query\n );\n }\n\n &:focus {\n @include _container-fill-color(\n state.get-focus-state($color-or-map),\n $query: $query\n );\n }\n\n &:active {\n @include _container-fill-color(\n state.get-pressed-state($color-or-map),\n $query: $query\n );\n }\n }\n\n &:disabled {\n @include _container-fill-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n///\n/// Sets the container fill color to the given color for a disabled button.\n/// @param {Color} $color - The desired container fill color.\n/// @deprecated - call `icon-color` instead with `disabled` as a map key.\n///\n@mixin disabled-container-fill-color($color, $query: feature-targeting.all()) {\n @include container-fill-color(\n (\n disabled: $color,\n ),\n $query: $query\n );\n}\n\n///\n/// Sets the icon color to the given color for an enabled button.\n/// @param {Color} $color-or-map - The desired icon color, specified either\n/// as a flat value or a map of colors with states\n/// {default, hover, focused, pressed, disabled} as keys.\n///\n@mixin icon-color($color-or-map, $query: feature-targeting.all()) {\n &:not(:disabled) {\n @include _icon-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n\n &:hover {\n @include _icon-color(\n state.get-hover-state($color-or-map),\n $query: $query\n );\n }\n\n &:focus {\n @include _icon-color(\n state.get-focus-state($color-or-map),\n $query: $query\n );\n }\n\n &:active {\n @include _icon-color(\n state.get-pressed-state($color-or-map),\n $query: $query\n );\n }\n }\n\n &:disabled {\n @include _icon-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n///\n/// Sets the icon color to the given color for a disabled button.\n/// @param {Color} $color - The desired icon color.\n/// @deprecated - call `icon-color` instead with `disabled` as a map key.\n///\n@mixin disabled-icon-color($color, $query: feature-targeting.all()) {\n @include icon-color(\n (\n disabled: $color,\n ),\n $query: $query\n );\n}\n\n///\n/// Sets the ink color to the given color for an enabled button,\n/// and sets the icon color to the given color unless `mdc-button-icon-color`\n/// is also used.\n/// @param {Color} $color-or-map - The desired ink color, specified either\n/// as a flat value or a map of colors with states\n/// {default, hover, focused, pressed, disabled} as keys.\n///\n@mixin ink-color($color-or-map, $query: feature-targeting.all()) {\n &:not(:disabled) {\n @include _ink-color(state.get-default-state($color-or-map), $query: $query);\n\n &:hover {\n @include _ink-color(state.get-hover-state($color-or-map), $query: $query);\n }\n\n &:focus {\n @include _ink-color(state.get-focus-state($color-or-map), $query: $query);\n }\n\n &:active {\n @include _ink-color(\n state.get-pressed-state($color-or-map),\n $query: $query\n );\n }\n }\n\n &:disabled {\n @include _ink-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n///\n/// Sets the ink color to the given color for a disabled button,\n/// and sets the icon color to the given color unless `mdc-button-icon-color`\n/// is also used.\n/// @param {Color} $color - The desired ink color.\n/// @deprecated - call `ink-color` instead with `disabled` as a map key.\n///\n@mixin disabled-ink-color($color, $query: feature-targeting.all()) {\n @include ink-color(\n (\n disabled: $color,\n ),\n $query: $query\n );\n}\n\n///\n/// Sets density scale for button.\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values `-3`,\n/// `-2`, `-1`, `0`.\n///\n@mixin density($density-scale, $query: feature-targeting.all()) {\n $height: density-functions.prop-value(\n $density-config: $density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include height($height, $query: $query);\n\n @if $density-scale != 0 {\n @include _touch-target-reset($query: $query);\n }\n}\n\n///\n/// Resets touch target-related styles. This is called from the density mixin to\n/// automatically remove the increased touch target, since dense components\n/// don't have the same default a11y requirements.\n/// @access private\n///\n@mixin _touch-target-reset($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n margin-top: 0;\n margin-bottom: 0;\n }\n\n .mdc-button__touch {\n @include feature-targeting.targets($feat-structure) {\n display: none;\n }\n }\n}\n\n///\n/// Sets custom height for button.\n/// @param {Number} $height - Height of button in `px`.\n///\n@mixin height($height, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n}\n\n@mixin shape-radius(\n $radius,\n $rtl-reflexive: false,\n $density-scale: $density-scale,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: $density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include shape-mixins.radius(\n $radius,\n $rtl-reflexive,\n $component-height: $height,\n $query: $query\n );\n\n #{button-ripple.$ripple-target} {\n @include shape-mixins.radius(\n $radius,\n $rtl-reflexive,\n $component-height: $height,\n $query: $query\n );\n }\n}\n\n///\n/// Sets horizontal padding to the given number.\n/// @param {Number} $padding\n///\n@mixin horizontal-padding($padding, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n // $padding should be a single value; enforce it by specifying all 4 sides in the output\n padding: 0 $padding 0 $padding;\n }\n}\n\n///\n/// Sets the button label to overflow as ellipsis\n///\n@mixin label-overflow-ellipsis($query: feature-targeting.all()) {\n .mdc-button__label {\n @include typography.overflow-ellipsis($query: $query);\n }\n}\n\n///\n/// Includes ad-hoc high contrast mode support.\n///\n@mixin high-contrast-mode-shim($query: feature-targeting.all()) {\n &::before {\n @include dom-mixins.transparent-border($query: $query);\n }\n\n &:focus {\n &::before {\n @include dom-mixins.transparent-border(\n $border-width: 5px,\n $border-style: double,\n $query: $query\n );\n }\n }\n}\n\n///\n/// Sets the container fill color to the given color. This mixin should be\n/// wrapped in a selector that qualifies button state.\n/// @access private\n///\n@mixin _container-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if $color {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n }\n}\n\n///\n/// Sets the icon color to the given color. This mixin should be\n/// wrapped in a selector that qualifies button state.\n/// @access private\n///\n@mixin _icon-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if $color {\n .mdc-button__icon {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n }\n}\n\n///\n/// Sets the ink color to the given color. This mixin should be\n/// wrapped in a selector that qualifies button state.\n/// @access private\n///\n@mixin _ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if $color {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n","//\n// Copyright 2016 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:color';\n@use 'sass:map';\n@use '@material/animation/functions' as functions2;\n@use '@material/animation/variables' as variables2;\n@use '@material/base/mixins' as base-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/css';\n@use '@material/theme/custom-properties';\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n\n$fade-in-duration: 75ms !default;\n$fade-out-duration: 150ms !default;\n$translate-duration: 225ms !default;\n$states-wash-duration: 15ms !default;\n\n// Notes on states:\n// * focus takes precedence over hover (i.e. if an element is both focused and hovered, only focus value applies)\n// * press state applies to a separate pseudo-element, so it has an additive effect on top of other states\n// * selected/activated are applied additively to hover/focus via calculations at preprocessing time\n\n$dark-ink-opacities: (\n hover: 0.04,\n focus: 0.12,\n press: 0.12,\n selected: 0.08,\n activated: 0.12,\n) !default;\n\n$light-ink-opacities: (\n hover: 0.08,\n focus: 0.24,\n press: 0.24,\n selected: 0.16,\n activated: 0.24,\n) !default;\n\n// Legacy\n\n$pressed-dark-ink-opacity: 0.16 !default;\n$pressed-light-ink-opacity: 0.32 !default;\n\n@mixin states-base-color(\n $color,\n $query: feature-targeting.all(),\n $ripple-target: '&'\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if not custom-properties.is-custom-prop($color) {\n $color: custom-properties.create(\n --mdc-ripple-color,\n theme-color.get-custom-property($color)\n );\n }\n\n #{$ripple-target}::before,\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-color) {\n @if color.alpha(theme-color.prop-value($color)) > 0 {\n @include theme.property(background-color, $color);\n } @else {\n // If a color with 0 alpha is specified, don't render the ripple pseudo-elements at all.\n // This avoids unnecessary transitions and overflow.\n content: none;\n }\n }\n }\n}\n\n///\n/// Customizes ripple opacities in `hover`, `focus`, or `press` states\n/// @param {map} $opacity-map - map specifying custom opacity of zero or more states\n/// @param {bool} $has-nested-focusable-element - whether the component contains a focusable element in the root\n/// @param {string} $ripple-target - the optional selector for the ripple element\n///\n@mixin states-opacities(\n $opacity-map: (),\n $has-nested-focusable-element: false,\n $ripple-target: '&',\n $query: feature-targeting.all()\n) {\n // Ensure sufficient specificity to override base state opacities\n @if map.has-key($opacity-map, hover) {\n @include states-hover-opacity(\n map.get($opacity-map, hover),\n $ripple-target: $ripple-target,\n $query: $query\n );\n }\n\n @if map.has-key($opacity-map, focus) {\n @include states-focus-opacity(\n map.get($opacity-map, focus),\n $ripple-target: $ripple-target,\n $has-nested-focusable-element: $has-nested-focusable-element,\n $query: $query\n );\n }\n\n @if map.has-key($opacity-map, press) {\n @include states-press-opacity(\n map.get($opacity-map, press),\n $ripple-target: $ripple-target,\n $query: $query\n );\n }\n}\n\n@mixin states-hover-opacity(\n $opacity,\n $query: feature-targeting.all(),\n $ripple-target: '&'\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n // Background wash styles, for both CSS-only and upgraded stateful surfaces\n &:hover,\n &.mdc-ripple-surface--hover {\n #{$ripple-target}::before {\n // Opacity falls under color because the chosen opacity is color-dependent in typical usage\n @include feature-targeting.targets($feat-color) {\n @include theme.property(\n opacity,\n custom-properties.create(--mdc-ripple-hover-opacity, $opacity)\n );\n }\n }\n }\n}\n\n@mixin states-focus-opacity(\n $opacity,\n $has-nested-focusable-element: false,\n $query: feature-targeting.all(),\n $ripple-target: '&'\n) {\n // Focus overrides hover by reusing the ::before pseudo-element.\n // :focus-within generally works on non-MS browsers and matches when a *child* of the element has focus.\n // It is useful for cases where a component has a focusable element within the root node, e.g. text field,\n // but undesirable in general in case of nested stateful components.\n // We use a modifier class for JS-enabled surfaces to support all use cases in all browsers.\n @if $has-nested-focusable-element {\n // JS-enabled selectors.\n &.mdc-ripple-upgraded--background-focused,\n &.mdc-ripple-upgraded:focus-within,\n // CSS-only selectors.\n &:not(.mdc-ripple-upgraded):focus,\n &:not(.mdc-ripple-upgraded):focus-within {\n #{$ripple-target}::before {\n @include states-focus-opacity-properties_(\n $opacity: $opacity,\n $query: $query\n );\n }\n }\n } @else {\n // JS-enabled selectors.\n &.mdc-ripple-upgraded--background-focused,\n // CSS-only selectors.\n &:not(.mdc-ripple-upgraded):focus {\n #{$ripple-target}::before {\n @include states-focus-opacity-properties_(\n $opacity: $opacity,\n $query: $query\n );\n }\n }\n }\n}\n\n@mixin states-focus-opacity-properties_($opacity, $query) {\n $feat-animation: feature-targeting.create-target($query, animation);\n // Opacity falls under color because the chosen opacity is color-dependent in typical usage\n $feat-color: feature-targeting.create-target($query, color);\n\n // Note that this duration is only effective on focus, not blur\n @include feature-targeting.targets($feat-animation) {\n transition-duration: 75ms;\n }\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(\n opacity,\n custom-properties.create(--mdc-ripple-focus-opacity, $opacity)\n );\n }\n}\n\n@mixin states-press-opacity(\n $opacity,\n $query: feature-targeting.all(),\n $ripple-target: '&'\n) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-color: feature-targeting.create-target($query, color);\n\n // Styles for non-upgraded (CSS-only) stateful surfaces\n\n &:not(.mdc-ripple-upgraded) {\n // Apply press additively by using the ::after pseudo-element\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-animation) {\n transition: opacity $fade-out-duration linear;\n }\n }\n\n &:active {\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-animation) {\n transition-duration: $fade-in-duration;\n }\n\n // Opacity falls under color because the chosen opacity is color-dependent in typical usage\n @include feature-targeting.targets($feat-color) {\n @include theme.property(\n opacity,\n custom-properties.create(--mdc-ripple-press-opacity, $opacity)\n );\n }\n }\n }\n }\n\n &.mdc-ripple-upgraded {\n @include feature-targeting.targets($feat-color) {\n --mdc-ripple-fg-opacity: var(--mdc-ripple-press-opacity, #{$opacity});\n }\n }\n}\n\n// Simple mixin for base states which automatically selects opacity values based on whether the ink color is\n// light or dark.\n@mixin states(\n $color: theme-color.prop-value(on-surface),\n $has-nested-focusable-element: false,\n $query: feature-targeting.all(),\n $ripple-target: '&',\n $opacity-map: null\n) {\n @include states-interactions_(\n $color: $color,\n $has-nested-focusable-element: $has-nested-focusable-element,\n $query: $query,\n $ripple-target: $ripple-target,\n $opacity-map: $opacity-map\n );\n}\n\n// Simple mixin for activated states which automatically selects opacity values based on whether the ink color is\n// light or dark.\n@mixin states-activated(\n $color,\n $has-nested-focusable-element: false,\n $query: feature-targeting.all(),\n $ripple-target: '&'\n) {\n $feat-color: feature-targeting.create-target($query, color);\n $activated-opacity: states-opacity($color, activated);\n\n &--activated {\n // Stylelint seems to think that '&' qualifies as a type selector here?\n // stylelint-disable-next-line selector-max-type\n #{$ripple-target}::before {\n // Opacity falls under color because the chosen opacity is color-dependent.\n @include feature-targeting.targets($feat-color) {\n @include theme.property(\n opacity,\n custom-properties.create(\n --mdc-ripple-activated-opacity,\n $activated-opacity\n )\n );\n }\n }\n\n @include states-interactions_(\n $color: $color,\n $has-nested-focusable-element: $has-nested-focusable-element,\n $opacity-modifier: $activated-opacity,\n $query: $query,\n $ripple-target: $ripple-target\n );\n }\n}\n\n// Simple mixin for selected states which automatically selects opacity values based on whether the ink color is\n// light or dark.\n@mixin states-selected(\n $color,\n $has-nested-focusable-element: false,\n $query: feature-targeting.all(),\n $ripple-target: '&'\n) {\n $feat-color: feature-targeting.create-target($query, color);\n $selected-opacity: states-opacity($color, selected);\n\n &--selected {\n // stylelint-disable-next-line selector-max-type\n #{$ripple-target}::before {\n // Opacity falls under color because the chosen opacity is color-dependent.\n @include feature-targeting.targets($feat-color) {\n @include theme.property(\n opacity,\n custom-properties.create(\n --mdc-ripple-selected-opacity,\n $selected-opacity\n )\n );\n }\n }\n\n @include states-interactions_(\n $color: $color,\n $has-nested-focusable-element: $has-nested-focusable-element,\n $opacity-modifier: $selected-opacity,\n $query: $query,\n $ripple-target: $ripple-target\n );\n }\n}\n\n@mixin states-interactions_(\n $color,\n $has-nested-focusable-element,\n $opacity-modifier: 0,\n $query: feature-targeting.all(),\n $ripple-target: '&',\n $opacity-map: null\n) {\n @include target-selector($ripple-target) {\n @include states-base-color($color, $query);\n }\n\n @if $opacity-map == null {\n $opacity-map: (\n hover: states-opacity($color, hover) + $opacity-modifier,\n focus: states-opacity($color, focus) + $opacity-modifier,\n press: states-opacity($color, press) + $opacity-modifier,\n );\n }\n\n @include states-opacities(\n $opacity-map,\n $has-nested-focusable-element: $has-nested-focusable-element,\n $ripple-target: $ripple-target,\n $query: $query\n );\n}\n\n// Wraps content in the `ripple-target` selector if it exists.\n@mixin target-selector($ripple-target: '&') {\n @if $ripple-target == '&' {\n @content;\n } @else {\n #{$ripple-target} {\n @content;\n }\n }\n}\n\n/// Selector for hover, active and focus states.\n@mixin states-selector() {\n &:hover,\n &:active,\n &:focus,\n &.mdc-ripple-upgraded--background-focused {\n @content;\n }\n}\n\n/// Keep the ripple (State overlay) behind the content.\n@mixin behind-content(\n $ripple-target,\n $content-root-selector: '&',\n $query: feature-targeting.all()\n) {\n // Needed for IE11. Without this, IE11 renders the state layer completely\n // underneath the container, making it invisible.\n $feat-structure: feature-targeting.create-target($query, structure);\n\n #{$content-root-selector} {\n @include feature-targeting.targets($feat-structure) {\n z-index: 0;\n }\n }\n\n #{$ripple-target}::before,\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-structure) {\n @include theme.property(\n z-index,\n custom-properties.create(--mdc-ripple-z-index, -1)\n );\n }\n }\n}\n\n@function states-opacity($color, $state) {\n $color-value: theme-color.prop-value($color);\n $opacity-map: if(\n theme-color.tone($color-value) == 'light',\n $light-ink-opacities,\n $dark-ink-opacities\n );\n\n @if not map.has-key($opacity-map, $state) {\n @error \"Invalid state: '#{$state}'. Choose one of: #{map.keys($opacity-map)}\";\n }\n\n @return map.get($opacity-map, $state);\n}\n","//\n// Copyright 2019 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/base/mixins' as base-mixins;\n@use '@material/feature-targeting/feature-targeting';\n\n$height: 48px !default;\n$width: $height !default;\n\n/// Styles applied to the component's touch target wrapper element.\n@mixin wrapper($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-touch-target-wrapper {\n @include feature-targeting.targets($feat-structure) {\n // Ensure that styles are only emitted once across all components that\n // have increased touch targets.\n @include base-mixins.emit-once('mdc-touch-target/wrapper') {\n // NOTE: Will change to `inline-block` in the future, but keeping as is\n // temporarily for backwards-compatibility.\n display: inline;\n }\n }\n }\n}\n\n/// Styles applied to the component's inner touch target element.\n/// By default, only sets the inner element height to the minimum touch target\n/// height ($mdc-touch-target-height).\n/// @param {Boolean} $set-width [false] - Sets the inner element width to the\n/// minimum touch target width ($mdc-touch-target-width).\n@mixin touch-target($set-width: false, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n top: 50%;\n right: 0;\n height: $height;\n }\n\n @if $set-width {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n left: 50%;\n width: $width;\n transform: translate(-50%, -50%);\n }\n } @else {\n @include feature-targeting.targets($feat-structure) {\n left: 0;\n transform: translateY(-50%);\n }\n }\n}\n\n/// Applies margin to the component with the increased touch target,\n/// to compensate for the touch target.\n@mixin margin(\n $component-height,\n $component-width: null,\n $touch-target-height: $height,\n $touch-target-width: $width,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n $vertical-margin-value: ($touch-target-height - $component-height) / 2;\n\n @include feature-targeting.targets($feat-structure) {\n margin-top: $vertical-margin-value;\n margin-bottom: $vertical-margin-value;\n }\n\n @if $component-width {\n $horizontal-margin-value: ($touch-target-width - $component-width) / 2;\n\n @include feature-targeting.targets($feat-structure) {\n margin-right: $horizontal-margin-value;\n margin-left: $horizontal-margin-value;\n }\n }\n}\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/theme/custom-properties';\n@use '@material/base/mixins' as base-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n@use './elevation-theme';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @for $z-value from 0 through 24 {\n .mdc-elevation--z#{$z-value} {\n @include elevation-theme.elevation($z-value, $query: $query);\n }\n }\n\n .mdc-elevation-transition {\n @include feature-targeting.targets($feat-animation) {\n transition: elevation-theme.transition-value();\n }\n\n @include feature-targeting.targets($feat-structure) {\n will-change: elevation-theme.$property;\n }\n }\n}\n\n///\n/// Called once per application to set up the global default elevation styles.\n///\n@mixin overlay-common($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-elevation-overlay {\n @include feature-targeting.targets($feat-structure) {\n @include base-mixins.emit-once('mdc-elevation/common/structure') {\n position: absolute;\n border-radius: inherit;\n pointer-events: none;\n\n @include theme.property(\n opacity,\n custom-properties.create(--mdc-elevation-overlay-opacity, 0)\n );\n }\n }\n\n @include feature-targeting.targets($feat-animation) {\n @include base-mixins.emit-once('mdc-elevation/common/animation') {\n transition: elevation-theme.overlay-transition-value();\n }\n }\n\n @include base-mixins.emit-once('mdc-elevation/common/color') {\n $fill-color: custom-properties.create(\n --mdc-elevation-overlay-color,\n elevation-theme.$overlay-color\n );\n @include elevation-theme.overlay-fill-color($fill-color, $query: $query);\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern --\n// Selector '.mdc-*' should only be used in this project.\n\n@use '@material/elevation/elevation';\n@use '@material/elevation/elevation-theme';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/rtl/rtl';\n@use '@material/touch-target/touch-target';\n@use '@material/typography/typography';\n@use './button-ripple';\n@use './button-shared-theme';\n\n@mixin static-styles($query: feature-targeting.all()) {\n @include static-styles-without-ripple($query: $query);\n @include button-ripple.static-styles($query: $query);\n}\n\n@mixin static-styles-without-ripple($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include touch-target.wrapper($query); // COPYBARA_COMMENT_THIS_LINE\n // prettier-ignore\n @include elevation.overlay-common($query); // COPYBARA_COMMENT_THIS_LINE\n\n // postcss-bem-linter: define button\n .mdc-button {\n @include base($query);\n // The icon CSS class overrides styles defined in the .material-icons CSS\n // class, which is loaded separately so the order of CSS definitions is not\n // guaranteed. Therefore, increase specifity by nesting this class to ensure\n // overrides apply.\n .mdc-button__icon {\n @include feature-targeting.targets($feat-structure) {\n @include icon;\n }\n }\n\n .mdc-button__touch {\n @include touch-target.touch-target($query: $query);\n }\n }\n\n .mdc-button__label + .mdc-button__icon {\n @include feature-targeting.targets($feat-structure) {\n @include icon-trailing;\n }\n }\n\n svg.mdc-button__icon {\n @include feature-targeting.targets($feat-structure) {\n @include icon-svg;\n }\n }\n\n // TODO: figure out the correct place for this rule.\n .mdc-button--raised,\n .mdc-button--unelevated,\n .mdc-button--outlined {\n .mdc-button__icon {\n @include feature-targeting.targets($feat-structure) {\n // Icons inside contained buttons have different styles due to increased button padding\n @include icon-contained;\n }\n }\n\n .mdc-button__label + .mdc-button__icon {\n @include feature-targeting.targets($feat-structure) {\n @include icon-contained-trailing;\n }\n }\n }\n\n .mdc-button--touch {\n // Touch target doesn't change with height. It simply gets removed if\n // density (height) changes. Therefore, it is a static style.\n @include touch-target.margin(\n $component-height: button-shared-theme.$height,\n $query: $query\n );\n }\n // postcss-bem-linter: end\n}\n\n@mixin deprecated-base($query) {\n @include base($query);\n}\n\n@mixin base($query) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include typography.typography(button, $query);\n @include elevation-theme.overlay-surface-position($query: $query);\n @include elevation-theme.overlay-dimensions(100%, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n // position: relative; already set in mdc-elevation-overlay-surface-position\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n min-width: 64px;\n border: none;\n outline: none;\n /* @alternate */\n line-height: inherit;\n user-select: none;\n -webkit-appearance: none;\n // Even though `visible` is the default, IE 11 computes the property as\n // `hidden` in some cases, unless it's explicitly defined here.\n overflow: visible;\n vertical-align: middle;\n }\n\n &::-moz-focus-inner {\n @include feature-targeting.targets($feat-structure) {\n padding: 0;\n border: 0;\n }\n }\n\n // postcss-bem-linter: ignore\n &:active {\n @include feature-targeting.targets($feat-structure) {\n outline: none;\n }\n }\n\n &:hover {\n @include feature-targeting.targets($feat-structure) {\n cursor: pointer;\n }\n }\n\n &:disabled {\n @include feature-targeting.targets($feat-structure) {\n cursor: default;\n pointer-events: none;\n }\n }\n}\n\n@mixin icon {\n @include rtl.reflexive-box(margin, right, 8px);\n\n display: inline-block;\n width: 18px;\n height: 18px;\n font-size: 18px;\n vertical-align: top;\n}\n\n@mixin icon-trailing {\n @include rtl.reflexive-box(margin, left, 8px);\n}\n\n@mixin icon-svg {\n fill: currentColor;\n}\n\n@mixin icon-contained {\n @include rtl.reflexive-property(margin, -4px, 8px);\n}\n\n@mixin icon-contained-trailing {\n @include rtl.reflexive-property(margin, 8px, -4px);\n}\n\n/// @deprecated Private style mixin for partners; not available for public use.\n@mixin deprecated-icon {\n @include icon;\n}\n\n/// @deprecated Private style mixin for partners; not available for public use.\n@mixin deprecated-icon-trailing {\n @include icon-trailing;\n}\n\n/// @deprecated Private style mixin for partners; not available for public use.\n@mixin deprecated-icon-svg {\n @include icon-svg;\n}\n\n/// @deprecated Private style mixin for partners; not available for public use.\n@mixin deprecated-icon-contained {\n @include icon-contained;\n}\n\n/// @deprecated Private style mixin for partners; not available for public use.\n@mixin deprecated-icon-contained-trailing {\n @include icon-contained-trailing;\n}\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:map';\n@use 'sass:math';\n@use 'sass:meta';\n@use '@material/animation/variables' as animation-variables;\n@use '@material/theme/custom-properties';\n@use '@material/base/mixins' as base-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n\n$baseline-color: black !default;\n$umbra-opacity: 0.2 !default;\n$penumbra-opacity: 0.14 !default;\n$ambient-opacity: 0.12 !default;\n\n$umbra-map: (\n 0: '0px 0px 0px 0px',\n 1: '0px 2px 1px -1px',\n 2: '0px 3px 1px -2px',\n 3: '0px 3px 3px -2px',\n 4: '0px 2px 4px -1px',\n 5: '0px 3px 5px -1px',\n 6: '0px 3px 5px -1px',\n 7: '0px 4px 5px -2px',\n 8: '0px 5px 5px -3px',\n 9: '0px 5px 6px -3px',\n 10: '0px 6px 6px -3px',\n 11: '0px 6px 7px -4px',\n 12: '0px 7px 8px -4px',\n 13: '0px 7px 8px -4px',\n 14: '0px 7px 9px -4px',\n 15: '0px 8px 9px -5px',\n 16: '0px 8px 10px -5px',\n 17: '0px 8px 11px -5px',\n 18: '0px 9px 11px -5px',\n 19: '0px 9px 12px -6px',\n 20: '0px 10px 13px -6px',\n 21: '0px 10px 13px -6px',\n 22: '0px 10px 14px -6px',\n 23: '0px 11px 14px -7px',\n 24: '0px 11px 15px -7px',\n) !default;\n\n$penumbra-map: (\n 0: '0px 0px 0px 0px',\n 1: '0px 1px 1px 0px',\n 2: '0px 2px 2px 0px',\n 3: '0px 3px 4px 0px',\n 4: '0px 4px 5px 0px',\n 5: '0px 5px 8px 0px',\n 6: '0px 6px 10px 0px',\n 7: '0px 7px 10px 1px',\n 8: '0px 8px 10px 1px',\n 9: '0px 9px 12px 1px',\n 10: '0px 10px 14px 1px',\n 11: '0px 11px 15px 1px',\n 12: '0px 12px 17px 2px',\n 13: '0px 13px 19px 2px',\n 14: '0px 14px 21px 2px',\n 15: '0px 15px 22px 2px',\n 16: '0px 16px 24px 2px',\n 17: '0px 17px 26px 2px',\n 18: '0px 18px 28px 2px',\n 19: '0px 19px 29px 2px',\n 20: '0px 20px 31px 3px',\n 21: '0px 21px 33px 3px',\n 22: '0px 22px 35px 3px',\n 23: '0px 23px 36px 3px',\n 24: '0px 24px 38px 3px',\n) !default;\n\n$ambient-map: (\n 0: '0px 0px 0px 0px',\n 1: '0px 1px 3px 0px',\n 2: '0px 1px 5px 0px',\n 3: '0px 1px 8px 0px',\n 4: '0px 1px 10px 0px',\n 5: '0px 1px 14px 0px',\n 6: '0px 1px 18px 0px',\n 7: '0px 2px 16px 1px',\n 8: '0px 3px 14px 2px',\n 9: '0px 3px 16px 2px',\n 10: '0px 4px 18px 3px',\n 11: '0px 4px 20px 3px',\n 12: '0px 5px 22px 4px',\n 13: '0px 5px 24px 4px',\n 14: '0px 5px 26px 4px',\n 15: '0px 6px 28px 5px',\n 16: '0px 6px 30px 5px',\n 17: '0px 6px 32px 5px',\n 18: '0px 7px 34px 6px',\n 19: '0px 7px 36px 6px',\n 20: '0px 8px 38px 7px',\n 21: '0px 8px 40px 7px',\n 22: '0px 8px 42px 7px',\n 23: '0px 9px 44px 8px',\n 24: '0px 9px 46px 8px',\n) !default;\n\n// The css property used for elevation. In most cases this should not be changed. It is exposed\n// as a variable for abstraction / easy use when needing to reference the property directly, for\n// example in a `will-change` rule.\n$property: box-shadow !default;\n\n// The default color for the elevation overlay.\n$overlay-color: #fff;\n\n// The css property used for elevation overlay transitions. In most cases this should not be changed. It is exposed\n// as a variable for abstraction / easy use when needing to reference the property directly, for\n// example in a `will-change` rule.\n$overlay-property: opacity !default;\n\n// The default duration value for elevation transitions.\n$transition-duration: 280ms !default;\n\n// The default easing value for elevation transitions.\n$transition-timing-function: animation-variables.$standard-curve-timing-function !default;\n\n///\n/// Sets the elevation transition value.\n///\n/// @param {String} $duration - The duration of the transition.\n/// @param {String} $easing - The easing function for the transition.\n/// @return {String}\n///\n@function transition-value(\n $duration: $transition-duration,\n $easing: $transition-timing-function\n) {\n @return #{$property} #{$duration} #{$easing};\n}\n\n///\n/// Sets the elevation overlay transition value.\n///\n/// @param {String} $duration - The duration of the transition.\n/// @param {String} $easing - The easing function for the transition.\n/// @return {String}\n///\n@function overlay-transition-value(\n $duration: $transition-duration,\n $easing: $transition-timing-function\n) {\n @return #{$overlay-property} #{$duration} #{$easing};\n}\n\n// Returns the correct box-shadow specified by $z-value.\n// The $z-value must be between 0 and 24.\n// If $color has an alpha channel, it will be ignored and overridden. To increase the opacity of the shadow, use\n// $opacity-boost.\n@function elevation-box-shadow(\n $z-value,\n $color: $baseline-color,\n $opacity-boost: 0\n) {\n @if meta.type-of($z-value) != number or not math.is-unitless($z-value) {\n @error \"$z-value must be a unitless number, but received '#{$z-value}'\";\n }\n\n @if $z-value < 0 or $z-value > 24 {\n @error \"$z-value must be between 0 and 24, but received '#{$z-value}'\";\n }\n\n $color: theme-color.prop-value($color);\n\n $umbra-z-value: map.get($umbra-map, $z-value);\n $penumbra-z-value: map.get($penumbra-map, $z-value);\n $ambient-z-value: map.get($ambient-map, $z-value);\n\n $umbra-color: rgba($color, $umbra-opacity + $opacity-boost);\n $penumbra-color: rgba($color, $penumbra-opacity + $opacity-boost);\n $ambient-color: rgba($color, $ambient-opacity + $opacity-boost);\n\n $box-shadow: (\n #{'#{$umbra-z-value} #{$umbra-color}'},\n #{'#{$penumbra-z-value} #{$penumbra-color}'},\n #{$ambient-z-value} $ambient-color\n );\n\n @return $box-shadow;\n}\n\n///\n/// Sets the shadow of the element.\n///\n/// @param {String} $box-shadow - The shadow to apply to the element.\n///\n@mixin shadow($box-shadow, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n /* @alternate */\n box-shadow: $box-shadow;\n }\n}\n\n///\n/// Sets the elevation overlay surface required positioning.\n///\n@mixin overlay-surface-position($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n /* @alternate */\n position: relative;\n }\n}\n\n///\n/// Sets the dimensions of the elevation overlay, including positioning and sizing.\n///\n/// @param {Number} $width - The width of the elevation overlay\n/// @param {Number} [$height] - The height of the elevation overlay\n/// @param {Boolean} [$has-content-sizing] - Set to false if the container has no content sizing\n///\n@mixin overlay-dimensions(\n $width,\n $height: $width,\n $has-content-sizing: true,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-elevation-overlay {\n @include feature-targeting.targets($feat-structure) {\n @include theme.property(width, $width);\n @include theme.property(height, $height);\n\n @if $has-content-sizing {\n top: 0;\n /* @noflip */\n left: 0;\n } @else {\n top: 50%;\n /* @noflip */\n left: 50%;\n transform: translate(-50%, -50%);\n }\n }\n }\n}\n\n///\n/// Sets the elevation overlay fill color.\n/// Expected to be called directly on the elevation overlay element.\n///\n/// @param {Color} $color - The color of the elevation overlay.\n///\n@mixin overlay-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n}\n\n///\n/// Sets the elevation overlay opacity.\n/// Expected to be called from a parent element.\n///\n/// @param {Number} $opacity - The opacity of the elevation overlay.\n///\n@mixin overlay-opacity($opacity, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-elevation-overlay {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(opacity, $opacity);\n }\n }\n}\n\n// Applies the correct CSS rules to an element to give it the elevation specified by $z-value.\n// The $z-value must be between 0 and 24.\n// If $color has an alpha channel, it will be ignored and overridden. To increase the opacity of the shadow, use\n// $opacity-boost.\n@mixin elevation(\n $z-value,\n $color: $baseline-color,\n $opacity-boost: 0,\n $query: feature-targeting.all()\n) {\n $box-shadow: elevation-box-shadow(\n $z-value,\n $color: $color,\n $opacity-boost: $opacity-boost\n );\n\n @include shadow($box-shadow, $query: $query);\n}\n","//\n// Copyright 2016 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:color';\n@use 'sass:map';\n@use '@material/animation/functions' as functions2;\n@use '@material/animation/variables' as variables2;\n@use '@material/base/mixins' as base-mixins;\n@use '@material/theme/custom-properties';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n@use './ripple-theme';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-ripple-surface {\n @include surface($query: $query);\n @include ripple-theme.states($query: $query);\n @include radius-bounded($query: $query);\n @include surface-styles($query: $query);\n }\n\n .mdc-ripple-surface[data-mdc-ripple-is-unbounded],\n .mdc-ripple-upgraded--unbounded {\n @include radius-unbounded($query: $query);\n @include unbounded-styles($query: $query);\n }\n}\n\n/// Sets all states (including hover, focus, press, activated and selected) with\n/// given color as base color.\n///\n/// This mixin is for internal use only. Use `ripple-theme.states($color)` mixin\n/// to set interactive states (hover, focus & press) color.\n///\n/// @param {Color|String} $color - Target base color. Can be valid CSS color or\n/// a color string literal (i.e., `primary`, `secondary`, etc).\n@mixin states-for-color($color, $query: feature-targeting.all()) {\n @include ripple-theme.states($color, $query: $query);\n @include ripple-theme.states-activated($color, $query: $query);\n @include ripple-theme.states-selected($color, $query: $query);\n}\n\n@mixin surface-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n position: relative;\n outline: none;\n overflow: hidden;\n }\n}\n\n@mixin unbounded-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n @include feature-targeting.targets($feat-structure) {\n overflow: visible;\n }\n}\n\n@mixin common($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n\n // Ensure that styles needed by any component using MDC Ripple are emitted, but only once.\n // (Every component using MDC Ripple imports these mixins, but doesn't necessarily import\n // mdc-ripple.scss.)\n @include feature-targeting.targets($feat-animation) {\n @include base-mixins.emit-once('mdc-ripple/common/animation') {\n @include keyframes_;\n }\n }\n}\n\n@mixin surface(\n $query: feature-targeting.all(),\n $ripple-target: '&',\n $include-will-change: true // TODO(b/151931961): Remove once resolved\n) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n --mdc-ripple-fg-size: 0;\n --mdc-ripple-left: 0;\n --mdc-ripple-top: 0;\n --mdc-ripple-fg-scale: 1;\n --mdc-ripple-fg-translate-end: 0;\n --mdc-ripple-fg-translate-start: 0;\n\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n // TODO(b/151931961): Remove the following block once resolved\n @if $include-will-change {\n will-change: transform, opacity;\n }\n }\n\n #{$ripple-target}::before,\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: '';\n }\n }\n\n #{$ripple-target}::before {\n @include feature-targeting.targets($feat-animation) {\n // Also transition background-color to avoid unnatural color flashes when toggling activated/selected state\n transition: opacity ripple-theme.$states-wash-duration linear,\n background-color ripple-theme.$states-wash-duration linear;\n }\n\n @include feature-targeting.targets($feat-structure) {\n // Ensure that the ripple wash for hover/focus states is displayed on top of positioned child elements\n @include theme.property(\n z-index,\n custom-properties.create(--mdc-ripple-z-index, 1)\n );\n }\n }\n\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-structure) {\n @include theme.property(\n z-index,\n custom-properties.create(--mdc-ripple-z-index, 0)\n );\n }\n }\n\n // Common styles for upgraded surfaces (some of these depend on custom properties set via JS or other mixins)\n\n &.mdc-ripple-upgraded {\n #{$ripple-target}::before {\n @include feature-targeting.targets($feat-structure) {\n transform: scale(var(--mdc-ripple-fg-scale, 1));\n }\n }\n\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-structure) {\n top: 0;\n /* @noflip */\n left: 0;\n transform: scale(0);\n transform-origin: center center;\n }\n }\n }\n\n &.mdc-ripple-upgraded--unbounded {\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-structure) {\n top: var(--mdc-ripple-top, 0);\n /* @noflip */\n left: var(--mdc-ripple-left, 0);\n }\n }\n }\n\n &.mdc-ripple-upgraded--foreground-activation {\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-ripple-fg-radius-in ripple-theme.$translate-duration\n forwards,\n mdc-ripple-fg-opacity-in ripple-theme.$fade-in-duration forwards;\n }\n }\n }\n\n &.mdc-ripple-upgraded--foreground-deactivation {\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-ripple-fg-opacity-out ripple-theme.$fade-out-duration;\n }\n\n @include feature-targeting.targets($feat-structure) {\n // Retain transform from mdc-ripple-fg-radius-in activation\n transform: translate(var(--mdc-ripple-fg-translate-end, 0))\n scale(var(--mdc-ripple-fg-scale, 1));\n }\n }\n }\n}\n\n@mixin radius-bounded(\n $radius: 100%,\n $query: feature-targeting.all(),\n $ripple-target: '&'\n) {\n $feat-struture: feature-targeting.create-target($query, structure);\n\n #{$ripple-target}::before,\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-struture) {\n top: calc(50% - #{$radius});\n /* @noflip */\n left: calc(50% - #{$radius});\n width: $radius * 2;\n height: $radius * 2;\n }\n }\n\n &.mdc-ripple-upgraded {\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-struture) {\n width: var(--mdc-ripple-fg-size, $radius);\n height: var(--mdc-ripple-fg-size, $radius);\n }\n }\n }\n}\n\n@mixin radius-unbounded(\n $radius: 100%,\n $query: feature-targeting.all(),\n $ripple-target: '&'\n) {\n $feat-struture: feature-targeting.create-target($query, structure);\n\n #{$ripple-target}::before,\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-struture) {\n top: calc(50% - #{$radius / 2});\n /* @noflip */\n left: calc(50% - #{$radius / 2});\n width: $radius;\n height: $radius;\n }\n }\n\n &.mdc-ripple-upgraded {\n #{$ripple-target}::before,\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-struture) {\n top: var(--mdc-ripple-top, calc(50% - #{$radius / 2}));\n /* @noflip */\n left: var(--mdc-ripple-left, calc(50% - #{$radius / 2}));\n width: var(--mdc-ripple-fg-size, $radius);\n height: var(--mdc-ripple-fg-size, $radius);\n }\n }\n\n #{$ripple-target}::after {\n @include feature-targeting.targets($feat-struture) {\n width: var(--mdc-ripple-fg-size, $radius);\n height: var(--mdc-ripple-fg-size, $radius);\n }\n }\n }\n}\n\n// Common styles for a ripple target element.\n// Used for components which have an inner ripple target element.\n@mixin target-common($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n // Necessary for clicks on other inner elements (e.g. close icon in chip)\n // to go through.\n pointer-events: none;\n }\n}\n\n@mixin keyframes_ {\n @keyframes mdc-ripple-fg-radius-in {\n from {\n animation-timing-function: variables2.$standard-curve-timing-function;\n // NOTE: For these keyframes, we do not need custom property fallbacks because they are only\n // used in conjunction with `.mdc-ripple-upgraded`. Since MDCRippleFoundation checks to ensure\n // that custom properties are supported within the browser before adding this class, we can\n // safely use them without a fallback.\n transform: translate(var(--mdc-ripple-fg-translate-start, 0)) scale(1);\n }\n\n to {\n transform: translate(var(--mdc-ripple-fg-translate-end, 0))\n scale(var(--mdc-ripple-fg-scale, 1));\n }\n }\n\n @keyframes mdc-ripple-fg-opacity-in {\n from {\n animation-timing-function: linear;\n opacity: 0;\n }\n\n to {\n opacity: var(--mdc-ripple-fg-opacity, 0);\n }\n }\n\n @keyframes mdc-ripple-fg-opacity-out {\n from {\n animation-timing-function: linear;\n opacity: var(--mdc-ripple-fg-opacity, 0);\n }\n\n to {\n opacity: 0;\n }\n }\n}\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n$deceleration-curve-timing-function: cubic-bezier(0, 0, 0.2, 1) !default;\n$standard-curve-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !default;\n$acceleration-curve-timing-function: cubic-bezier(0.4, 0, 1, 1) !default;\n$sharp-curve-timing-function: cubic-bezier(0.4, 0, 0.6, 1) !default;\n\n@function enter($name, $duration, $delay: 0ms) {\n @return $name $duration $delay $deceleration-curve-timing-function;\n}\n\n@function exit-permanent($name, $duration, $delay: 0ms) {\n @return $name $duration $delay $acceleration-curve-timing-function;\n}\n\n@function exit-temporary($name, $duration, $delay: 0ms) {\n @return $name $duration $delay $sharp-curve-timing-function;\n}\n\n@function standard($name, $duration, $delay: 0ms) {\n @return $name $duration $delay $standard-curve-timing-function;\n}\n\n@function linear($name, $duration, $delay: 0ms) {\n @return $name $duration $delay linear;\n}\n","//\n// Copyright 2016 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern --\n// Selector '.mdc-*' should only be used in this project.\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n\n$ripple-target: '.mdc-button__ripple';\n\n@mixin static-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-button {\n @include ripple.surface($query: $query, $ripple-target: $ripple-target);\n @include ripple.radius-bounded(\n $query: $query,\n $ripple-target: $ripple-target\n );\n\n #{$ripple-target} {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n // Ripple needs content-box as the box sizing and box-sizing: border-box\n // is often set as a default, so we override that here.\n box-sizing: content-box;\n width: 100%;\n height: 100%;\n overflow: hidden;\n }\n }\n\n // Ripple targets inside outlined buttons set their own `top`/`left`,\n // depending on the border width.\n &:not(.mdc-button--outlined) #{$ripple-target} {\n @include feature-targeting.targets($feat-structure) {\n top: 0;\n left: 0;\n }\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern --\n// Selector '.mdc-*' should only be used in this project.\n\n@use '@material/elevation/functions' as elevation-functions;\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use './button-base';\n@use './button-protected-theme';\n@use './button-shared-theme';\n\n@mixin styles(\n $theme: button-protected-theme.$light-theme,\n $query: feature-targeting.all()\n) {\n @include button-base.static-styles($query: $query);\n @include static-styles($query: $query);\n @include theme-styles($theme, $query: $query);\n}\n\n@mixin theme-styles(\n $theme: button-protected-theme.$light-theme,\n $query: feature-targeting.all()\n) {\n .mdc-button--raised {\n // TODO(b/179402677): move into theme config.\n @include button-shared-theme.horizontal-padding(\n button-shared-theme.$contained-horizontal-padding,\n $query\n );\n @include button-protected-theme.theme($theme, $query: $query);\n }\n}\n\n@mixin static-styles($query: feature-targeting.all()) {\n .mdc-button--raised {\n @include raised($query);\n }\n}\n\n/// @deprecated Private style mixin for partners; not available for public use.\n@mixin deprecated-raised($query) {\n @include raised($query);\n}\n\n@mixin raised($query) {\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include elevation-mixins.elevation(2, $query: $query);\n\n &:hover,\n &:focus {\n @include elevation-mixins.elevation(4, $query: $query);\n }\n\n &:active {\n @include elevation-mixins.elevation(8, $query: $query);\n }\n\n &:disabled {\n @include elevation-mixins.elevation(0, $query: $query);\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: elevation-functions.transition-value();\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern --\n// Selector '.mdc-*' should only be used in this project.\n\n@use 'sass:map';\n@use '@material/feature-targeting/feature-targeting';\n@use './button-base';\n@use './button-outlined-theme';\n@use './button-shared-theme';\n\n@mixin styles(\n $theme: button-outlined-theme.$light-theme,\n $query: feature-targeting.all()\n) {\n @include button-base.static-styles($query: $query);\n @include static-styles($query: $query);\n @include theme-styles($theme, $query: $query);\n}\n\n@mixin theme-styles(\n $theme: button-outlined-theme.$light-theme,\n $query: feature-targeting.all()\n) {\n .mdc-button--outlined {\n @include _theme-styles($theme, $query: $query);\n }\n}\n\n@mixin static-styles($query: feature-targeting.all()) {\n .mdc-button--outlined {\n @include _static-styles($query: $query);\n }\n}\n\n@mixin deprecated-theme-styles-without-ripple($query: feature-targeting.all()) {\n .mdc-button--outlined {\n $theme: map.merge(\n button-outlined-theme.$light-theme,\n (\n ripple-color: null,\n )\n );\n @include _theme-styles($theme, $query: $query);\n }\n}\n\n@mixin _theme-styles($theme, $query: feature-targeting.all()) {\n @include button-outlined-theme.theme($theme, $query: $query);\n}\n\n@mixin _static-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n border-style: solid;\n }\n}\n\n@mixin outlined($query: feature-targeting.all()) {\n @include _static-styles($query: $query);\n @include _theme-styles(button-outlined-theme.$light-theme, $query: $query);\n}\n\n/// @deprecated Private style mixin for partners; not available for public use.\n@mixin deprecated-outlined($query) {\n @include outlined($query);\n}\n","//\n// Copyright 2021 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern --\n// Selector '.mdc-*' should only be used in this project.\n\n@use 'sass:map';\n@use './button-shared-theme';\n@use './button-text-theme';\n\n@mixin styles($theme: button-text-theme.$light-theme, $query: $query) {\n @include button-base.static-styles($query: $query);\n @include static-styles($query: $query);\n @include theme-styles($theme, $query: $query);\n}\n\n@mixin theme-styles(\n $theme: button-text-theme.$light-theme,\n $query: feature-targeting.all()\n) {\n .mdc-button {\n @include button-text-theme.theme($theme, $query: $query);\n // TODO(b/179402677): move this into theme config\n @include button-shared-theme.horizontal-padding(\n button-shared-theme.$horizontal-padding,\n $query: $query\n );\n }\n}\n\n@mixin static-styles($query: feature-targeting.all()) {\n // Intentionally left blank for future-proofing.\n}\n\n@mixin deprecated-theme-styles-without-ripple($query: feature-targeting.all()) {\n $theme: map.merge(\n button-text-theme.$light-theme,\n (\n ripple-color: null,\n ripple-opacity: null,\n )\n );\n\n .mdc-button {\n @include button-text-theme.theme($theme, $query: $query);\n // TODO(b/179402677): move this into theme config\n @include button-shared-theme.horizontal-padding(\n button-shared-theme.$horizontal-padding,\n $query: $query\n );\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern --\n// Selector '.mdc-*' should only be used in this project.\n\n@use 'sass:map';\n@use '@material/elevation/functions' as elevation-functions;\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use './button-base';\n@use './button-filled-theme';\n@use './button-shared-theme';\n\n@mixin styles(\n $theme: button-filled-theme.$light-theme,\n $query: feature-targeting.all()\n) {\n @include button-base.static-styles($query: $query);\n @include static-styles($query: $query);\n @include theme-styles($theme, $query: $query);\n}\n\n@mixin theme-styles(\n $theme: button-filled-theme.$light-theme,\n $query: feature-targeting.all()\n) {\n .mdc-button--unelevated {\n @include _theme-styles($theme, $query: $query);\n }\n}\n\n@mixin static-styles($query: feature-targeting.all()) {\n // Intentionally left blank for future-proofing.\n}\n\n@mixin filled($query: feature-targeting.all()) {\n @include _theme-styles(button-filled-theme.$light-theme, $query: $query);\n}\n\n@mixin _theme-styles($theme, $query: feature-targeting.all()) {\n // TODO(b/179402677): move into theme config.\n @include button-shared-theme.horizontal-padding(\n button-shared-theme.$contained-horizontal-padding,\n $query: $query\n );\n\n @include button-filled-theme.theme($theme, $query: $query);\n}\n\n/// @deprecated Private style mixin for partners; not available for public use.\n@mixin deprecated-filled($query) {\n @include filled($query);\n}\n\n@mixin deprecated-theme-styles-without-ripple($query: feature-targeting.all()) {\n .mdc-button--raised,\n .mdc-button--unelevated {\n // TODO(b/179402677): move into theme config.\n @include button-shared-theme.horizontal-padding(\n button-shared-theme.$contained-horizontal-padding,\n $query: $query\n );\n\n $theme: map.merge(\n button-filled-theme.$light-theme,\n (\n ripple-color: null,\n )\n );\n @include button-filled-theme.theme($theme, $query: $query);\n }\n}\n","//\n// Copyright 2021 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern --\n// Selector '.mdc-*' should only be used in this project.\n\n@use 'sass:map';\n@use 'sass:math';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/state';\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n@use './button-base';\n@use './button-shared-theme';\n@use './button-ripple';\n\n$outlined-border-width: 1px !default;\n$outline-color: rgba(theme-color.prop-value(on-surface), 0.12) !default;\n\n$light-theme: (\n container-color: transparent,\n container-hover-color: null,\n container-focus-color: null,\n container-pressed-color: null,\n container-disabled-color: transparent,\n density: button-shared-theme.$density-scale,\n icon-color: null,\n icon-hover-color: null,\n icon-focus-color: null,\n icon-pressed-color: null,\n icon-disabled-color: null,\n label-color: primary,\n label-hover-color: null,\n label-focus-color: null,\n label-pressed-color: null,\n label-disabled-color: button-shared-theme.$disabled-ink-color,\n outline-width: $outlined-border-width,\n outline-color: $outline-color,\n outline-hover-color: null,\n outline-focus-color: null,\n outline-pressed-color: null,\n outline-disabled-color: button-shared-theme.$disabled-container-color,\n ripple-color: primary,\n ripple-opacity: null,\n shape: button-shared-theme.$shape-radius,\n);\n\n/// Sets theme based on provided theme configuration.\n/// Only emits theme related styles.\n/// @param {Map} $theme - Theme configuration to use.\n@mixin theme($theme, $query: feature-targeting.all()) {\n @include theme.validate-keys($light-theme, $theme);\n @include button-shared-theme.theme($theme, $query: $query);\n @include outline-color(\n (\n default: map.get($theme, outline-color),\n hover: map.get($theme, outline-hover-color),\n focus: map.get($theme, outline-focus-color),\n pressed: map.get($theme, outline-pressed-color),\n disabled: map.get($theme, outline-disabled-color),\n ),\n $query: $query\n );\n @include outline-width(map.get($theme, outline-width), $query: $query);\n}\n\n///\n/// Sets the outline color to the given color for an enabled button.\n/// @param {Color} $color-or-map - The desired outline color, specified either\n/// as a flat value or a map of colors with states\n/// {default, hover, focused, pressed, disabled} as keys.\n///\n@mixin outline-color($color-or-map, $query: feature-targeting.all()) {\n &:not(:disabled) {\n @include _outline-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n\n &:hover {\n @include _outline-color(\n state.get-hover-state($color-or-map),\n $query: $query\n );\n }\n\n &:focus {\n @include _outline-color(\n state.get-focus-state($color-or-map),\n $query: $query\n );\n }\n\n &:active {\n @include _outline-color(\n state.get-pressed-state($color-or-map),\n $query: $query\n );\n }\n }\n\n &:disabled {\n @include _outline-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n///\n/// Sets the outline color to the given color for a disabled button.\n/// @param {Color} $color - The desired outline color.\n/// @deprecated - call `outline-color` instead with `disabled` as a map key.\n///\n@mixin disabled-outline-color($color, $query: feature-targeting.all()) {\n @include outline-color(\n (\n disabled: $color,\n ),\n $query: $query\n );\n}\n\n@mixin outline-width(\n $outline-width,\n $padding: button-shared-theme.$contained-horizontal-padding,\n $query: feature-targeting.all()\n) {\n @if $outline-width != null {\n $feat-structure: feature-targeting.create-target($query, structure);\n // Note: Adjust padding to maintain consistent width with non-outlined buttons\n $padding-value: math.max($padding - $outline-width, 0);\n\n @include button-shared-theme.horizontal-padding($padding-value, $query);\n\n @include feature-targeting.targets($feat-structure) {\n border-width: $outline-width;\n }\n\n #{button-ripple.$ripple-target} {\n @include feature-targeting.targets($feat-structure) {\n top: -$outline-width;\n left: -$outline-width;\n border: $outline-width solid transparent;\n }\n }\n\n .mdc-button__touch {\n @include feature-targeting.targets($feat-structure) {\n left: -$outline-width;\n width: calc(100% + 2 * #{$outline-width});\n }\n }\n }\n}\n\n///\n/// Sets the outline color to the given color. This mixin should be\n/// wrapped in a selector that qualifies button state.\n/// @access private\n///\n@mixin _outline-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if $color {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-color, $color);\n }\n }\n}\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:math';\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/theme/theme';\n@use './variables';\n@use '@material/theme/theme-color';\n@use '@material/dom/mixins' as dom-mixins;\n\n//\n// Public\n//\n\n@mixin core-styles($query: feature-targeting.all()) {\n @include without-ripple($query);\n @include ripple($query);\n}\n\n// This API is intended for use by frameworks that may want to separate the ripple-related styles from the other\n// card styles. It is recommended that most users use `mdc-card-core-styles` instead.\n@mixin without-ripple($query: feature-targeting.all()) {\n // postcss-bem-linter: define card\n\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // prettier-ignore\n @include elevation-mixins.overlay-common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-card {\n @include shape-radius(variables.$shape-radius, $query: $query);\n @include fill-color(surface, $query);\n @include elevation-mixins.overlay-surface-position($query: $query);\n @include elevation-mixins.overlay-dimensions(100%, $query: $query);\n @include elevation-mixins.elevation(1, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n @include container-layout_;\n }\n\n // Transparent card border for high-contrast mode.\n &::after {\n @include shape-radius(variables.$shape-radius, $query: $query);\n @include dom-mixins.transparent-border($query: $query);\n @include feature-targeting.targets($feat-structure) {\n pointer-events: none;\n }\n }\n }\n\n .mdc-card--outlined {\n @include elevation-mixins.elevation(0, $query: $query);\n @include outline(variables.$outline-color, $query: $query);\n\n // Outlined card already displays border in high-contrast mode. Overwriting\n // styles set above to remove a duplicate border.\n &::after {\n @include feature-targeting.targets($feat-structure) {\n border: none;\n }\n }\n }\n\n .mdc-card__content {\n @include feature-targeting.targets($feat-structure) {\n border-radius: inherit;\n height: 100%;\n }\n }\n\n //\n // Media\n //\n\n .mdc-card__media {\n @include feature-targeting.targets($feat-structure) {\n position: relative; // Child element `__media-content` has `position: absolute`\n box-sizing: border-box;\n background-repeat: no-repeat;\n background-position: center;\n background-size: cover;\n }\n\n &::before {\n @include feature-targeting.targets($feat-structure) {\n display: block;\n content: '';\n }\n }\n }\n\n .mdc-card__media:first-child {\n @include feature-targeting.targets($feat-structure) {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n }\n }\n\n .mdc-card__media:last-child {\n @include feature-targeting.targets($feat-structure) {\n border-bottom-left-radius: inherit;\n border-bottom-right-radius: inherit;\n }\n }\n\n .mdc-card__media--square {\n @include media-aspect-ratio(1, 1, $query);\n }\n\n .mdc-card__media--16-9 {\n @include media-aspect-ratio(16, 9, $query);\n }\n\n .mdc-card__media-content {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n box-sizing: border-box;\n }\n }\n\n //\n // Primary action\n //\n\n .mdc-card__primary-action {\n @include feature-targeting.targets($feat-structure) {\n @include container-layout_;\n\n position: relative; // Needed to prevent the ripple wash from overflowing the container in IE and Edge\n outline: none;\n color: inherit;\n text-decoration: none;\n cursor: pointer;\n overflow: hidden;\n }\n }\n\n .mdc-card__primary-action:first-child {\n @include feature-targeting.targets($feat-structure) {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n }\n }\n\n .mdc-card__primary-action:last-child {\n @include feature-targeting.targets($feat-structure) {\n border-bottom-left-radius: inherit;\n border-bottom-right-radius: inherit;\n }\n }\n\n //\n // Action row\n //\n\n .mdc-card__actions {\n @include feature-targeting.targets($feat-structure) {\n @include actions-layout_;\n\n min-height: 52px;\n padding: 8px;\n }\n }\n\n .mdc-card__actions--full-bleed {\n @include feature-targeting.targets($feat-structure) {\n padding: 0;\n }\n }\n\n .mdc-card__action-buttons,\n .mdc-card__action-icons {\n @include feature-targeting.targets($feat-structure) {\n @include actions-layout_;\n }\n }\n\n .mdc-card__action-icons {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, variables.$action-icon-color);\n }\n\n @include feature-targeting.targets($feat-structure) {\n flex-grow: 1;\n justify-content: flex-end;\n }\n }\n\n .mdc-card__action-buttons + .mdc-card__action-icons {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(margin, left, 16px);\n }\n }\n\n //\n // Action items\n //\n\n .mdc-card__action {\n @include feature-targeting.targets($feat-structure) {\n @include actions-layout_(inline-flex);\n\n justify-content: center;\n cursor: pointer;\n user-select: none;\n }\n\n &:focus {\n @include feature-targeting.targets($feat-structure) {\n outline: none;\n }\n }\n }\n\n //\n // Action buttons\n //\n\n .mdc-card__action--button {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(margin, right, 8px);\n\n padding: 0 8px;\n }\n\n &:last-child {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(margin, right, 0);\n }\n }\n }\n\n .mdc-card__actions--full-bleed .mdc-card__action--button {\n @include feature-targeting.targets($feat-structure) {\n justify-content: space-between;\n width: 100%;\n height: auto;\n max-height: none;\n margin: 0;\n padding: 8px 16px;\n /* @noflip */\n text-align: left;\n }\n\n @include rtl-mixins.rtl {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n text-align: right;\n }\n }\n }\n\n //\n // Action icons\n //\n\n .mdc-card__action--icon {\n @include feature-targeting.targets($feat-structure) {\n // Icon buttons are taller than buttons, so we need to adjust their margins to prevent the action row from\n // expanding.\n margin: -6px 0;\n\n // Same padding as mdc-icon-button.\n padding: 12px;\n }\n }\n\n .mdc-card__action--icon:not(:disabled) {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, variables.$action-icon-color);\n }\n }\n\n // postcss-bem-linter: end\n}\n\n// This API is intended for use by frameworks that may want to separate the ripple-related styles from the other\n// card styles. It is recommended that most users use `mdc-card-core-styles` instead.\n@mixin ripple($query: feature-targeting.all()) {\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-card__primary-action {\n @include ripple.surface($query);\n @include ripple.radius-bounded($query: $query);\n @include ripple-theme.states($query: $query);\n }\n}\n\n@mixin fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n}\n\n@mixin outline(\n $color,\n $thickness: variables.$outline-width,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n border-width: $thickness;\n border-style: solid;\n }\n\n @include feature-targeting.targets($feat-color) {\n border-color: theme-color.prop-value($color);\n }\n}\n\n@mixin shape-radius(\n $radius,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n @include shape-mixins.radius($radius, $rtl-reflexive, $query: $query);\n}\n\n@mixin media-aspect-ratio($x, $y, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n &::before {\n @include feature-targeting.targets($feat-structure) {\n // This clever trick brought to you by: http://www.mademyday.de/css-height-equals-width-with-pure-css.html\n margin-top: math.percentage($y / $x);\n }\n }\n}\n\n//\n// Private\n//\n\n@mixin container-layout_ {\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n\n@mixin actions-layout_($display: flex) {\n display: $display;\n flex-direction: row;\n align-items: center;\n box-sizing: border-box;\n}\n","// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n@use '@material/feature-targeting/feature-targeting';\n///\n/// Emits necessary layout styles to set a transparent border around an element\n/// without interfering with the rest of its component layout. The border is\n/// only visible in high-contrast mode. The target element should be a child of\n/// a relatively positioned top-level element (i.e. a ::before pseudo-element).\n///\n/// @param {number} $border-width - The width of the transparent border.\n/// @param {string} $border-style - The style of the transparent border.\n///\n@mixin transparent-border(\n $border-width: 1px,\n $border-style: solid,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n border: $border-width $border-style transparent;\n border-radius: inherit;\n content: '';\n }\n}\n\n///\n/// Visually hides text content for accessibility. This text should only be\n/// visible to screen reader users.\n/// See https://a11yproject.com/posts/how-to-hide-content/\n///\n@mixin visually-hidden($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n clip: rect(1px, 1px, 1px, 1px);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap; /* added line */\n width: 1px;\n }\n}\n\n///\n/// Selects for high-contrast mode. Currently this only detects high-contrast\n/// mode in IE and Edge.\n///\n@mixin ie-high-contrast-mode {\n @media screen and (-ms-high-contrast: active) {\n @content;\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use 'sass:color';\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n\n$action-icon-color: rgba(\n theme-color.prop-value(on-surface),\n theme-color.text-emphasis(medium)\n) !default;\n$outline-color: color.mix(\n theme-color.prop-value(on-surface),\n theme-color.prop-value(surface),\n 12%\n) !default;\n$outline-width: 1px !default;\n$shape-radius: medium !default;\n","//\n// Copyright 2016 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:map';\n@use 'sass:math';\n@use '@material/animation/functions' as functions2;\n@use '@material/animation/variables' as animation-variables;\n@use '@material/density/functions' as density-functions;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/touch-target/mixins' as touch-target-mixins;\n@use '@material/theme/theme-color';\n@use './checkbox-custom-properties';\n@use '@material/theme/theme';\n@use '@material/theme/color-custom-properties';\n@use '@material/theme/custom-properties';\n@use '@material/touch-target/variables' as touch-target-variables;\n@use './checkbox-theme';\n\n///\n/// Checkbox and ripple styles.\n///\n@mixin core-styles($query: feature-targeting.all()) {\n @include without-ripple($query);\n @include ripple-styles($query);\n}\n\n/// Checkbox styles (Excluding ripple styles).\n///\n/// NOTE: This API is intended for use by frameworks that may want to separate the ripple-related styles from the other\n/// checkbox styles. It is recommended that most users use `mdc-checkbox-core-styles` instead.\n// TODO(b/162887560): Rename to `checkbox-without-ripple-styles()`\n@mixin without-ripple($query: feature-targeting.all()) {\n // TODO(b/165005345): Include theme-styles() after static-styles().\n @include theme-styles($query: $query);\n @include static-styles($query: $query);\n}\n\n/// Checkbox static styles.\n/// Checkbox styles that are not customizable should go here.\n@mixin static-styles($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include touch-target-mixins.wrapper($query); // COPYBARA_COMMENT_THIS_LINE\n\n @include feature-targeting.targets($feat-animation) {\n @include mark-keyframes_;\n }\n\n .mdc-checkbox {\n @include feature-targeting.targets($feat-structure) {\n @include base_;\n }\n }\n\n @media screen and (-ms-high-contrast: active) {\n @include checkbox-theme.disabled-container-colors(\n $unmarked-stroke-color: GrayText,\n $unmarked-fill-color: transparent,\n $marked-stroke-color: GrayText,\n $marked-fill-color: transparent,\n $query: $query\n );\n @include checkbox-theme.disabled-ink-color(GrayText, $query: $query);\n\n .mdc-checkbox__mixedmark {\n @include feature-targeting.targets($feat-structure) {\n margin: 0 1px; // Extra horizontal space around mixedmark symbol.\n }\n }\n }\n\n // Needed to disable hover effects on CSS-only (non-JS) checkboxes\n .mdc-checkbox--disabled {\n @include feature-targeting.targets($feat-structure) {\n @include disabled_;\n }\n }\n\n .mdc-checkbox__background {\n @include background_($query);\n }\n\n .mdc-checkbox__checkmark {\n @include checkmark_($query);\n }\n\n .mdc-checkbox__checkmark-path {\n @include checkmark-path_($query);\n }\n\n .mdc-checkbox__mixedmark {\n @include mixedmark_($query);\n }\n\n .mdc-checkbox--anim {\n @include feature-targeting.targets($feat-animation) {\n @include anim_;\n }\n }\n\n .mdc-checkbox__native-control:checked ~ .mdc-checkbox__background,\n .mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background,\n .mdc-checkbox__native-control[data-indeterminate='true']\n ~ .mdc-checkbox__background {\n @include feature-targeting.targets($feat-animation) {\n @include background--marked_;\n }\n\n .mdc-checkbox__checkmark-path {\n @include feature-targeting.targets($feat-structure) {\n @include checkmark-path--marked_;\n }\n }\n }\n\n .mdc-checkbox__native-control {\n @include feature-targeting.targets($feat-structure) {\n @include native-control_;\n }\n\n &:disabled {\n @include feature-targeting.targets($feat-structure) {\n @include disabled_;\n }\n }\n }\n\n .mdc-checkbox--touch {\n @include checkbox-theme.touch-target(\n custom-properties.create(\n checkbox-custom-properties.$touch-target-size,\n touch-target-variables.$height\n ),\n custom-properties.create(\n checkbox-custom-properties.$ripple-size,\n checkbox-theme.$ripple-size\n ),\n $query: $query\n );\n }\n\n .mdc-checkbox__native-control:checked ~ .mdc-checkbox__background {\n .mdc-checkbox__checkmark {\n @include checkmark--checked_($query);\n }\n\n .mdc-checkbox__mixedmark {\n @include feature-targeting.targets($feat-structure) {\n @include mixedmark--checked_;\n }\n }\n }\n .mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background,\n .mdc-checkbox__native-control[data-indeterminate='true']\n ~ .mdc-checkbox__background {\n .mdc-checkbox__checkmark {\n @include checkmark--indeterminate_($query);\n }\n\n .mdc-checkbox__mixedmark {\n @include feature-targeting.targets($feat-structure) {\n @include mixedmark--indeterminate_;\n }\n }\n }\n\n // JS checkbox\n .mdc-checkbox.mdc-checkbox--upgraded {\n .mdc-checkbox__background,\n .mdc-checkbox__checkmark,\n .mdc-checkbox__checkmark-path,\n .mdc-checkbox__mixedmark {\n @include feature-targeting.targets($feat-animation) {\n @include child--upgraded_;\n }\n }\n }\n}\n\n/// Checkbox theme styles.\n/// Checkbox styles that are customizable should go here.\n@mixin theme-styles($query: feature-targeting.all()) {\n .mdc-checkbox {\n @include checkbox-theme.theme(checkbox-theme.$light-theme, $query: $query);\n }\n}\n\n/// Checkbox's ripple styles.\n///\n/// NOTE: This API is intended for use by frameworks that may want to separate the ripple-related styles from the other\n/// checkbox styles. It is recommended that most users use `mdc-checkbox-core-styles` instead.\n@mixin ripple-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-checkbox {\n @include ripple.surface(\n $query: $query,\n $ripple-target: checkbox-theme.$ripple-target\n );\n @include ripple.radius-unbounded(\n $query: $query,\n $ripple-target: checkbox-theme.$ripple-target\n );\n @include ripple-theme.behind-content(\n checkbox-theme.$ripple-target,\n $query: $query\n );\n }\n\n #{checkbox-theme.$ripple-target} {\n @include ripple.target-common($query: $query);\n }\n}\n\n@mixin base_ {\n display: inline-block;\n position: relative;\n flex: 0 0 checkbox-theme.$icon-size;\n box-sizing: content-box;\n width: checkbox-theme.$icon-size;\n height: checkbox-theme.$icon-size;\n line-height: 0;\n white-space: nowrap;\n cursor: pointer;\n vertical-align: bottom;\n}\n\n@mixin disabled_ {\n cursor: default;\n pointer-events: none;\n}\n\n@mixin child--upgraded_ {\n transition: none;\n}\n\n// Animation\n\n@mixin anim_ {\n $mdc-checkbox-indeterminate-change-duration_: 500ms;\n\n // stylelint-disable selector-max-type\n\n &-unchecked-checked,\n &-unchecked-indeterminate,\n &-checked-unchecked,\n &-indeterminate-unchecked {\n .mdc-checkbox__background {\n animation-duration: checkbox-theme.$transition-duration * 2;\n animation-timing-function: linear;\n }\n }\n\n &-unchecked-checked {\n .mdc-checkbox__checkmark-path {\n // Instead of delaying the animation, we simply multiply its length by 2 and begin the\n // animation at 50% in order to prevent a flash of styles applied to a checked checkmark\n // as the background is fading in before the animation begins.\n animation: mdc-checkbox-unchecked-checked-checkmark-path\n checkbox-theme.$transition-duration * 2 linear 0s;\n transition: none;\n }\n }\n\n &-unchecked-indeterminate {\n .mdc-checkbox__mixedmark {\n animation: mdc-checkbox-unchecked-indeterminate-mixedmark\n checkbox-theme.$transition-duration linear 0s;\n transition: none;\n }\n }\n\n &-checked-unchecked {\n .mdc-checkbox__checkmark-path {\n animation: mdc-checkbox-checked-unchecked-checkmark-path\n checkbox-theme.$transition-duration linear 0s;\n transition: none;\n }\n }\n\n &-checked-indeterminate {\n .mdc-checkbox__checkmark {\n animation: mdc-checkbox-checked-indeterminate-checkmark\n checkbox-theme.$transition-duration linear 0s;\n transition: none;\n }\n\n .mdc-checkbox__mixedmark {\n animation: mdc-checkbox-checked-indeterminate-mixedmark\n checkbox-theme.$transition-duration linear 0s;\n transition: none;\n }\n }\n\n &-indeterminate-checked {\n .mdc-checkbox__checkmark {\n animation: mdc-checkbox-indeterminate-checked-checkmark\n $mdc-checkbox-indeterminate-change-duration_ linear 0s;\n transition: none;\n }\n\n .mdc-checkbox__mixedmark {\n animation: mdc-checkbox-indeterminate-checked-mixedmark\n $mdc-checkbox-indeterminate-change-duration_ linear 0s;\n transition: none;\n }\n }\n\n &-indeterminate-unchecked {\n .mdc-checkbox__mixedmark {\n // stylelint-disable-next-line declaration-colon-space-after\n animation: mdc-checkbox-indeterminate-unchecked-mixedmark\n $mdc-checkbox-indeterminate-change-duration_ * 0.6 linear 0s;\n transition: none;\n }\n }\n\n // stylelint-enable selector-max-type\n}\n\n@mixin background_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n position: absolute;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: checkbox-theme.$icon-size;\n height: checkbox-theme.$icon-size;\n // border-color is overridden by the mdc-checkbox-unmarked-stroke-color() mixin\n border: checkbox-theme.$border-width solid currentColor;\n border-radius: 2px;\n background-color: transparent;\n pointer-events: none;\n will-change: background-color, border-color;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: transition-exit(background-color), transition-exit(border-color);\n }\n}\n\n@mixin background--marked_ {\n transition: transition-enter(border-color), transition-enter(background-color);\n}\n\n// stylelint-disable block-no-empty -- For backward compatibility.\n@mixin focus-indicator_($query: feature-targeting.all()) {\n}\n@mixin focus-indicator--focused_($query: feature-targeting.all()) {\n}\n// stylelint-enable block-no-empty\n\n// Native input\n\n@mixin native-control_ {\n position: absolute;\n margin: 0;\n padding: 0;\n opacity: 0;\n cursor: inherit;\n}\n\n// Check mark\n\n@mixin checkmark_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n opacity: 0;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: transition-exit(\n opacity,\n 0ms,\n checkbox-theme.$transition-duration * 2\n );\n }\n\n .mdc-checkbox--upgraded & {\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n }\n}\n\n@mixin checkmark--checked_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-animation) {\n transition: transition-enter(\n opacity,\n 0ms,\n checkbox-theme.$transition-duration * 2\n ),\n transition-enter(transform, 0ms, checkbox-theme.$transition-duration * 2);\n }\n\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n}\n\n@mixin checkmark--indeterminate_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n transform: rotate(45deg);\n opacity: 0;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: transition-exit(\n opacity,\n 0ms,\n checkbox-theme.$transition-duration\n ),\n transition-exit(transform, 0ms, checkbox-theme.$transition-duration);\n }\n}\n\n// Check mark path\n\n@mixin checkmark-path_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-animation) {\n transition: transition-exit(\n stroke-dashoffset,\n 0ms,\n checkbox-theme.$transition-duration * 2\n );\n }\n\n @include feature-targeting.targets($feat-structure) {\n stroke: currentColor;\n stroke-width: checkbox-theme.$mark-stroke-size * 1.3;\n stroke-dashoffset: $mark-path-length_;\n stroke-dasharray: $mark-path-length_;\n }\n}\n\n@mixin checkmark-path--marked_ {\n stroke-dashoffset: 0;\n}\n\n// Mixed mark\n\n@mixin mixedmark_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n width: 100%;\n height: 0;\n transform: scaleX(0) rotate(0deg);\n border-width: math.floor(checkbox-theme.$mark-stroke-size) / 2;\n border-style: solid;\n opacity: 0;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: transition-exit(opacity), transition-exit(transform);\n }\n}\n\n@mixin mixedmark--checked_ {\n transform: scaleX(1) rotate(-45deg);\n}\n\n@mixin mixedmark--indeterminate_ {\n transform: scaleX(1) rotate(0deg);\n opacity: 1;\n}\n\n@function transition-enter(\n $property,\n $delay: 0ms,\n $duration: checkbox-theme.$transition-duration\n) {\n @return functions2.enter($property, $duration, $delay);\n}\n\n@function transition-exit(\n $property,\n $delay: 0ms,\n $duration: checkbox-theme.$transition-duration\n) {\n @return functions2.exit-temporary($property, $duration, $delay);\n}\n\n// Manual calculation done on SVG\n$mark-path-length_: 29.7833385 !default;\n$indeterminate-checked-easing-function_: cubic-bezier(0.14, 0, 0, 1) !default;\n\n@mixin mark-keyframes_ {\n @keyframes mdc-checkbox-unchecked-checked-checkmark-path {\n 0%,\n 50% {\n stroke-dashoffset: $mark-path-length_;\n }\n\n 50% {\n animation-timing-function: animation-variables.$deceleration-curve-timing-function;\n }\n\n 100% {\n stroke-dashoffset: 0;\n }\n }\n\n @keyframes mdc-checkbox-unchecked-indeterminate-mixedmark {\n 0%,\n 68.2% {\n transform: scaleX(0);\n }\n\n 68.2% {\n animation-timing-function: cubic-bezier(0, 0, 0, 1);\n }\n\n 100% {\n transform: scaleX(1);\n }\n }\n\n @keyframes mdc-checkbox-checked-unchecked-checkmark-path {\n from {\n animation-timing-function: animation-variables.$acceleration-curve-timing-function;\n opacity: 1;\n stroke-dashoffset: 0;\n }\n\n to {\n opacity: 0;\n stroke-dashoffset: $mark-path-length_ * -1;\n }\n }\n\n @keyframes mdc-checkbox-checked-indeterminate-checkmark {\n from {\n animation-timing-function: animation-variables.$deceleration-curve-timing-function;\n transform: rotate(0deg);\n opacity: 1;\n }\n\n to {\n transform: rotate(45deg);\n opacity: 0;\n }\n }\n\n @keyframes mdc-checkbox-indeterminate-checked-checkmark {\n from {\n animation-timing-function: $indeterminate-checked-easing-function_;\n transform: rotate(45deg);\n opacity: 0;\n }\n\n to {\n transform: rotate(360deg);\n opacity: 1;\n }\n }\n\n @keyframes mdc-checkbox-checked-indeterminate-mixedmark {\n from {\n animation-timing-function: mdc-animation-deceleration-curve-timing-function;\n transform: rotate(-45deg);\n opacity: 0;\n }\n\n to {\n transform: rotate(0deg);\n opacity: 1;\n }\n }\n\n @keyframes mdc-checkbox-indeterminate-checked-mixedmark {\n from {\n animation-timing-function: $indeterminate-checked-easing-function_;\n transform: rotate(0deg);\n opacity: 1;\n }\n\n to {\n transform: rotate(315deg);\n opacity: 0;\n }\n }\n\n @keyframes mdc-checkbox-indeterminate-unchecked-mixedmark {\n 0% {\n animation-timing-function: linear;\n transform: scaleX(1);\n opacity: 1;\n }\n\n 32.8%,\n 100% {\n transform: scaleX(0);\n opacity: 0;\n }\n }\n}\n","//\n// Copyright 2016 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:map';\n@use 'sass:math';\n@use '@material/animation/functions' as functions2;\n@use '@material/density/functions' as density-functions;\n@use '@material/density/variables' as density-variables;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/theme/color-custom-properties';\n@use '@material/theme/custom-properties';\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n@use '@material/touch-target/variables' as touch-target-variables;\n@use './checkbox-custom-properties';\n\n$baseline-theme-color: secondary !default;\n$mark-color: theme-color.prop-value(on-secondary) !default;\n$border-color: rgba(theme-color.prop-value(on-surface), 0.54) !default;\n$disabled-color: rgba(theme-color.prop-value(on-surface), 0.38) !default;\n\n$ripple-size: 40px !default;\n$icon-size: 18px !default;\n$mark-stroke-size: 2 / 15 * $icon-size !default;\n$border-width: 2px !default;\n$transition-duration: 90ms !default;\n$item-spacing: 4px !default;\n$focus-indicator-opacity: map.get(\n ripple-theme.$dark-ink-opacities,\n focus\n) !default;\n\n$minimum-size: 28px !default;\n$maximum-size: $ripple-size !default;\n$density-scale: density-variables.$default-scale !default;\n$density-config: (\n size: (\n minimum: $minimum-size,\n default: $ripple-size,\n maximum: $maximum-size,\n ),\n) !default;\n\n$ripple-target: '.mdc-checkbox__ripple';\n\n/// Material baseline light theme configuration of checkbox.\n/// See https://material.io/components/selection-controls for spec.\n$light-theme: (\n density-scale: 0,\n checkmark-color: $mark-color,\n container-checked-color: $baseline-theme-color,\n container-checked-hover-color: null,\n container-disabled-color: $disabled-color,\n outline-color: $border-color,\n outline-hover-color: null,\n ripple-color: theme-color.$on-surface,\n ripple-opacity: ripple-theme.$dark-ink-opacities,\n ripple-checked-color: $baseline-theme-color,\n ripple-checked-opacity: ripple-theme.$dark-ink-opacities,\n);\n\n/// Sets theme to checkbox based on provided theme configuration.\n/// Only emits theme related styles.\n/// @param {Map} $theme - Theme configuration to use for theming checkbox.\n@mixin theme($theme, $query: feature-targeting.all()) {\n @include theme.validate-keys($light-theme, $theme);\n\n $ripple-color: map.get($theme, ripple-color);\n $ripple-opacity: map.get($theme, ripple-opacity);\n @if $ripple-opacity == null {\n $ripple-opacity: ();\n }\n @if $ripple-color {\n @include ripple-color(\n $color: $ripple-color,\n $opacity-map: $ripple-opacity,\n $query: $query\n );\n }\n\n $ripple-checked-color: map.get($theme, ripple-checked-color);\n $ripple-checked-opacity: map.get($theme, ripple-checked-opacity);\n @if $ripple-checked-opacity == null {\n $ripple-checked-opacity: ();\n }\n @if $ripple-checked-color {\n @include focus-indicator-color(\n $color: $ripple-checked-color,\n $opacity-map: $ripple-checked-opacity,\n $query: $query\n );\n }\n\n $density-scale: map.get($theme, density-scale);\n @if $density-scale != null {\n @include density($density-scale: $density-scale, $query: $query);\n }\n\n $outline-color: map.get($theme, outline-color);\n $container-checked-color: map.get($theme, container-checked-color);\n @if (\n ($outline-color and not $container-checked-color) or\n (not $outline-color and $container-checked-color)\n ) {\n @error 'Both `outline-color` and `container-checked-color` keys should be provided.';\n }\n @if ($outline-color and $container-checked-color) {\n @include container-colors(\n $unmarked-stroke-color: $outline-color,\n $marked-stroke-color: $container-checked-color,\n $marked-fill-color: $container-checked-color,\n $query: $query\n );\n }\n\n $outline-hover-color: map.get($theme, outline-hover-color);\n $container-checked-hover-color: map.get(\n $theme,\n container-checked-hover-color\n );\n @if (\n ($outline-hover-color and not $container-checked-hover-color) or\n (not $outline-hover-color and $container-checked-hover-color)\n ) {\n @error 'Both `outline-hover-color` and `container-checked-hover-color` keys should be provided.';\n }\n @if ($outline-hover-color and $container-checked-hover-color) {\n @include ripple-theme.states-selector() {\n @include container-colors(\n $unmarked-stroke-color: $outline-hover-color,\n $marked-stroke-color: $container-checked-hover-color,\n $marked-fill-color: $container-checked-hover-color,\n $query: $query\n );\n }\n }\n\n $container-disabled-color: map.get($theme, container-disabled-color);\n @if $container-disabled-color {\n @include disabled-container-colors(\n $unmarked-stroke-color: $container-disabled-color,\n $marked-fill-color: $container-disabled-color,\n $query: $query\n );\n }\n\n $checkmark-color: map.get($theme, checkmark-color);\n @if $checkmark-color {\n @include ink-color($checkmark-color, $query: $query);\n @include disabled-ink-color($checkmark-color, $query: $query);\n }\n}\n\n///\n/// @param {Number | String} $density-scale - Density scale value for component.\n/// Supported density scale values `-3`, `-2`, `-1`, `0`.\n/// @return Returns ripple size of checkbox for given density scale.\n///\n@function get-ripple-size($density-scale) {\n @return density-functions.prop-value(\n $density-config: $density-config,\n $density-scale: $density-scale,\n $property-name: size\n );\n}\n\n///\n/// Sets density scale for checkbox.\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values\n/// `-3`, `-2`, `-1`, `0`.\n///\n@mixin density($density-scale, $query: feature-targeting.all()) {\n $size: get-ripple-size($density-scale);\n\n @include ripple-size($size, $query: $query);\n}\n\n/// Sets ripple size of checkbox and optionally set touch target size which can\n/// be more than the size of ripple.\n/// @param {Number} $ripple-size - Visual ripple size of checkbox.\n/// @param {Number} $touch-target-size [null] - Touch target size that is\n/// visually hidden. Defaults to the size of provided `$ripple-size`.\n@mixin ripple-size(\n $ripple-size,\n $touch-target-size: null,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n $checkbox-padding: ($ripple-size - $icon-size) / 2;\n $ripple-size: custom-properties.create(\n checkbox-custom-properties.$ripple-size,\n $ripple-size\n );\n $checkbox-padding: calc((_ripple-size - _icon-size) / 2);\n $replace: (\n _ripple-size: $ripple-size,\n _icon-size: $icon-size,\n );\n\n @include feature-targeting.targets($feat-structure) {\n @include theme.property(padding, $checkbox-padding, $replace: $replace);\n }\n\n .mdc-checkbox__background {\n @include feature-targeting.targets($feat-structure) {\n @include theme.property(top, $checkbox-padding, $replace: $replace);\n @include theme.property(left, $checkbox-padding, $replace: $replace);\n }\n }\n\n @if ($touch-target-size) {\n $touch-target-size: custom-properties.create(\n checkbox-custom-properties.$touch-target-size,\n $touch-target-size\n );\n } @else {\n $touch-target-size: $ripple-size;\n }\n\n @include touch-target(\n $touch-target-size: $touch-target-size,\n $ripple-size: $ripple-size,\n $query: $query\n );\n}\n\n///\n/// Sets stroke & fill colors for both marked and unmarked state of enabled checkbox.\n/// Set $generate-keyframes to false to prevent the mixin from generating @keyframes\n/// @param {Color} $unmarked-stroke-color - The desired stroke color for the unmarked state\n/// @param {Color} $unmarked-fill-color - The desired fill color for the unmarked state\n/// @param {Color} $marked-stroke-color - The desired stroke color for the marked state\n/// @param {Color} $marked-fill-color - The desired fill color for the marked state\n/// @param {Boolean} $generate-keyframes [true] - Whether animation keyframes should be generated\n///\n@mixin container-colors(\n $unmarked-stroke-color: $border-color,\n $unmarked-fill-color: transparent,\n $marked-stroke-color: $baseline-theme-color,\n $marked-fill-color: $baseline-theme-color,\n $generate-keyframes: true,\n $query: feature-targeting.all()\n) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-color: feature-targeting.create-target($query, color);\n\n // Unchecked colors\n @if (not custom-properties.is-custom-prop($unmarked-stroke-color)) {\n $unmarked-stroke-color: custom-properties.create(\n checkbox-custom-properties.$unchecked-color,\n theme-color.prop-value($unmarked-stroke-color)\n );\n }\n\n @include if-unmarked-enabled_ {\n @include container-colors_(\n $unmarked-stroke-color,\n $unmarked-fill-color,\n $query: $query\n );\n }\n\n // Checked colors\n @if (not custom-properties.is-custom-prop($marked-stroke-color)) {\n $marked-stroke-color: custom-properties.create(\n checkbox-custom-properties.$checked-color,\n custom-properties.create(\n color-custom-properties.$secondary,\n theme-color.prop-value($marked-stroke-color)\n )\n );\n }\n @if (not custom-properties.is-custom-prop($marked-fill-color)) {\n $marked-fill-color: custom-properties.create(\n checkbox-custom-properties.$checked-color,\n custom-properties.create(\n color-custom-properties.$secondary,\n theme-color.prop-value($marked-fill-color)\n )\n );\n }\n\n @include if-marked-enabled_ {\n @include container-colors_(\n $marked-stroke-color,\n $marked-fill-color,\n $query: $query\n );\n }\n\n @if $generate-keyframes {\n $uid: theme-color.color-hash($unmarked-stroke-color) +\n theme-color.color-hash($marked-stroke-color) +\n theme-color.color-hash($unmarked-fill-color) +\n theme-color.color-hash($marked-fill-color);\n\n $anim-selector: if(&, '&.mdc-checkbox--anim', '.mdc-checkbox--anim');\n\n @include feature-targeting.targets($feat-animation, $feat-color) {\n @include container-keyframes_(\n $from-stroke-color: $unmarked-stroke-color,\n $to-stroke-color: $marked-stroke-color,\n $from-fill-color: $unmarked-fill-color,\n $to-fill-color: $marked-fill-color,\n $uid: #{$uid}\n );\n }\n\n // stylelint-disable max-nesting-depth\n\n #{$anim-selector} {\n &-unchecked-checked,\n &-unchecked-indeterminate {\n .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {\n @include feature-targeting.targets($feat-animation) {\n animation-name: mdc-checkbox-fade-in-background-#{$uid};\n }\n }\n }\n\n &-checked-unchecked,\n &-indeterminate-unchecked {\n .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {\n @include feature-targeting.targets($feat-animation) {\n animation-name: mdc-checkbox-fade-out-background-#{$uid};\n }\n }\n }\n }\n\n // stylelint-enable max-nesting-depth\n }\n}\n\n///\n/// Sets stroke & fill colors for both marked and unmarked state of disabled checkbox.\n/// @param {Color} $unmarked-stroke-color - The desired stroke color for the unmarked state\n/// @param {Color} $unmarked-fill-color - The desired fill color for the unmarked state\n/// @param {Color} $marked-stroke-color - The desired stroke color for the marked state\n/// @param {Color} $marked-fill-color - The desired fill color for the marked state\n///\n@mixin disabled-container-colors(\n $unmarked-stroke-color: $disabled-color,\n $unmarked-fill-color: transparent,\n $marked-stroke-color: transparent,\n $marked-fill-color: $disabled-color,\n $query: feature-targeting.all()\n) {\n @if (not custom-properties.is-custom-prop($unmarked-stroke-color)) {\n $unmarked-stroke-color: custom-properties.create(\n checkbox-custom-properties.$disabled-color,\n theme-color.prop-value($unmarked-stroke-color)\n );\n }\n\n @include if-unmarked-disabled_ {\n @include container-colors_(\n $unmarked-stroke-color,\n $unmarked-fill-color,\n $query: $query\n );\n }\n\n @if (not custom-properties.is-custom-prop($marked-fill-color)) {\n $marked-fill-color: custom-properties.create(\n checkbox-custom-properties.$disabled-color,\n theme-color.prop-value($marked-fill-color)\n );\n }\n\n @include if-marked-disabled_ {\n @include container-colors_(\n $marked-stroke-color,\n $marked-fill-color,\n $query: $query\n );\n }\n}\n\n///\n/// Sets the ink color of the checked and indeterminate icons for an enabled checkbox\n/// @param {Color} $color - The desired ink color in enabled state\n///\n@mixin ink-color($color, $query: feature-targeting.all()) {\n @if (not custom-properties.is-custom-prop($color)) {\n $color: custom-properties.create(\n checkbox-custom-properties.$ink-color,\n $color\n );\n }\n\n @include if-enabled_ {\n @include ink-color_($color, $query: $query);\n }\n}\n\n///\n/// Sets the ink color of the checked and indeterminate icons for a disabled checkbox\n/// @param {Color} $color - The desired ink color in disabled state\n///\n@mixin disabled-ink-color($color, $query: feature-targeting.all()) {\n @if (not custom-properties.is-custom-prop($color)) {\n $color: custom-properties.create(\n checkbox-custom-properties.$ink-color,\n $color\n );\n }\n\n @include if-disabled_ {\n @include ink-color_($color, $query: $query);\n }\n}\n\n/// Sets ripple color when checkbox is not in checked state.\n@mixin ripple-color(\n $color,\n $opacity-map: null,\n $query: feature-targeting.all()\n) {\n @include ripple-theme.states(\n $color: $color,\n $opacity-map: $opacity-map,\n $query: $query,\n $ripple-target: $ripple-target\n );\n}\n\n/// Sets focus indicator color when checkbox is in checked state.\n@mixin focus-indicator-color(\n $color,\n $opacity-map: null,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &.mdc-checkbox--selected {\n @include ripple-theme.states(\n $color: $color,\n $opacity-map: $opacity-map,\n $query: $query,\n $ripple-target: $ripple-target\n );\n }\n\n &.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected {\n @include ripple-theme.states-base-color(\n $color: $color,\n $query: $query,\n $ripple-target: $ripple-target\n );\n }\n}\n\n/// Sets the touch target size and appropriate margin to accommodate the\n/// touch target.\n/// @param {Number} $touch-target-size Size of touch target (Native input) in `px`.\n/// @param {Number} $ripple-size Size of ripple in `px`.\n@mixin touch-target(\n $touch-target-size,\n $ripple-size,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n $margin: calc((_touch-target-size - _ripple-size) / 2);\n $replace: (\n _touch-target-size: $touch-target-size,\n _ripple-size: $ripple-size,\n );\n\n @include feature-targeting.targets($feat-structure) {\n @include theme.property(margin, $margin, $replace: $replace);\n }\n\n $offset: calc((_ripple-size - _touch-target-size) / 2);\n\n @include feature-targeting.targets($feat-structure) {\n .mdc-checkbox__native-control {\n @include theme.property(top, $offset, $replace: $replace);\n @include theme.property(right, $offset, $replace: $replace);\n @include theme.property(left, $offset, $replace: $replace);\n @include theme.property(width, $touch-target-size);\n @include theme.property(height, $touch-target-size);\n }\n }\n}\n\n//\n// Private\n//\n\n///\n/// Helps select the checkbox background only when its native control is in\n/// enabled state.\n/// @access private\n///\n@mixin if-enabled_ {\n .mdc-checkbox__native-control:enabled ~ {\n @content;\n }\n}\n\n///\n/// Helps select the checkbox background only when its native control is in\n/// disabled state.\n/// @access private\n///\n@mixin if-disabled_ {\n .mdc-checkbox__native-control:disabled ~ {\n @content;\n }\n}\n\n///\n/// Helps select the checkbox background only when its native control is in\n/// unmarked & enabled state.\n/// @access private\n///\n@mixin if-unmarked-enabled_ {\n .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate='true'])\n ~ {\n @content;\n }\n}\n\n///\n/// Helps select the checkbox background only when its native control is in\n/// unmarked & disabled state.\n/// @access private\n///\n@mixin if-unmarked-disabled_ {\n // Note: we must use `[disabled]` instead of `:disabled` below because Edge does not always recalculate the style\n // property when the `:disabled` pseudo-class is followed by a sibling combinator. See:\n // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/11295231/\n .mdc-checkbox__native-control[disabled]:not(:checked):not(:indeterminate):not([data-indeterminate='true'])\n ~ {\n @content;\n }\n}\n\n///\n/// Helps select the checkbox background only when its native control is in\n/// marked & enabled state.\n/// @access private\n///\n@mixin if-marked-enabled_ {\n .mdc-checkbox__native-control:enabled:checked,\n .mdc-checkbox__native-control:enabled:indeterminate,\n .mdc-checkbox__native-control[data-indeterminate='true']:enabled {\n ~ {\n @content;\n }\n }\n}\n\n///\n/// Helps select the checkbox background only when its native control is in\n/// marked & disabled state.\n/// @access private\n///\n@mixin if-marked-disabled_ {\n // Note: we must use `[disabled]` instead of `:disabled` below because Edge does not always recalculate the style\n // property when the `:disabled` pseudo-class is followed by a sibling combinator. See:\n // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/11295231/\n .mdc-checkbox__native-control[disabled]:checked,\n .mdc-checkbox__native-control[disabled]:indeterminate,\n .mdc-checkbox__native-control[data-indeterminate='true'][disabled] {\n ~ {\n @content;\n }\n }\n}\n\n///\n/// Sets the stroke & fill colors for the checkbox.\n/// This mixin should be wrapped in a mixin that qualifies state such as\n/// `mdc-checkbox-if-unmarked-enabled_`.\n/// @access private\n///\n@mixin container-colors_(\n $stroke-color,\n $fill-color,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-checkbox__background {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-color, $stroke-color);\n @include theme.property(background-color, $fill-color);\n }\n }\n}\n\n///\n/// Sets the ink color of the checked and indeterminate icons for a checkbox.\n/// This mixin should be wrapped in a mixin that qualifies state such as\n/// `mdc-checkbox-if-unmarked_`.\n/// @access private\n///\n@mixin ink-color_($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-checkbox__background {\n .mdc-checkbox__checkmark {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n\n .mdc-checkbox__mixedmark {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-color, $color);\n }\n }\n }\n}\n\n@mixin container-keyframes_(\n $from-stroke-color,\n $to-stroke-color,\n $from-fill-color,\n $to-fill-color,\n $uid\n) {\n @keyframes mdc-checkbox-fade-in-background-#{$uid} {\n 0% {\n @include theme.property(border-color, $from-stroke-color);\n @include theme.property(background-color, $from-fill-color);\n }\n\n 50% {\n @include theme.property(border-color, $to-stroke-color);\n @include theme.property(background-color, $to-fill-color);\n }\n }\n\n @keyframes mdc-checkbox-fade-out-background-#{$uid} {\n 0%,\n 80% {\n @include theme.property(border-color, $to-stroke-color);\n @include theme.property(background-color, $to-fill-color);\n }\n\n 100% {\n @include theme.property(border-color, $from-stroke-color);\n @include theme.property(background-color, $from-fill-color);\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/rtl/mixins' as rtl;\n@use '@material/theme/theme';\n@use '@material/touch-target/mixins' as touch;\n@use './variables';\n\n$ripple-target: '.mdc-chip-trailing-action__ripple';\n\n@mixin core-styles($query: feature-targeting.all()) {\n @include without-ripple($query: $query);\n @include ripple($query: $query);\n}\n\n@mixin without-ripple($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-color: feature-targeting.create-target($query, color);\n\n @include touch.wrapper($query); // COPYBARA_COMMENT_THIS_LINE\n @include _touch-target-base($query);\n\n .mdc-chip-trailing-action {\n @include size(variables.$size, $query);\n @include color(variables.$color, $query);\n @include touch-target-width(variables.$touch-target-width, $query);\n\n @include feature-targeting.targets($feat-structure) {\n border: none;\n display: inline-flex;\n position: relative;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n padding: 0;\n outline: none;\n cursor: pointer;\n -webkit-appearance: none;\n }\n\n @include feature-targeting.targets($feat-color) {\n background: none;\n }\n\n // Nested to increase specificity, ensuring SVG and font icon\n // color is affected regardless of load order without needing\n // !important or HTML tag targetting.\n .mdc-chip-trailing-action__icon {\n @include feature-targeting.targets($feat-color) {\n fill: currentColor;\n color: inherit;\n }\n }\n }\n}\n\n@mixin ripple($query: feature-targeting.all()) {\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-chip-trailing-action {\n @include ripple.surface($query: $query, $ripple-target: $ripple-target);\n @include ripple.radius-unbounded(\n $query: $query,\n $ripple-target: $ripple-target\n );\n @include ripple-theme.states(\n variables.$ripple-color,\n $query: $query,\n $ripple-target: $ripple-target\n );\n\n #{$ripple-target} {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n // Ripple needs content-box as the box sizing and box-sizing: border-box\n // is often set as a default, so we override that here.\n box-sizing: content-box;\n width: 100%;\n height: 100%;\n overflow: hidden;\n }\n }\n }\n}\n\n/// Set the color of the trailing action\n/// @param {Color} $color The trailing action color\n@mixin color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-chip-trailing-action {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n\n/// Set the size of the trailing action\n/// @param {Number} $number The size of the trailing action\n@mixin size($size, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-chip-trailing-action__icon {\n @include feature-targeting.targets($feat-structure) {\n height: $size;\n width: $size;\n font-size: $size;\n }\n }\n}\n\n/// Set the horizontal spacing of the trailing action\n/// @param {Number} $left The left spacing\n/// @param {Number} $right The right spacing\n@mixin horizontal-spacing($left, $right, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-chip-trailing-action {\n @include feature-targeting.targets($feat-structure) {\n @include rtl.reflexive-property(margin, $left, $right);\n }\n }\n}\n\n/// Set the width of the touch target\n/// @param {Number} $width The width of the touch target\n@mixin touch-target-width($width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-chip-trailing-action__touch {\n @include feature-targeting.targets($feat-structure) {\n width: $width;\n }\n }\n}\n\n/// Private mixins\n\n@mixin _touch-target-base($query: feature-targeting.all()) {\n .mdc-chip-trailing-action__touch {\n @include touch.touch-target($set-width: true, $query: $query);\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n$size: 18px !default;\n$margin-right: -4px !default;\n$margin-left: 4px !default;\n$touch-target-width: 26px !default;\n$color: on-surface !default;\n$ripple-color: on-surface !default;\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:math';\n@use '@material/animation/functions';\n@use '@material/animation/variables' as animation-variables;\n@use '@material/checkbox/functions' as checkbox-functions;\n@use '@material/checkbox/variables' as checkbox-variables;\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/density/functions' as density-functions;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/theme/theme';\n@use '@material/touch-target/mixins' as touch-target-mixins;\n@use '@material/typography/typography';\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/shape/functions' as shape-functions;\n@use './variables';\n@use '@material/elevation/functions' as elevation-functions;\n@use '@material/theme/theme-color';\n@use './trailingaction/mixins' as trailing-action-mixins;\n\n$ripple-target: '.mdc-chip__ripple';\n\n@mixin core-styles($query: feature-targeting.all()) {\n @include without-ripple($query: $query);\n @include ripple($query: $query);\n}\n\n@mixin without-ripple($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include leading-icon-color(variables.$icon-color, $query: $query);\n @include trailing-icon-color(variables.$icon-color, $query: $query);\n @include leading-icon-size(variables.$leading-icon-size, $query: $query);\n @include trailing-icon-size(variables.$trailing-icon-size, $query: $query);\n @include trailing-icon-margin($query: $query);\n @include touch-target-mixins.wrapper($query); // COPYBARA_COMMENT_THIS_LINE\n // prettier-ignore\n @include elevation-mixins.overlay-common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-chip {\n @include shape-radius(variables.$shape-radius, $query: $query);\n @include fill-color(variables.$fill-color-default, $query: $query);\n @include ink-color-without-ripple_(\n variables.$ink-color-default,\n $query: $query\n );\n @include typography.typography(body2, $query: $query);\n @include density($density-scale: 0, $query: $query);\n @include leading-icon-margin($query: $query);\n @include elevation-mixins.overlay-surface-position($query: $query);\n @include elevation-mixins.overlay-dimensions(100%, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n // position: relative; already set in mdc-elevation-overlay-surface-position\n align-items: center;\n box-sizing: border-box;\n padding: 0 variables.$horizontal-padding;\n border-width: 0;\n outline: none;\n cursor: pointer;\n -webkit-appearance: none;\n\n &::-moz-focus-inner {\n padding: 0;\n border: 0;\n }\n }\n\n &:hover {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, on-surface);\n }\n }\n\n .mdc-chip__touch {\n @include touch-target-mixins.touch-target($query: $query);\n }\n }\n\n .mdc-chip--exit {\n @include feature-targeting.targets($feat-color) {\n transition: variables.$exit-transition;\n }\n\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n }\n\n .mdc-chip__overflow {\n @include feature-targeting.targets($feat-structure) {\n text-overflow: ellipsis;\n overflow: hidden;\n }\n }\n\n .mdc-chip__text {\n @include feature-targeting.targets($feat-structure) {\n white-space: nowrap;\n }\n }\n\n .mdc-chip__icon {\n @include feature-targeting.targets($feat-structure) {\n border-radius: 50%;\n outline: none;\n vertical-align: middle;\n }\n }\n\n .mdc-chip__checkmark {\n @include feature-targeting.targets($feat-structure) {\n height: variables.$leading-icon-size;\n }\n }\n\n .mdc-chip__checkmark-path {\n @include feature-targeting.targets($feat-animation) {\n transition: checkbox-functions.transition-exit(\n stroke-dashoffset,\n variables.$checkmark-animation-delay,\n variables.$checkmark-animation-duration\n );\n }\n\n @include feature-targeting.targets($feat-structure) {\n stroke-width: 2px;\n stroke-dashoffset: checkbox-variables.$mark-path-length_;\n stroke-dasharray: checkbox-variables.$mark-path-length_;\n }\n }\n\n .mdc-chip__primary-action:focus {\n @include feature-targeting.targets($feat-structure) {\n outline: none;\n }\n }\n\n .mdc-chip--selected .mdc-chip__checkmark-path {\n @include feature-targeting.targets($feat-structure) {\n stroke-dashoffset: 0;\n }\n }\n\n .mdc-chip__icon--leading,\n .mdc-chip__icon--trailing {\n @include feature-targeting.targets($feat-structure) {\n // Make these positioned elements, such that they're stacked above the\n // touch target element (`mdc-chip__touch`), so that clicks reach the\n // icons (e.g. for removable input chips).\n position: relative;\n }\n }\n\n // Change color of selected choice chips\n\n .mdc-chip-set--choice {\n .mdc-chip {\n @include selected-ink-color-without-ripple_(primary, $query: $query);\n }\n\n .mdc-chip--selected {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, surface);\n }\n }\n }\n\n // Add leading checkmark to filter chips with no leading icon\n\n .mdc-chip__checkmark-svg {\n @include feature-targeting.targets($feat-structure) {\n width: 0;\n height: variables.$leading-icon-size;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: width variables.$width-animation-duration\n animation-variables.$standard-curve-timing-function;\n }\n }\n\n .mdc-chip--selected .mdc-chip__checkmark-svg {\n @include feature-targeting.targets($feat-structure) {\n width: variables.$leading-icon-size;\n }\n }\n\n // Add leading checkmark to filter chips with a leading icon\n\n .mdc-chip-set--filter {\n .mdc-chip__icon--leading {\n @include feature-targeting.targets($feat-animation) {\n transition: opacity variables.$opacity-animation-duration linear;\n transition-delay: variables.$leading-icon-delay;\n }\n\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n\n + .mdc-chip__checkmark {\n @include feature-targeting.targets($feat-animation) {\n transition: opacity variables.$opacity-animation-duration linear;\n\n // Delay the checkmark transition.\n transition-delay: variables.$checkmark-with-leading-icon-delay;\n }\n\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n\n .mdc-chip__checkmark-svg {\n // stylelint-disable max-nesting-depth\n\n @include feature-targeting.targets($feat-animation) {\n transition: width 0ms;\n }\n\n // stylelint-enable max-nesting-depth\n }\n }\n }\n\n .mdc-chip--selected .mdc-chip__icon--leading {\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n\n + .mdc-chip__checkmark {\n @include feature-targeting.targets($feat-structure) {\n // This ensures that the checkmark has zero width while the leading icon is still animating.\n width: 0;\n opacity: 1;\n }\n }\n }\n\n .mdc-chip__icon--leading-hidden.mdc-chip__icon--leading {\n @include feature-targeting.targets($feat-structure) {\n width: 0;\n }\n\n @include feature-targeting.targets($feat-structure) {\n // This ensures that the leading icon doesn't fade in while the checkmark is fading out.\n opacity: 0;\n }\n\n + .mdc-chip__checkmark {\n @include feature-targeting.targets($feat-structure) {\n width: variables.$leading-icon-size;\n }\n }\n }\n }\n}\n\n@mixin ripple($query: feature-targeting.all()) {\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-chip {\n @include ripple.surface($query: $query, $ripple-target: $ripple-target);\n @include ripple.radius-bounded(\n $query: $query,\n $ripple-target: $ripple-target\n );\n @include ink-color-ripple_(variables.$ink-color-default, $query: $query);\n\n #{$ripple-target} {\n @include ripple.target-common($query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n overflow: hidden;\n }\n }\n }\n\n .mdc-chip-set--choice {\n .mdc-chip {\n @include selected-ink-color-ripple_(primary, $query: $query);\n }\n }\n}\n\n@mixin set-core-styles($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-animation) {\n @keyframes mdc-chip-entry {\n from {\n transform: scale(0.8);\n opacity: 0.4;\n }\n\n to {\n transform: scale(1);\n opacity: 1;\n }\n }\n }\n\n .mdc-chip-set {\n @include set-spacing(8px, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n flex-wrap: wrap;\n box-sizing: border-box;\n }\n }\n\n .mdc-chip-set--input .mdc-chip {\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-chip-entry 100ms\n animation-variables.$deceleration-curve-timing-function;\n }\n }\n}\n\n@mixin shape-radius(\n $radius,\n $rtl-reflexive: false,\n $density-scale: variables.$density-scale,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include shape-mixins.radius(\n $radius,\n $rtl-reflexive,\n $component-height: $height,\n $query: $query\n );\n\n #{$ripple-target} {\n @include shape-mixins.radius(\n $radius,\n $rtl-reflexive,\n $component-height: $height,\n $query: $query\n );\n }\n}\n\n@mixin fill-color-accessible($color, $query: feature-targeting.all()) {\n $fill-tone: theme-color.tone($color);\n\n @include fill-color($color, $query: $query);\n\n @if ($fill-tone == 'dark') {\n @include ink-color(text-primary-on-dark, $query: $query);\n @include selected-ink-color(text-primary-on-dark, $query: $query);\n @include leading-icon-color(text-primary-on-dark, $query: $query);\n @include trailing-icon-color(text-primary-on-dark, $query: $query);\n } @else {\n @include ink-color(text-primary-on-light, $query: $query);\n @include selected-ink-color(text-primary-on-light, $query: $query);\n @include leading-icon-color(text-primary-on-light, $query: $query);\n @include trailing-icon-color(text-primary-on-light, $query: $query);\n }\n}\n\n@mixin fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n}\n\n@mixin ink-color($color, $query: feature-targeting.all()) {\n @include ink-color-ripple_($color, $query: $query);\n @include ink-color-without-ripple_($color, $query: $query);\n}\n\n@mixin ink-color-without-ripple_($color, $query) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n\n &:hover {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n\n@mixin ink-color-ripple_($color, $query) {\n @include ripple-theme.states(\n $color,\n true,\n $query: $query,\n $ripple-target: $ripple-target\n );\n}\n\n@mixin selected-ink-color($color, $query: feature-targeting.all()) {\n @include selected-ink-color-ripple_($color, $query: $query);\n @include selected-ink-color-without-ripple_($color, $query: $query);\n}\n\n@mixin selected-ink-color-without-ripple_($color, $query) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &.mdc-chip--selected {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n\n @include leading-icon-color($color, $query: $query);\n\n &:hover {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n }\n\n .mdc-chip__checkmark-path {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(stroke, $color);\n }\n }\n}\n\n@mixin selected-ink-color-ripple_($color, $query) {\n &.mdc-chip {\n @include ripple-theme.states-selected(\n $color,\n $has-nested-focusable-element: true,\n $query: $query,\n $ripple-target: $ripple-target\n );\n }\n}\n\n@mixin outline(\n $width: 1px,\n $style: solid,\n $color: theme-color.prop-value(on-surface),\n $query: feature-targeting.all()\n) {\n @include outline-width($width, $query: $query);\n @include outline-style($style, $query: $query);\n @include outline-color($color, $query: $query);\n}\n\n@mixin outline-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-color, $color);\n }\n}\n\n@mixin outline-style($style, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n border-style: $style;\n }\n}\n\n@mixin outline-width(\n $width,\n $horizontal-padding: variables.$horizontal-padding,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // Note: Adjust padding to maintain consistent width with non-outlined chips\n $horizontal-padding-value: math.max($horizontal-padding - $width, 0);\n\n @include feature-targeting.targets($feat-structure) {\n padding-right: $horizontal-padding-value;\n padding-left: $horizontal-padding-value;\n border-width: $width;\n }\n\n #{$ripple-target} {\n @include feature-targeting.targets($feat-structure) {\n top: -$width;\n left: -$width;\n border: $width solid transparent;\n }\n }\n}\n\n@mixin horizontal-padding($padding, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n padding-right: $padding;\n padding-left: $padding;\n }\n}\n\n@mixin height($height, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n}\n\n@mixin set-spacing($gap-size, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n padding: $gap-size / 2;\n }\n\n .mdc-chip {\n @include feature-targeting.targets($feat-structure) {\n margin: $gap-size / 2;\n }\n }\n\n .mdc-chip--touch {\n @include touch-target-mixins.margin(\n $component-height: variables.$height,\n $query: $query\n );\n }\n}\n\n@mixin leading-icon-color(\n $color,\n $opacity: variables.$icon-opacity,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-chip__icon--leading {\n @include feature-targeting.targets($feat-color) {\n color: rgba(theme-color.prop-value($color), $opacity);\n }\n }\n}\n\n@mixin trailing-icon-color(\n $color,\n $opacity: variables.$icon-opacity,\n $hover-opacity: variables.$trailing-icon-hover-opacity,\n $focus-opacity: variables.$trailing-icon-focus-opacity,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include trailing-action-mixins.color($color, $query: $query);\n\n // TODO(b/151980552): Remove the following block\n .mdc-chip__icon--trailing {\n @include feature-targeting.targets($feat-color) {\n color: rgba(theme-color.prop-value($color), $opacity);\n }\n\n &:hover {\n @include feature-targeting.targets($feat-color) {\n color: rgba(theme-color.prop-value($color), $hover-opacity);\n }\n }\n\n &:focus {\n @include feature-targeting.targets($feat-color) {\n color: rgba(theme-color.prop-value($color), $focus-opacity);\n }\n }\n }\n}\n\n// For customizing icon size, we need to increase specifity to ensure\n// overrides apply. Styles defined in the .material-icons CSS class are\n// loaded separately, so the order of CSS definitions is not guaranteed.\n\n@mixin leading-icon-size($size, $query: feature-targeting.all()) {\n .mdc-chip__icon.mdc-chip__icon--leading:not(.mdc-chip__icon--leading-hidden) {\n @include icon-size_($size, $query: $query);\n }\n}\n\n@mixin trailing-icon-size($size, $query: feature-targeting.all()) {\n @include trailing-action-mixins.size($size, $query: $query);\n\n // TODO(b/151980552): Remove the following block\n .mdc-chip__icon.mdc-chip__icon--trailing {\n @include icon-size_($size, $query: $query);\n }\n}\n\n@mixin icon-size_($size, $query) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n width: $size;\n height: $size;\n font-size: $size;\n }\n}\n\n@mixin leading-icon-margin(\n $left-margin: variables.$leading-icon-margin-left,\n $right-margin: variables.$leading-icon-margin-right,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n &.mdc-chip--selected .mdc-chip__checkmark,\n .mdc-chip__icon--leading:not(.mdc-chip__icon--leading-hidden) {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n margin,\n $left-margin,\n $right-margin\n );\n }\n }\n}\n\n@mixin trailing-icon-margin(\n $left-margin: variables.$trailing-icon-margin-left,\n $right-margin: variables.$trailing-icon-margin-right,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include trailing-action-mixins.horizontal-spacing(\n $left-margin,\n $right-margin,\n $query: $query\n );\n\n // TODO(b/151980552): Remove the following block\n .mdc-chip__icon--trailing {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n margin,\n $left-margin,\n $right-margin\n );\n }\n }\n}\n\n@mixin elevation-transition($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include feature-targeting.targets($feat-animation) {\n transition: elevation-functions.transition-value();\n }\n\n &.mdc-chip--exit {\n @include feature-targeting.targets($feat-animation) {\n transition: elevation-functions.transition-value(),\n variables.$exit-transition;\n }\n }\n}\n\n///\n/// Sets the density scale for chips.\n///\n/// @param {Number | String} $density-scale - Density scale value for component.\n/// Supported density scale values are `-2`, `-1`, `0`.\n///\n@mixin density($density-scale, $query: feature-targeting.all()) {\n $height: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include height($height, $query: $query);\n\n @if $density-scale != 0 {\n @include touch-target-reset_($query: $query);\n }\n}\n\n///\n/// Resets touch target-related styles. This is called from the density mixin to\n/// automatically remove the increased touch target, since dense components\n/// don't have the same default a11y requirements.\n/// @access private\n///\n@mixin touch-target-reset_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // Selector is necessary here to override original specificity.\n &.mdc-chip--touch {\n @include feature-targeting.targets($feat-structure) {\n margin-top: 0;\n margin-bottom: 0;\n }\n }\n\n .mdc-chip__touch {\n @include feature-targeting.targets($feat-structure) {\n display: none;\n }\n }\n}\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use 'sass:color';\n@use '@material/animation/variables' as animation-variables;\n@use '@material/density/variables' as density-variables;\n@use '@material/theme/theme-color';\n\n$fill-color-default: color.mix(\n theme-color.prop-value(on-surface),\n theme-color.prop-value(surface),\n 12%\n) !default;\n$ink-color-default: rgba(theme-color.prop-value(on-surface), 0.87) !default;\n$horizontal-padding: 12px !default;\n$height: 32px !default;\n$shape-radius: 50% !default;\n\n$minimum-height: 24px !default;\n$maximum-height: $height !default;\n$density-scale: density-variables.$default-scale !default;\n$density-config: (\n height: (\n default: $height,\n maximum: $maximum-height,\n minimum: $minimum-height,\n ),\n) !default;\n\n$icon-color: theme-color.prop-value(on-surface) !default;\n$icon-opacity: 0.54 !default;\n$trailing-icon-hover-opacity: 0.62 !default;\n$trailing-icon-focus-opacity: 0.87 !default;\n$leading-icon-size: 20px !default;\n$trailing-icon-size: 18px !default;\n// Speed up delay to bridge gap between leading icon and checkmark transition.\n$leading-icon-delay: -50ms !default;\n$checkmark-with-leading-icon-delay: 80ms !default;\n\n$checkmark-animation-delay: 50ms !default;\n$checkmark-animation-duration: 150ms !default;\n$width-animation-duration: 150ms !default;\n$opacity-animation-duration: 75ms !default;\n\n$leading-icon-margin-right: 4px !default;\n$leading-icon-margin-left: -4px !default;\n\n$trailing-icon-margin-right: -4px !default;\n$trailing-icon-margin-left: 4px !default;\n\n$exit-transition: opacity 75ms\n animation-variables.$standard-curve-timing-function,\n width 150ms animation-variables.$deceleration-curve-timing-function,\n padding 100ms linear, margin 100ms linear !default;\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/animation/functions' as animation-functions;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/theme';\n@use './variables';\n@use './keyframes';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include color(variables.$color, $query);\n @include track-color(variables.$track-color, $query: $query);\n\n @include feature-targeting.targets($feat-animation) {\n @include keyframes.container-rotate-keyframes_;\n @include keyframes.spinner-layer-rotate-keyframes_;\n @include keyframes.color-1-fade-in-out-keyframes_;\n @include keyframes.color-2-fade-in-out-keyframes_;\n @include keyframes.color-3-fade-in-out-keyframes_;\n @include keyframes.color-4-fade-in-out-keyframes_;\n @include keyframes.left-spin-keyframes_;\n @include keyframes.right-spin-keyframes_;\n }\n\n .mdc-circular-progress {\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n position: relative;\n /* @noflip */\n direction: ltr;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: animation-functions.exit-temporary(opacity, 250ms);\n }\n }\n\n .mdc-circular-progress__determinate-container,\n .mdc-circular-progress__indeterminate-circle-graphic,\n .mdc-circular-progress__indeterminate-container,\n .mdc-circular-progress__spinner-layer {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n width: 100%;\n height: 100%;\n }\n }\n\n .mdc-circular-progress__determinate-container {\n @include feature-targeting.targets($feat-structure) {\n transform: rotate(-90deg);\n }\n }\n\n .mdc-circular-progress__indeterminate-container {\n @include feature-targeting.targets($feat-structure) {\n // Font size, letter spacing and nowrap are required in order to ignore\n // whitespaces between HTML elements.\n font-size: 0;\n letter-spacing: 0;\n white-space: nowrap;\n opacity: 0;\n }\n }\n\n .mdc-circular-progress__determinate-circle-graphic,\n .mdc-circular-progress__indeterminate-circle-graphic {\n @include feature-targeting.targets($feat-structure) {\n fill: transparent;\n }\n }\n\n .mdc-circular-progress__determinate-circle {\n @include feature-targeting.targets($feat-animation) {\n transition: animation-functions.enter(stroke-dashoffset, 500ms);\n }\n }\n\n .mdc-circular-progress__gap-patch {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n top: 0;\n /* @noflip */\n left: 47.5%;\n box-sizing: border-box;\n width: 5%;\n height: 100%;\n overflow: hidden;\n }\n\n .mdc-circular-progress__indeterminate-circle-graphic {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n left: -900%;\n width: 2000%;\n transform: rotate(180deg);\n }\n }\n }\n\n .mdc-circular-progress__circle-clipper {\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n position: relative;\n width: 50%;\n height: 100%;\n overflow: hidden;\n }\n\n .mdc-circular-progress__indeterminate-circle-graphic {\n @include feature-targeting.targets($feat-structure) {\n width: 200%;\n }\n }\n }\n\n .mdc-circular-progress__circle-right {\n .mdc-circular-progress__indeterminate-circle-graphic {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n left: -100%;\n }\n }\n }\n\n .mdc-circular-progress--indeterminate {\n .mdc-circular-progress__determinate-container {\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n }\n\n .mdc-circular-progress__indeterminate-container {\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n }\n\n @include indeterminate-active-animations_($query);\n }\n\n .mdc-circular-progress--closed {\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n }\n}\n\n// Public mixins\n\n/// Customizes the stroke-color of the indicator. Applies to the\n/// determinate variant, and also the indeterminate variant unless the\n/// four-color mixin is applied.\n/// @param {Color} $color - The desired stroke color.\n/// @see {mixin} indeterminate-colors\n@mixin color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-circular-progress__determinate-circle,\n .mdc-circular-progress__indeterminate-circle-graphic {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(stroke, $color);\n }\n }\n}\n\n/// Customizes the track color of the indicator. Applies to the\n/// determinate variant only.\n/// @param {Color} $color - The desired track color.\n@mixin track-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-circular-progress__determinate-track {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(stroke, $color);\n }\n }\n}\n\n/// Applies four animated stroke-colors to the indeterminate indicator.\n/// Applicable to the indeterminate variant only and overrides any single color\n/// currently set.\n/// @param {List} $colors - A list of four desired colors.\n/// @see {mixin} color\n@mixin indeterminate-colors($colors, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if length($colors) != 4 {\n @error \"`mdc-circular-progress-colors` accepts exactly 4 colors\";\n }\n\n @for $i from 1 through 4 {\n .mdc-circular-progress__color-#{$i}\n .mdc-circular-progress__indeterminate-circle-graphic {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(stroke, nth($colors, $i));\n }\n }\n }\n}\n\n// Private mixins\n\n/// Sets the animations for the indicator in indeterminate mode.\n/// @access private\n@mixin indeterminate-active-animations_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n\n .mdc-circular-progress__indeterminate-container {\n @include feature-targeting.targets($feat-animation) {\n $duration: 360deg * variables.$arc-time /\n (variables.$arc-start-rotation-interval + (360 - variables.$arc-size));\n\n animation: mdc-circular-progress-container-rotate $duration linear\n infinite;\n }\n }\n\n $spinner-rotate-animation: mdc-circular-progress-spinner-layer-rotate 4 *\n variables.$arc-time variables.$timing-function infinite both;\n\n .mdc-circular-progress__spinner-layer {\n @include feature-targeting.targets($feat-animation) {\n animation: $spinner-rotate-animation;\n }\n }\n\n @for $i from 1 through 4 {\n $color-fade-in-out-animation: mdc-circular-progress-color-#{$i}-fade-in-out\n 4 *\n variables.$arc-time\n variables.$timing-function\n infinite\n both;\n\n .mdc-circular-progress__color-#{$i} {\n @include feature-targeting.targets($feat-animation) {\n animation: $spinner-rotate-animation, $color-fade-in-out-animation;\n }\n }\n }\n\n .mdc-circular-progress__circle-left\n .mdc-circular-progress__indeterminate-circle-graphic {\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-circular-progress-left-spin variables.$arc-time\n variables.$timing-function infinite both;\n }\n }\n\n .mdc-circular-progress__circle-right\n .mdc-circular-progress__indeterminate-circle-graphic {\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-circular-progress-right-spin variables.$arc-time\n variables.$timing-function infinite both;\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use './variables';\n\n/// Keyframes for the persistent rotation of the outermost container\n/// @access private\n@mixin container-rotate-keyframes_ {\n @keyframes mdc-circular-progress-container-rotate {\n to {\n transform: rotate(360deg);\n }\n }\n}\n\n/// Keyframes for the rotation of the spinner layer\n/// @access private\n@mixin spinner-layer-rotate-keyframes_ {\n @keyframes mdc-circular-progress-spinner-layer-rotate {\n @for $i from 1 through 8 {\n #{$i * 12.5}% {\n transform: rotate($i * 0.5 * variables.$arc-size);\n }\n }\n }\n}\n\n/// Keyframes for the fade-in and fade-out of the first color.\n/// .99 opacity is used to force subpixel rendering.\n/// @access private\n@mixin color-1-fade-in-out-keyframes_ {\n @keyframes mdc-circular-progress-color-1-fade-in-out {\n from {\n opacity: 0.99;\n }\n 25% {\n opacity: 0.99;\n }\n 26% {\n opacity: 0;\n }\n 89% {\n opacity: 0;\n }\n 90% {\n opacity: 0.99;\n }\n to {\n opacity: 0.99;\n }\n }\n}\n\n/// Keyframes for the fade-in and fade-out of the second color.\n/// .99 opacity is used to force subpixel rendering.\n/// @access private\n@mixin color-2-fade-in-out-keyframes_ {\n @keyframes mdc-circular-progress-color-2-fade-in-out {\n from {\n opacity: 0;\n }\n 15% {\n opacity: 0;\n }\n 25% {\n opacity: 0.99;\n }\n 50% {\n opacity: 0.99;\n }\n 51% {\n opacity: 0;\n }\n to {\n opacity: 0;\n }\n }\n}\n\n/// Keyframes for the fade-in and fade-out of the third color.\n/// .99 opacity is used to force subpixel rendering.\n/// @access private\n@mixin color-3-fade-in-out-keyframes_ {\n @keyframes mdc-circular-progress-color-3-fade-in-out {\n from {\n opacity: 0;\n }\n 40% {\n opacity: 0;\n }\n 50% {\n opacity: 0.99;\n }\n 75% {\n opacity: 0.99;\n }\n 76% {\n opacity: 0;\n }\n to {\n opacity: 0;\n }\n }\n}\n\n/// Keyframes for the fade-in and fade-out of the fourth color.\n/// .99 opacity is used to force subpixel rendering.\n/// @access private\n@mixin color-4-fade-in-out-keyframes_ {\n @keyframes mdc-circular-progress-color-4-fade-in-out {\n from {\n opacity: 0;\n }\n 65% {\n opacity: 0;\n }\n 75% {\n opacity: 0.99;\n }\n 90% {\n opacity: 0.99;\n }\n to {\n opacity: 0;\n }\n }\n}\n\n/// Keyframes for the expansion and contraction of the arc for the\n/// left semi-circle.\n/// @access private\n@mixin left-spin-keyframes_ {\n @keyframes mdc-circular-progress-left-spin {\n from {\n transform: rotate(265deg);\n }\n 50% {\n transform: rotate(130deg);\n }\n to {\n transform: rotate(265deg);\n }\n }\n}\n\n/// Keyframes for the expansion and contraction of the arc for the\n/// right semi-circle.\n/// @access private\n@mixin right-spin-keyframes_ {\n @keyframes mdc-circular-progress-right-spin {\n from {\n transform: rotate(-265deg);\n }\n 50% {\n transform: rotate(-130deg);\n }\n to {\n transform: rotate(-265deg);\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/theme/theme-color';\n@use '@material/theme/theme';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/animation/variables' as animation-variables;\n@use '@material/typography/typography';\n@use './variables';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n // postcss-bem-linter: define floating-label\n .mdc-floating-label {\n @include typography.typography(\n subtitle1,\n $exclude-props: (line-height),\n $query: $query\n );\n\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n /* @noflip */\n left: 0;\n /* @noflip */\n transform-origin: left top;\n line-height: 1.15rem;\n text-align: left;\n text-overflow: ellipsis;\n white-space: nowrap;\n cursor: text;\n overflow: hidden;\n\n /* @alternate */\n // Force the label into its own layer to prevent visible layer promotion adjustments\n // when the ripple is activated behind it.\n will-change: transform;\n\n @include rtl-mixins.rtl {\n /* @noflip */\n right: 0;\n /* @noflip */\n left: auto;\n /* @noflip */\n transform-origin: right top;\n /* @noflip */\n text-align: right;\n }\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: transform variables.$transition-duration\n animation-variables.$standard-curve-timing-function,\n color variables.$transition-duration\n animation-variables.$standard-curve-timing-function;\n }\n }\n\n .mdc-floating-label--float-above {\n @include feature-targeting.targets($feat-structure) {\n cursor: auto;\n }\n }\n\n .mdc-floating-label--required {\n &::after {\n @include _required-content($query);\n }\n\n @include rtl-mixins.rtl {\n &::after {\n @include _required-content-rtl($query);\n }\n }\n }\n\n @at-root {\n @include float-position(variables.$position-y, $query: $query);\n @include shake-animation(standard, $query: $query);\n }\n\n @include shake-keyframes(standard, variables.$position-y, $query: $query);\n}\n\n@mixin ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n}\n\n// Used for textarea in case of scrolling\n@mixin fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n}\n\n@mixin shake-keyframes(\n $modifier,\n $positionY,\n $positionX: 0%,\n $scale: variables.$float-scale,\n $query: feature-targeting.all()\n) {\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include feature-targeting.targets($feat-animation) {\n @keyframes mdc-floating-label-shake-float-above-#{$modifier} {\n 0% {\n transform: translateX(calc(0 - #{$positionX}))\n translateY(-#{$positionY}) scale(#{$scale});\n }\n\n 33% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(calc(4% - #{$positionX}))\n translateY(-#{$positionY}) scale(#{$scale});\n }\n\n 66% {\n animation-timing-function: cubic-bezier(\n 0.302435,\n 0.381352,\n 0.55,\n 0.956352\n );\n transform: translateX(calc(-4% - #{$positionX}))\n translateY(-#{$positionY}) scale(#{$scale});\n }\n\n 100% {\n transform: translateX(calc(0 - #{$positionX}))\n translateY(-#{$positionY}) scale(#{$scale});\n }\n }\n }\n}\n\n@mixin float-position(\n $positionY,\n $positionX: 0%,\n $scale: variables.$float-scale,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-floating-label--float-above {\n @include feature-targeting.targets($feat-structure) {\n @if $positionX > 0 or $positionX < 0 {\n transform: translateY(-1 * $positionY)\n translateX(-1 * $positionX)\n scale($scale);\n\n @include rtl-mixins.rtl {\n transform: translateY(-1 * $positionY) translateX($positionX)\n scale($scale);\n }\n } @else {\n transform: translateY(-1 * $positionY) scale($scale);\n }\n }\n }\n}\n\n@mixin shake-animation($modifier, $query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n\n .mdc-floating-label--shake {\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-floating-label-shake-float-above-#{$modifier} 250ms 1;\n }\n }\n}\n\n@mixin max-width($max-width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n max-width: $max-width;\n }\n}\n\n///\n/// Sets the CSS transition for the floating animation.\n///\n/// @param {Number} $duration-ms - Duration (in ms) of the animation.\n/// @param {String} $timing-function - Optionally overrides the default animation timing function.\n///\n@mixin float-transition(\n $duration-ms,\n $timing-function: animation-variables.$standard-curve-timing-function,\n $query: feature-targeting.all()\n) {\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include feature-targeting.targets($feat-animation) {\n transition: color $duration-ms $timing-function,\n transform $duration-ms $timing-function;\n }\n}\n\n@mixin _required-content($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n margin-left: 1px;\n /* @noflip */\n margin-right: 0px;\n content: '*';\n }\n}\n\n// Need to specify LTR/RTL manually since rtl mixins will add ::after[dir=rtl]\n// selector and that breaks some browsers\n@mixin _required-content-rtl($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n margin-left: 0;\n /* @noflip */\n margin-right: 1px;\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/theme';\n@use './functions';\n\n// Public\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n // postcss-bem-linter: define line-ripple\n .mdc-line-ripple {\n @include feature-targeting.targets($feat-structure) {\n &::before,\n &::after {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n border-bottom-style: solid;\n content: '';\n }\n\n &::before {\n border-bottom-width: 1px;\n z-index: 1;\n }\n\n &::after {\n transform: scaleX(0);\n border-bottom-width: 2px;\n opacity: 0;\n z-index: 2;\n }\n }\n\n @include feature-targeting.targets($feat-animation) {\n &::after {\n transition: functions.transition-value(transform),\n functions.transition-value(opacity);\n }\n }\n }\n\n .mdc-line-ripple--active::after {\n @include feature-targeting.targets($feat-structure) {\n transform: scaleX(1);\n opacity: 1;\n }\n }\n\n .mdc-line-ripple--deactivating::after {\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n }\n}\n\n@mixin active-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n &::after {\n @include theme.property(border-bottom-color, $color);\n }\n }\n}\n\n@mixin inactive-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n &::before {\n @include theme.property(border-bottom-color, $color);\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:list';\n@use '@material/theme/custom-properties';\n@use '@material/theme/theme';\n@use '@material/shape/functions' as shape-functions;\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/floating-label/mixins' as floating-label-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use './variables';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-notched-outline {\n @include base_($query);\n\n &__leading,\n &__notch,\n &__trailing {\n @include feature-targeting.targets($feat-structure) {\n box-sizing: border-box;\n height: 100%;\n border-top: variables.$border-width solid;\n border-bottom: variables.$border-width solid;\n pointer-events: none;\n }\n }\n\n &__leading {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n border,\n variables.$border-width solid,\n none\n );\n\n width: variables.$leading-width;\n }\n }\n\n &__trailing {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n border,\n none,\n variables.$border-width solid\n );\n\n flex-grow: 1;\n }\n }\n\n &__notch {\n @include feature-targeting.targets($feat-structure) {\n flex: 0 0 auto;\n width: auto;\n max-width: calc(100% - #{variables.$leading-width} * 2);\n }\n }\n\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n position: relative;\n max-width: 100%;\n }\n }\n\n .mdc-floating-label--float-above {\n @include feature-targeting.targets($feat-structure) {\n text-overflow: clip;\n }\n }\n\n &--upgraded .mdc-floating-label--float-above {\n @include feature-targeting.targets($feat-structure) {\n max-width: calc(100% / 0.75);\n }\n }\n }\n\n .mdc-notched-outline--notched {\n .mdc-notched-outline__notch {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(padding, right, 8px);\n\n border-top: none;\n }\n }\n }\n\n .mdc-notched-outline--no-label {\n .mdc-notched-outline__notch {\n @include feature-targeting.targets($feat-structure) {\n display: none;\n }\n }\n }\n}\n\n@mixin color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-notched-outline__leading,\n .mdc-notched-outline__notch,\n .mdc-notched-outline__trailing {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-color, $color);\n }\n }\n}\n\n@mixin stroke-width($width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-notched-outline__leading,\n .mdc-notched-outline__notch,\n .mdc-notched-outline__trailing {\n @include feature-targeting.targets($feat-structure) {\n border-width: $width;\n }\n }\n}\n\n///\n/// Adds top offset to compensate for border width box size when it is notched.\n/// Use this when floating label is aligned to center to prevent label jump on focus.\n/// @param {Number} $stroke-width Stroke width of notched outline that needs to be offset.\n///\n@mixin notch-offset($stroke-width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-notched-outline--notched .mdc-notched-outline__notch {\n @include feature-targeting.targets($feat-structure) {\n padding-top: $stroke-width;\n }\n }\n}\n\n@mixin shape-radius(\n $radius,\n $rtl-reflexive: false,\n $component-height: null,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n // Resolve the radius relative to the notched outline component's height. The\n // component should provide its current height from its density. The resolved\n // radius allows percentage radii to be converted to pixels.\n $resolved-radius: shape-functions.resolve-radius(\n $radius,\n $component-height: $component-height\n );\n\n // Grab the top-left radius. We'll need it to adjust the leading for the\n // label notch if the resulting radius shape is larger than the default\n // leading.\n $top-left-radius: list.nth(\n shape-functions.unpack-radius($resolved-radius),\n 1\n );\n $top-left-is-custom-prop: custom-properties.is-custom-prop($top-left-radius);\n $top-left-radius-px: $top-left-radius;\n @if ($top-left-is-custom-prop) {\n $top-left-radius-px: custom-properties.get-fallback($top-left-radius);\n }\n\n .mdc-notched-outline__leading {\n // mask the leading to apply the top-left and bottom-left corners\n @include shape-mixins.radius(\n shape-functions.mask-radius($radius, 1 0 0 1),\n $rtl-reflexive: true,\n $component-height: $component-height,\n $query: $query\n );\n\n @include feature-targeting.targets($feat-structure) {\n @if ($top-left-radius-px > variables.$leading-width) {\n // If the radius is bigger than the default leading width, we need to\n // increase the leading width\n width: $top-left-radius-px;\n @if ($top-left-is-custom-prop) {\n // The radius may be a custom property, in which case the above width\n // is the IE11 fallback value.\n /* @alternate */\n }\n }\n\n @if ($top-left-is-custom-prop) {\n // If the top-left radius is dynamic, the width of the leading is\n // the max of whichever is larger: the default leading width or the\n // value of the custom property.\n $var: custom-properties.create-var($top-left-radius);\n @supports (top: max(0%)) {\n width: max(#{variables.$leading-width}, #{$var});\n }\n }\n }\n }\n\n // Similar to above, adjust the max-width of the notch if we adjusted the\n // leading's width.\n .mdc-notched-outline__notch {\n @include feature-targeting.targets($feat-structure) {\n @if ($top-left-radius-px > variables.$leading-width) {\n max-width: calc(100% - #{$top-left-radius-px} * 2);\n @if ($top-left-is-custom-prop) {\n /* @alternate */\n }\n }\n\n @if ($top-left-is-custom-prop) {\n $var: custom-properties.create-var($top-left-radius);\n @supports (top: max(0%)) {\n max-width: calc(100% - max(#{variables.$leading-width}, #{$var}) * 2);\n }\n }\n }\n }\n\n .mdc-notched-outline__trailing {\n // mask the leading to apply the top-right and bottom-right corners\n @include shape-mixins.radius(\n shape-functions.mask-radius($radius, 0 1 1 0),\n $rtl-reflexive: true,\n $component-height: $component-height,\n $query: $query\n );\n }\n}\n\n@mixin floating-label-float-position(\n $positionY,\n $positionX: 0%,\n $scale: 0.75,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include floating-label-mixins.float-position(\n $positionY + variables.$label-adjust,\n $positionX,\n 1,\n $query: $query\n );\n\n .mdc-floating-label--float-above {\n @include feature-targeting.targets($feat-structure) {\n font-size: ($scale * 1rem);\n }\n }\n\n // Two selectors to ensure we select the appropriate class when applied from this component or a parent component.\n &.mdc-notched-outline--upgraded,\n .mdc-notched-outline--upgraded {\n @include floating-label-mixins.float-position(\n $positionY,\n $positionX,\n $scale,\n $query: $query\n );\n\n // stylelint-disable-next-line no-descending-specificity\n .mdc-floating-label--float-above {\n @include feature-targeting.targets($feat-structure) {\n font-size: 1rem;\n }\n }\n }\n}\n\n///\n/// Sets floating label position in notched outline when label is afloat.\n///\n/// @param {Number} $positionY Absolute Y-axis position in `px`.\n/// @param {Number} $positionX Absolute X-axis position in `px`. Defaults to `0`.\n/// @param {Number} $scale Defaults to `.75`.\n///\n/// @todo Replace mixin `mdc-notched-outline-floating-label-float-position` with this mixin when floating label is\n/// center aligned in all the places.\n///\n@mixin floating-label-float-position-absolute(\n $positionY,\n $positionX: 0,\n $scale: 0.75,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include floating-label-mixins.float-position(\n $positionY + variables.$label-adjust-absolute,\n $positionX,\n 1,\n $query: $query\n );\n\n .mdc-floating-label--float-above {\n @include feature-targeting.targets($feat-structure) {\n font-size: ($scale * 1rem);\n }\n }\n\n // Two selectors to ensure we select the appropriate class when applied from this component or a parent component.\n &.mdc-notched-outline--upgraded,\n .mdc-notched-outline--upgraded {\n @include floating-label-mixins.float-position(\n $positionY,\n $positionX,\n $scale,\n $query: $query\n );\n\n // stylelint-disable-next-line no-descending-specificity\n .mdc-floating-label--float-above {\n @include feature-targeting.targets($feat-structure) {\n font-size: 1rem;\n }\n }\n }\n}\n\n///\n/// Sets the max-width for the notch\n///\n/// @param {Number} $max-width Max-width for the notch\n///\n@mixin notch-max-width($max-width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n :not(.mdc-notched-outline--notched) .mdc-notched-outline__notch {\n @include feature-targeting.targets($feat-structure) {\n max-width: $max-width;\n }\n }\n}\n\n//\n// Private\n//\n@mixin base_($query) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n height: 100%;\n /* @noflip */\n text-align: left;\n pointer-events: none;\n\n @include rtl-mixins.rtl {\n /* @noflip */\n text-align: right;\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Keep this in sync with constants.numbers.MIN_LEADING_STROKE_EDGE_POSITION\n$min-leading-stroke-edge-position: 12px !default;\n// The gap between the stroke end and floating label\n// Keep this in sync with constants.numbers.NOTCH_GUTTER_SIZE\n$notch-gutter-size: 4px !default;\n$border-width: 1px !default;\n$leading-width: 12px !default;\n$padding: 4px !default;\n// This variable keeps the before/after JS label centered in the notch when the font-size is changed.\n$label-adjust: 14% !default;\n\n/// Label box height when it is floating above for notched upgraded. This value is used to put the label vertically in\n/// the middle when it is notched.\n$label-box-height: 13.5px !default;\n\n/// Label adjust offset applied to floating label when it is notched. Since notch without upgraded has different font\n/// size we add additional offset value.\n$label-adjust-absolute: 2.5px !default;\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/dom/mixins' as dom-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/floating-label/mixins' as floating-label-mixins;\n@use '@material/floating-label/variables' as floating-label-variables;\n@use '@material/list/mixins' as list-mixins;\n@use '@material/notched-outline/mixins' as notched-outline-mixins;\n@use '@material/notched-outline/variables' as notched-outline-variables;\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/theme/mixins' as theme-mixins;\n@use '@material/typography/mixins' as typography-mixins;\n@use './select-helper-text-theme';\n@use './select-icon-theme';\n@use './select-theme';\n@use './select-filled';\n@use './select-outlined';\n@use './select-ripple';\n@use './select-helper-text';\n@use './select-icon';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select {\n @include select-theme.ink-color(\n (\n default: select-theme.$ink-color,\n disabled: select-theme.$disabled-ink-color,\n ),\n $query: $query\n );\n\n @include select-theme.label-color(\n (\n default: select-theme.$label-color,\n focus: select-theme.$focused-label-color,\n disabled: select-theme.$disabled-label-color,\n ),\n $query: $query\n );\n\n @include select-theme.dropdown-icon-color(\n (\n default: select-theme.$dropdown-icon-color,\n focus: primary,\n disabled: select-theme.$disabled-dropdown-icon-color,\n ),\n $query: $query\n );\n\n @include select-helper-text-theme.helper-text-color(\n (\n default: select-helper-text-theme.$helper-text-color,\n disabled: select-helper-text-theme.$disabled-helper-text-color,\n ),\n $query: $query\n );\n\n @include select-icon-theme.icon-color(\n (\n default: select-icon-theme.$icon-color,\n disabled: select-icon-theme.$disabled-icon-color,\n ),\n $query: $query\n );\n\n // High-contrast mode support\n @include dom-mixins.ie-high-contrast-mode() {\n $gray-text: (\n disabled: GrayText,\n );\n @include select-theme.ink-color($gray-text, $query: $query);\n @include select-theme.dropdown-icon-color(\n (\n disabled: red,\n ),\n $query: $query\n );\n @include select-theme.label-color($gray-text, $query: $query);\n @include select-theme.bottom-line-color($gray-text, $query: $query);\n @include select-theme.outline-color($gray-text, $query: $query);\n @include select-icon-theme.icon-color($gray-text, $query: $query);\n @include select-helper-text-theme.helper-text-color(\n $gray-text,\n $query: $query\n );\n }\n\n // Floating label private mixin\n @include _floating-label($query: $query);\n\n // structural\n @include _padding-horizontal(\n $left: select-theme.$anchor-padding-left,\n $left-with-leading-icon:\n select-theme.$anchor-padding-left-with-leading-icon,\n $right: select-theme.$anchor-padding-right,\n $query: $query\n );\n @include select-icon-theme.size(\n select-icon-theme.$icon-size,\n $query: $query\n );\n @include select-theme.dropdown-icon-size(\n select-icon-theme.$icon-size,\n $query: $query\n );\n @include _option-side-padding(16px, $query: $query);\n @include _option-graphic-trailing-margin(12px, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n position: relative; // Menu is absolutely positioned relative to this.\n }\n\n &__dropdown-icon {\n @include _dropdown-icon-base($query: $query);\n @include _dropdown-icon-inactive($query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n margin,\n select-icon-theme.$icon-horizontal-margin,\n select-icon-theme.$icon-horizontal-margin\n );\n display: inline-flex;\n position: relative;\n align-self: center;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n pointer-events: none;\n }\n\n .mdc-select--activated & {\n @include _dropdown-icon-active($query: $query);\n }\n }\n }\n\n .mdc-select__anchor {\n @include floating-label-mixins.float-position(\n select-theme.$label-position-y,\n $query: $query\n );\n\n @include feature-targeting.targets($feat-structure) {\n width: select-theme.$default-width;\n min-width: 0;\n flex: 1 1 auto;\n position: relative;\n box-sizing: border-box;\n overflow: hidden;\n outline: none;\n cursor: pointer;\n }\n }\n\n @include _text($query: $query);\n\n .mdc-select--invalid {\n @include select-theme.label-color(\n (\n default: select-theme.$error-color,\n focus: select-theme.$error-color,\n ),\n $query: $query\n );\n @include select-helper-text-theme.helper-text-validation-color(\n select-theme.$error-color,\n $query: $query\n );\n @include select-theme.dropdown-icon-color(\n (\n default: select-theme.$error-color,\n focus: select-theme.$error-color,\n ),\n $query: $query\n );\n }\n\n .mdc-select--disabled {\n @include _disabled($query: $query);\n }\n\n .mdc-select--with-leading-icon {\n @include _option-side-padding(12px, $query: $query);\n }\n\n .mdc-select__menu .mdc-list {\n @include select-icon-theme.icon-horizontal-margins(0, 0, $query: $query);\n @include list-mixins.item-selected-text-color(on-surface, $query: $query);\n }\n\n @include select-filled.core-styles($query: $query);\n @include select-outlined.core-styles($query: $query);\n @include select-ripple.core-styles($query: $query);\n @include select-helper-text.helper-text-core-styles($query: $query);\n @include select-icon.icon-core-styles($query: $query);\n}\n\n///\n/// Sets base dropdown icon styles.\n/// @access private\n///\n@mixin _dropdown-icon-base($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select__dropdown-icon-active,\n .mdc-select__dropdown-icon-inactive {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n top: 0;\n left: 0;\n }\n }\n\n .mdc-select__dropdown-icon-graphic {\n $svg-natural-width: 10px;\n $svg-natural-height: 5px;\n\n @include feature-targeting.targets($feat-structure) {\n width: $svg-natural-width / select-icon-theme.$icon-size * 100%;\n height: $svg-natural-height / select-icon-theme.$icon-size * 100%;\n }\n }\n}\n\n///\n/// Sets styles for transitioning the dropdown icon to inactive state.\n/// @access private\n///\n@mixin _dropdown-icon-inactive($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n .mdc-select__dropdown-icon-inactive {\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: opacity select-theme.$icon-inactive-fade-in-duration linear\n select-theme.$icon-inactive-fade-out-duration;\n }\n }\n\n .mdc-select__dropdown-icon-active {\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: opacity select-theme.$icon-inactive-fade-out-duration linear;\n }\n }\n}\n\n///\n/// Sets styles for transitioning the dropdown icon to activated state.\n/// @access private\n///\n@mixin _dropdown-icon-active($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n .mdc-select__dropdown-icon-inactive {\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: opacity select-theme.$icon-active-fade-out-duration linear;\n }\n }\n\n .mdc-select__dropdown-icon-active {\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: opacity select-theme.$icon-active-fade-in-duration linear\n select-theme.$icon-active-fade-out-duration;\n }\n }\n}\n\n///\n/// Sets the side padding for option text.\n/// @access private\n///\n@mixin _option-side-padding($side-padding, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select__menu .mdc-list-item {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n padding,\n $side-padding,\n $side-padding\n );\n }\n }\n}\n\n///\n/// Sets the traliing margin for an option's leading graphic.\n/// @access private\n///\n@mixin _option-graphic-trailing-margin(\n $margin-right,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select__menu .mdc-list-item__graphic {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(margin, right, $margin-right);\n }\n }\n}\n\n@mixin _floating-label($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n top: 50%;\n transform: translateY(-50%);\n pointer-events: none;\n }\n }\n}\n\n@mixin _text($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-select__selected-text-container {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n appearance: none;\n pointer-events: none;\n box-sizing: border-box;\n width: auto;\n min-width: 0;\n flex-grow: 1;\n height: select-theme.$selected-text-height;\n border: none;\n outline: none;\n padding: 0;\n }\n\n @include feature-targeting.targets($feat-color) {\n background-color: transparent;\n color: inherit; // Override default user agent stylesheet\n }\n }\n\n .mdc-select__selected-text {\n @include typography-mixins.typography(subtitle1, $query: $query);\n @include typography-mixins.overflow-ellipsis($query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n display: block;\n width: 100%;\n /* @noflip */\n text-align: left;\n @include rtl-mixins.rtl {\n /* @noflip */\n text-align: right;\n }\n }\n }\n}\n\n@mixin _disabled($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n cursor: default;\n pointer-events: none;\n }\n}\n\n/// Adds horizontal padding to the selected text\n///\n/// @param {Number} $left - left side padding\n/// @param {Number} $left-with-leading-icon - left-side padding when a leading\n/// icon is present\n/// @param {Number} $right - right-side padding; note that a trailing icon is\n/// always present.\n@mixin _padding-horizontal(\n $left,\n $left-with-leading-icon,\n $right,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select__anchor {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(padding, $left, $right);\n }\n }\n\n &.mdc-select--with-leading-icon .mdc-select__anchor {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n padding,\n $left-with-leading-icon,\n $right\n );\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use 'sass:color';\n@use 'sass:list';\n@use 'sass:meta';\n@use '@material/density/functions' as density-functions;\n@use '@material/density/variables' as density-variables;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/floating-label/mixins' as floating-label-mixins;\n@use '@material/floating-label/variables' as floating-label-variables;\n@use '@material/line-ripple/mixins' as line-ripple-mixins;\n@use '@material/list/mixins' as list-mixins;\n@use '@material/notched-outline/mixins' as notched-outline-mixins;\n@use '@material/notched-outline/variables' as notched-outline-variables;\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/shape/functions' as shape-functions;\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/theme/custom-properties';\n@use '@material/theme/gss';\n@use '@material/theme/mixins' as theme-mixins;\n@use '@material/theme/state';\n@use '@material/theme/variables' as theme-variables;\n@use '@material/typography/mixins' as typography-mixins;\n@use './select-icon-theme';\n\n$ripple-target: '.mdc-select__ripple';\n\n@function get-outlined-label-position-y($select-anchor-height) {\n @return $select-anchor-height / 2 +\n notched-outline-variables.$label-box-height / 2;\n}\n\n$arrow-padding: 52px !default;\n$label-padding: 16px !default;\n$height: 56px !default;\n$minimum-height-for-filled-label: 52px !default;\n$filled-baseline-top: 40px !default;\n$selected-text-height: 28px !default;\n$anchor-padding-left: 16px !default;\n$anchor-padding-left-with-leading-icon: 0 !default;\n$anchor-padding-right: 0 !default;\n$outlined-stroke-width: 2px !default;\n$default-width: 200px !default;\n$shape-radius: small !default;\n\n$minimum-height: 40px !default;\n$minimum-height-for-filled-label: 52px !default;\n$maximum-height: $height !default;\n$density-scale: density-variables.$default-scale !default;\n$density-config: (\n height: (\n default: $height,\n maximum: $maximum-height,\n minimum: $minimum-height,\n ),\n) !default;\n\n$ink-color: rgba(theme-variables.prop-value(on-surface), 0.87) !default;\n$dropdown-icon-color: rgba(\n theme-variables.prop-value(on-surface),\n 0.54\n) !default;\n$label-color: rgba(theme-variables.prop-value(on-surface), 0.6) !default;\n$focused-label-color: rgba(theme-variables.prop-value(primary), 0.87) !default;\n$bottom-line-idle-color: rgba(\n theme-variables.prop-value(on-surface),\n 0.42\n) !default;\n$bottom-line-hover-color: rgba(\n theme-variables.prop-value(on-surface),\n 0.87\n) !default;\n\n$fill-color: color.mix(\n theme-variables.prop-value(on-surface),\n theme-variables.prop-value(surface),\n 4%\n) !default;\n\n// Disabled Styles\n$disabled-label-color: rgba(\n theme-variables.prop-value(on-surface),\n 0.38\n) !default;\n$disabled-ink-color: rgba(\n theme-variables.prop-value(on-surface),\n 0.38\n) !default;\n$disabled-fill-color: color.mix(\n theme-variables.prop-value(on-surface),\n theme-variables.prop-value(surface),\n 2%\n) !default;\n$disabled-fill-border: rgba(\n theme-variables.prop-value(on-surface),\n 0.06\n) !default;\n$disabled-bottom-line-color: rgba(\n theme-variables.prop-value(on-surface),\n 0.06\n) !default;\n$disabled-dropdown-icon-color: rgba(\n theme-variables.prop-value(on-surface),\n 0.38\n) !default;\n$disabled-outline-color: rgba(\n theme-variables.prop-value(on-surface),\n 0.06\n) !default;\n\n$outlined-idle-border: rgba(\n theme-variables.prop-value(on-surface),\n 0.38\n) !default;\n$outlined-hover-border: rgba(\n theme-variables.prop-value(on-surface),\n 0.87\n) !default;\n\n$label-position-y: 106% !default;\n$outline-label-offset: 16px !default;\n$outlined-label-position-y: get-outlined-label-position-y($height) !default;\n$outlined-with-leading-icon-label-position-x: 32px !default;\n\n$dropdown-transition-duration: 150ms !default;\n// Transition durartions to active state\n$icon-active-fade-out-duration: 0.33 * $dropdown-transition-duration !default;\n$icon-active-fade-in-duration: 0.67 * $dropdown-transition-duration !default;\n// Transition durartions to inactive state\n$icon-inactive-fade-out-duration: 0.5 * $dropdown-transition-duration !default;\n$icon-inactive-fade-in-duration: 0.5 * $dropdown-transition-duration !default;\n\n// Error colors\n$error-color: error !default;\n\n/// Sets the min-width of the select.\n/// @param {Number} $min-width - The desired min-width.\n/// @deprecated using this mixin is no longer required, and clients may set\n/// the attribute directly\n@mixin min-width($min-width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n min-width: $min-width;\n }\n}\n\n/// Sets the select behavior to change width dynamically based on content.\n/// @param {Number} $min-width - The min-width of the select, which should be\n/// large enough to allow the label (if exists) to display in full.\n@mixin variable-width($min-width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select__anchor {\n @include feature-targeting.targets($feat-structure) {\n width: 100%;\n min-width: $min-width;\n }\n }\n}\n\n@mixin ink-color($color-or-map, $query: feature-targeting.all()) {\n @include _if-enabled {\n @include _ink-color(state.get-default-state($color-or-map), $query: $query);\n }\n\n @include _if-disabled {\n @include _ink-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n@mixin container-fill-color($color-or-map, $query: feature-targeting.all()) {\n @include _if-enabled {\n @include _container-fill-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n }\n\n @include _if-disabled {\n @include _container-fill-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n@mixin dropdown-icon-color($color-or-map, $query: feature-targeting.all()) {\n @include _if-enabled {\n @include _dropdown-icon-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n\n &:not(.mdc-select--focused):hover {\n @include _dropdown-icon-color(\n state.get-hover-state($color-or-map),\n $query: $query\n );\n }\n\n @include _if-focused {\n @include _dropdown-icon-color(\n state.get-focus-state($color-or-map),\n $query: $query\n );\n }\n }\n\n @include _if-disabled {\n @include _dropdown-icon-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n@mixin label-floating-color($color-or-map, $query: feature-targeting.all()) {\n @include _if-enabled {\n @include _label-floating-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n\n &:not(.mdc-select--focused):hover {\n @include _label-floating-color(\n state.get-hover-state($color-or-map),\n $query: $query\n );\n }\n }\n}\n\n@mixin bottom-line-color($color-or-map, $query: feature-targeting.all()) {\n @include _if-enabled {\n @include _bottom-line-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n\n // bottom line inactive/active are on different elements, does not need\n // to check for :not() focused\n &:hover {\n @include _bottom-line-color(\n state.get-hover-state($color-or-map),\n $query: $query\n );\n }\n\n @include _focused-line-ripple-color(\n state.get-focus-state($color-or-map),\n $query: $query\n );\n }\n\n @include _if-disabled {\n @include _bottom-line-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n@mixin label-color($color-or-map, $query: feature-targeting.all()) {\n @include _if-enabled {\n @include _label-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n\n @include _if-focused {\n @include _label-color(\n state.get-focus-state($color-or-map),\n $query: $query\n );\n }\n\n &:not(.mdc-select--focused):hover {\n @include _label-color(\n state.get-hover-state($color-or-map),\n $query: $query\n );\n }\n }\n\n @include _if-disabled {\n @include _label-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n@mixin outline-color($color-or-map, $query: feature-targeting.all()) {\n @include _if-enabled {\n @include _outline-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n\n // stylelint-disable-next-line selector-combinator-space-after\n &:not(.mdc-select--focused) .mdc-select__anchor:hover {\n @include _hover-outline-color(\n state.get-hover-state($color-or-map),\n $query: $query\n );\n }\n\n @include _if-focused {\n @include _focused-outline-color(\n state.get-focus-state($color-or-map),\n $query: $query\n );\n }\n }\n\n @include _if-disabled {\n @include _outline-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n///\n/// Sets the dropdown icon to the specified size.\n///\n@mixin dropdown-icon-size($size, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select__dropdown-icon {\n @include feature-targeting.targets($feat-structure) {\n width: $size;\n height: $size;\n }\n }\n}\n\n@mixin filled-shape-radius(\n $radius,\n $density-scale: $density-scale,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n @if meta.type-of($radius) == 'list' and list.length($radius) > 2 {\n @error \"mdc-select: Invalid radius #{$radius}. Only top-left and top-right corners may be customized.\";\n }\n\n $height: density-functions.prop-value(\n $density-config: $density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n $masked-radius: shape-functions.mask-radius($radius, 1 1 0 0);\n\n .mdc-select__anchor {\n @include shape-mixins.radius(\n $masked-radius,\n $rtl-reflexive,\n $component-height: $height,\n $query: $query\n );\n }\n}\n\n@mixin outline-shape-radius(\n $radius,\n $density-scale: $density-scale,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n $height: density-functions.prop-value(\n $density-config: $density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n .mdc-notched-outline {\n @include notched-outline-mixins.shape-radius(\n $radius,\n $rtl-reflexive,\n $component-height: $height,\n $query: $query\n );\n }\n\n $resolved-radius: shape-functions.resolve-radius(\n $radius,\n $component-height: $height\n );\n $unpacked-radius: shape-functions.unpack-radius($resolved-radius);\n $top-left-radius: list.nth($unpacked-radius, 1);\n $top-left-is-custom-prop: custom-properties.is-custom-prop($top-left-radius);\n $top-left-radius-px: $top-left-radius;\n @if ($top-left-is-custom-prop) {\n $top-left-radius-px: custom-properties.get-fallback($top-left-radius);\n }\n\n @if (\n $top-left-is-custom-prop or\n $top-left-radius-px >\n notched-outline-variables.$leading-width\n ) {\n .mdc-select__anchor {\n @include _apply-outline-shape-padding(\n padding-left,\n $top-left-radius,\n $add-label-padding: true,\n $query: $query\n );\n\n @include rtl-mixins.rtl {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n padding-left: 0;\n }\n @include _apply-outline-shape-padding(\n padding-right,\n $top-left-radius,\n $add-label-padding: true,\n $query: $query\n );\n }\n }\n\n + .mdc-select-helper-text {\n @include _apply-outline-shape-padding(\n margin-left,\n $top-left-radius,\n $add-label-padding: true,\n $query: $query\n );\n\n @include rtl-mixins.rtl {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n margin-left: 0;\n }\n @include _apply-outline-shape-padding(\n margin-right,\n $top-left-radius,\n $add-label-padding: true,\n $query: $query\n );\n }\n }\n\n // Unlike textfield, select does not need to re-apply leading icon padding.\n // This is because select only has one potential leading class, not two\n // extra classes like textfield (leading + trailing). Textfield's two extra\n // classes can cause specificity conflicts, requiring everything to be\n // re-applied.\n }\n}\n\n///\n/// Sets density scale for filled select variant.\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values `-4`,\n/// `-3`, `-2`, `-1`, `0`. Default is `0`.\n/// @param {Number} $minimum-height-for-filled-label Sets the minimum height for\n/// filled selects at which to allow floating labels.\n///\n@mixin filled-density(\n $density-scale,\n $minimum-height-for-filled-label: $minimum-height-for-filled-label,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: $density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include filled-height(\n $height,\n $minimum-height-for-filled-label: $minimum-height-for-filled-label,\n $query: $query\n );\n @include list-mixins.single-line-density($density-scale, $query: $query);\n}\n\n///\n/// Sets density scale for filled select variant with leading icon.\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values `-4`,\n/// `-3`, `-2`, `-1`, `0`. Default is `0`.\n/// @param {Number} $minimum-height-for-filled-label Sets the minimum height for\n/// filled selects at which to allow floating labels.\n///\n@mixin filled-with-leading-icon-density(\n $density-scale,\n $minimum-height-for-filled-label: $minimum-height-for-filled-label,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: $density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include filled-with-leading-icon-height(\n $height,\n $minimum-height-for-filled-label: $minimum-height-for-filled-label,\n $query: $query\n );\n @include list-mixins.single-line-density($density-scale, $query: $query);\n}\n\n///\n/// Sets density scale for outlined select (Excluding outlined select with leading icon).\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values `-4`,\n/// `-3`, `-2`, `-1`, `0`. Default is `0`.\n///\n@mixin outlined-density($density-scale, $query: feature-targeting.all()) {\n $height: density-functions.prop-value(\n $density-config: $density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include outlined-height($height, $query: $query);\n @include list-mixins.single-line-density($density-scale, $query: $query);\n}\n\n///\n/// Sets density scale for outlined select with leading icon.\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values `-4`,\n/// `-3`, `-2`, `-1`, `0`. Default is `0`.\n///\n@mixin outlined-with-leading-icon-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: $density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include outlined-with-leading-icon-height($height, $query: $query);\n @include list-mixins.single-line-density($density-scale, $query: $query);\n}\n\n///\n/// Sets height of default select variant.\n///\n/// @param {Number} $new-height\n/// @param {Number} $minimum-height-for-filled-label Sets the minimum height for\n/// filled selects at which to allow floating labels.\n/// @param {Number} $filled-baseline-top The baseline from the top of the anchor\n/// that the input should be aligned to for a filled variant with a label\n/// @access public\n///\n@mixin filled-height(\n $new-height,\n $minimum-height-for-filled-label: $minimum-height-for-filled-label,\n $filled-baseline-top: $filled-baseline-top,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select__anchor {\n @include feature-targeting.targets($feat-structure) {\n height: $new-height;\n }\n\n // Filled variant is aligned to baseline...\n @include typography-mixins.baseline(\n $top: $filled-baseline-top,\n $display: flex,\n $query: $query\n );\n // ...unless it is too small to display a label\n @if $new-height < $minimum-height-for-filled-label {\n @include center-aligned($query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n .mdc-floating-label {\n display: none;\n }\n }\n }\n }\n\n // No-label variants are always centered\n &.mdc-select--no-label .mdc-select__anchor {\n @include center-aligned($query: $query);\n }\n\n @if $new-height < $height {\n @include dropdown-icon-size(\n select-icon-theme.$dense-icon-size,\n $query: $query\n );\n\n &.mdc-select--filled {\n @include truncate-floating-label-max-width(\n $leading-icon-size: 0,\n $dropdown-icon-size: select-icon-theme.$dense-icon-size,\n $query: $query\n );\n }\n }\n}\n\n///\n/// Sets height of filled select variant with leading icon.\n///\n/// @param {Number} $height\n/// @param {Number} $minimum-height-for-filled-label Sets the minimum height for\n/// filled selects at which to allow floating labels.\n/// @param {Number} $filled-baseline-top The baseline from the top of the anchor\n/// that the input should be aligned to for a filled variant with a label\n/// @access public\n///\n@mixin filled-with-leading-icon-height(\n $new-height,\n $minimum-height-for-filled-label: $minimum-height-for-filled-label,\n $filled-baseline-top: $filled-baseline-top,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include filled-height(\n $new-height,\n $minimum-height-for-filled-label: $minimum-height-for-filled-label,\n $filled-baseline-top: $filled-baseline-top,\n $query: $query\n );\n\n @if $new-height < $height {\n @include select-icon-theme.size(\n select-icon-theme.$dense-icon-size,\n $query: $query\n );\n\n &.mdc-select--filled {\n @include truncate-floating-label-max-width(\n $leading-icon-size: select-icon-theme.$dense-icon-size,\n $dropdown-icon-size: select-icon-theme.$dense-icon-size,\n $query: $query\n );\n }\n\n .mdc-list-item__graphic {\n width: select-icon-theme.$dense-icon-size;\n height: select-icon-theme.$dense-icon-size;\n }\n\n .mdc-select__anchor {\n @include leading-icon-floating-label-position(\n select-icon-theme.$dense-icon-size,\n $query: $query\n );\n }\n }\n}\n\n///\n/// Sets height of outlined select variant (Excluding outlined select with leading icon).\n///\n/// @param {Number} $new-height\n/// @param {String} $keyframe-suffix - Optional suffix to use for generated\n/// floating label keyframes\n///\n@mixin outlined-height(\n $new-height,\n $keyframe-suffix: select-outlined-#{$new-height},\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $positionY: get-outlined-label-position-y($new-height);\n\n .mdc-select__anchor {\n // Floating label position\n @include notched-outline-mixins.floating-label-float-position-absolute(\n $positionY,\n $query: $query\n );\n\n // Floating label animation\n @include floating-label-mixins.shake-animation(\n $keyframe-suffix,\n $query: $query\n );\n @at-root {\n @include floating-label-mixins.shake-keyframes(\n $keyframe-suffix,\n $positionY,\n $query: $query\n );\n }\n\n @include feature-targeting.targets($feat-structure) {\n height: $new-height;\n }\n }\n\n @if $new-height < $height {\n @include dropdown-icon-size(\n select-icon-theme.$dense-icon-size,\n $query: $query\n );\n\n &.mdc-select--outlined {\n @include truncate-notched-outline-max-width(\n $leading-icon-size: 0,\n $dropdown-icon-size: select-icon-theme.$dense-icon-size,\n $query: $query\n );\n }\n }\n}\n\n///\n/// Sets height of outlined select with leading icon variant.\n///\n/// @param {Number} $new-height\n/// @param {String} $keyframe-suffix - Optional suffix to use for generated\n/// floating label keyframes\n///\n@mixin outlined-with-leading-icon-height(\n $new-height,\n $keyframe-suffix: null,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select__anchor {\n @if $new-height < $height {\n @include dropdown-icon-size(\n select-icon-theme.$dense-icon-size,\n $query: $query\n );\n @include outlined-with-leading-icon-floating-label-position-animation(\n $new-height,\n select-icon-theme.$dense-icon-size,\n $keyframe-suffix,\n $query: $query\n );\n } @else {\n @include outlined-with-leading-icon-floating-label-position-animation(\n $new-height,\n select-icon-theme.$icon-size,\n $keyframe-suffix,\n $query: $query\n );\n }\n\n @include feature-targeting.targets($feat-structure) {\n height: $new-height;\n }\n }\n\n @if $new-height < $height {\n .mdc-list-item__graphic {\n width: select-icon-theme.$dense-icon-size;\n height: select-icon-theme.$dense-icon-size;\n }\n\n @include select-icon-theme.size(\n select-icon-theme.$dense-icon-size,\n $query: $query\n );\n\n &.mdc-select--outlined {\n @include truncate-notched-outline-max-width(\n $leading-icon-size: select-icon-theme.$dense-icon-size,\n $dropdown-icon-size: select-icon-theme.$dense-icon-size,\n $query: $query\n );\n }\n }\n}\n\n// $add-label-padding is copied from textfield's mixin, even though select\n// always sets it to true. This is to try and keep things aligned between select\n// and textfield for when these styles are refactored into shared styles.\n@mixin _apply-outline-shape-padding(\n $property,\n $padding,\n $add-label-padding: false,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $padding-is-custom-prop: custom-properties.is-custom-prop($padding);\n $padding-px: $padding;\n @if ($padding-is-custom-prop) {\n $padding-px: custom-properties.get-fallback($padding);\n }\n\n @include feature-targeting.targets($feat-structure) {\n // The shape should only change the padding if the radius becomes greater\n // than the default padding. That means we need to add more padding.\n @if ($padding-px > notched-outline-variables.$leading-width) {\n // Set a px value if it's greater. This is either the only value (if\n // we're given an exact value), or an IE11 fallback if we're given a\n // custom property and the fallback value is greater than the padding.\n $value: $padding-px;\n @if ($add-label-padding) {\n // If this is for the top-left leading, add the notched outline padding\n // to keep it aligned with the label\n $value: $padding-px + notched-outline-variables.$padding;\n }\n\n /* @noflip */\n #{$property}: $value;\n @include gss.annotate(\n (\n alternate: $padding-is-custom-prop,\n )\n );\n }\n @if ($padding-is-custom-prop) {\n // If it's a custom property, always add it since the value may change\n // to be greater than the padding at runtime, even if the fallback is\n // not currently greater than the default padding.\n $value: custom-properties.create-var($padding);\n @if ($add-label-padding) {\n $value: calc(#{$value} + #{notched-outline-variables.$padding});\n }\n\n @supports (top: max(0%)) {\n // A max() function makes this runtime dynamic. The padding will be\n // whichever is greater: the default horizontal padding, or the\n // calculated custom property plus extra padding.\n /* @noflip */\n #{$property}: max(#{$anchor-padding-left}, #{$value});\n }\n }\n }\n}\n\n// Removes filled baseline alignment\n@mixin center-aligned($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select__selected-text {\n @include typography-mixins.zero-width-prefix($query: $query);\n }\n\n @include feature-targeting.targets($feat-structure) {\n // In order for a flexbox container to participate in baseline alignment,\n // it follows these rules to determine where its baseline is:\n // https://www.w3.org/TR/css-flexbox-1/#flex-baselines\n //\n // In order to avoid leading icons \"controlling\" the baseline (since they\n // are the first child), flexbox will generate a baseline from any child\n // flex items that participate in baseline alignment.\n //\n // Icons are set to \"align-self: center\", while all other children are\n // aligned to baseline. The next problem is deciding which child is\n // used to determine the baseline.\n //\n // According to spec, the item with the largest distance between its\n // baseline and the edge of the cross axis is placed flush with that edge,\n // making it the baseline of the container.\n // https://www.w3.org/TR/css-flexbox-1/#baseline-participation\n //\n // For the filled variant, the pseudo ::before strut is the \"largest\"\n // child since the input has a height of 28px and the strut is 40px. We\n // can emulate center alignment and force the baseline to use the input\n // text by making the input the full height of the container and removing\n // the baseline strut.\n //\n // IE11 does not respect this, and makes the leading icon (if present)\n // the baseline.\n .mdc-select__selected-text-container {\n height: 100%;\n display: inline-flex;\n align-items: center;\n }\n\n &::before {\n display: none;\n }\n }\n}\n\n///\n/// Sets the position of the floating label for a select with leading icon.\n/// @param {number} $icon-size - The size of the leading icon.\n///\n@mixin leading-icon-floating-label-position(\n $icon-size: select-icon-theme.$icon-size,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $icon-total-width: $icon-size + 2 * select-icon-theme.$icon-horizontal-margin;\n\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(left, $icon-total-width);\n }\n }\n}\n\n///\n/// Sets the floating label position and animations for a given height for an\n/// outlined select with leaing icon.\n/// @param {number} $icon-size - The size of the leading icon.\n/// @param {string} $keyframe-suffix - The suffix for the newly generated keyframes.\n///\n@mixin outlined-with-leading-icon-floating-label-position-animation(\n $height,\n $icon-size,\n $keyframe-suffix: select-outlined-leading-icon-#{$height},\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n $icon-total-width: $icon-size + 2 * select-icon-theme.$icon-horizontal-margin;\n $resting-position-x: $icon-total-width -\n select-icon-theme.$icon-horizontal-margin;\n $float-position-y: get-outlined-label-position-y($height);\n $float-position-x: $icon-size + select-icon-theme.$icon-horizontal-margin -\n notched-outline-variables.$notch-gutter-size;\n\n // Resting label position\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(left, $resting-position-x);\n }\n }\n\n // Floating label position\n @include notched-outline-mixins.floating-label-float-position-absolute(\n $float-position-y,\n $float-position-x,\n $query: $query\n );\n\n // Floating label animation\n @include floating-label-mixins.shake-animation(\n $keyframe-suffix,\n $query: $query\n );\n @at-root {\n @include floating-label-mixins.shake-keyframes(\n $keyframe-suffix,\n $float-position-y,\n $float-position-x,\n $query: $query\n );\n }\n\n $keyframe-suffix-rtl: #{$keyframe-suffix}-rtl;\n @include rtl-mixins.rtl {\n @include floating-label-mixins.shake-animation(\n $keyframe-suffix,\n $query: $query\n );\n }\n @at-root {\n @include floating-label-mixins.shake-keyframes(\n $keyframe-suffix-rtl,\n $float-position-y,\n -($float-position-x),\n $query: $query\n );\n }\n}\n\n///\n/// Truncates the max-width of the floating label according to sizes of the\n/// leading icon and dropdown icon.\n///\n/// @param {Number} $leading-icon-size - Size of leading icon.\n/// @param {Number} $dropdown-icon-size - Size of dropdown icon.\n///\n@mixin truncate-floating-label-max-width(\n $leading-icon-size,\n $dropdown-icon-size,\n $query: feature-targeting.all()\n) {\n $truncation: select-icon-theme.$icon-horizontal-margin * 2 +\n $dropdown-icon-size;\n\n @if $leading-icon-size > 0 {\n $truncation: $truncation +\n select-icon-theme.$icon-horizontal-margin *\n 2 +\n $leading-icon-size;\n } @else {\n $truncation: $truncation + $outline-label-offset;\n }\n\n .mdc-floating-label {\n @include floating-label-mixins.max-width(\n calc(100% - #{$truncation}),\n $query: $query\n );\n }\n\n .mdc-floating-label--float-above {\n $scale: floating-label-variables.$float-scale;\n @include floating-label-mixins.max-width(\n calc(100% / #{$scale} - #{$truncation} / #{$scale}),\n $query: $query\n );\n }\n}\n\n///\n/// Truncates the max-width of the notched outline according to the sizes of\n/// the leading icon and dropdown icon.\n///\n/// @param {Number} $leading-icon-size - Size of leading icon.\n/// @param {Number} $dropdown-icon-size - Size of dropdown icon.\n///\n@mixin truncate-notched-outline-max-width(\n $leading-icon-size,\n $dropdown-icon-size,\n $query: feature-targeting.all()\n) {\n $truncation: select-icon-theme.$icon-horizontal-margin * 2 +\n $dropdown-icon-size + notched-outline-variables.$leading-width;\n\n @if $leading-icon-size > 0 {\n $truncation: $truncation +\n select-icon-theme.$icon-horizontal-margin +\n $leading-icon-size;\n }\n .mdc-select__anchor {\n @include notched-outline-mixins.notch-max-width(\n calc(100% - #{$truncation}),\n $query: $query\n );\n }\n}\n\n/// Selector for focused state\n/// @access private\n@mixin _if-focused {\n &.mdc-select--focused {\n @content;\n }\n}\n\n/// Selector for enabled state\n/// @access private\n@mixin _if-enabled {\n &:not(.mdc-select--disabled) {\n @content;\n }\n}\n\n/// Selector for disabled state\n/// @access private\n@mixin _if-disabled {\n &.mdc-select--disabled {\n @content;\n }\n}\n\n@mixin _ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if $color {\n .mdc-select__selected-text {\n @include feature-targeting.targets($feat-color) {\n @include theme-mixins.property(color, $color);\n }\n }\n }\n}\n\n@mixin _container-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if $color {\n .mdc-select__anchor {\n @include feature-targeting.targets($feat-color) {\n @include theme-mixins.property(background-color, $color);\n }\n }\n }\n}\n\n@mixin _bottom-line-color($color, $query: feature-targeting.all()) {\n @if $color {\n .mdc-line-ripple {\n @include line-ripple-mixins.inactive-color($color, $query: $query);\n }\n }\n}\n\n@mixin _focused-line-ripple-color($color, $query: feature-targeting.all()) {\n @if $color {\n .mdc-line-ripple {\n @include line-ripple-mixins.active-color($color, $query: $query);\n }\n }\n}\n\n@mixin _outline-color($color, $query: feature-targeting.all()) {\n @if $color {\n @include notched-outline-mixins.color($color, $query: $query);\n }\n}\n\n@mixin _hover-outline-color($color, $query: feature-targeting.all()) {\n @if $color {\n .mdc-notched-outline {\n @include notched-outline-mixins.color($color, $query: $query);\n }\n }\n}\n\n@mixin _focused-outline-color($color, $query: feature-targeting.all()) {\n @if $color {\n .mdc-notched-outline {\n @include notched-outline-mixins.stroke-width(\n $outlined-stroke-width,\n $query: $query\n );\n @include notched-outline-mixins.color($color, $query: $query);\n }\n }\n}\n\n@mixin _label-color($color, $query: feature-targeting.all()) {\n @if $color {\n .mdc-floating-label {\n @include floating-label-mixins.ink-color($color, $query: $query);\n }\n }\n}\n\n@mixin _label-floating-color($color, $query: feature-targeting.all()) {\n @if $color {\n .mdc-floating-label--float-above {\n @include floating-label-mixins.ink-color($color, $query: $query);\n }\n }\n}\n\n///\n/// Sets the dropdown icon to the specified color.\n/// @access private\n///\n@mixin _dropdown-icon-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if $color {\n @include feature-targeting.targets($feat-color) {\n .mdc-select__dropdown-icon {\n @include theme-mixins.property(fill, $color);\n }\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/mixins' as theme-mixins;\n@use '@material/theme/state';\n@use '@material/theme/variables' as theme-variables;\n\n$helper-text-color: rgba(theme-variables.prop-value(on-surface), 0.6) !default;\n$disabled-helper-text-color: rgba(\n theme-variables.prop-value(on-surface),\n 0.38\n) !default;\n\n@mixin helper-text-color($color-or-map, $query: feature-targeting.all()) {\n &:not(.mdc-select--disabled) {\n @include _helper-text-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n }\n\n &.mdc-select--disabled {\n @include _helper-text-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n@mixin helper-text-validation-color(\n $color-or-map,\n $query: feature-targeting.all()\n) {\n &:not(.mdc-select--disabled) {\n @include _helper-text-validation-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n\n &:not(.mdc-select--focused):hover {\n @include _helper-text-validation-color(\n state.get-hover-state($color-or-map),\n $query: $query\n );\n }\n }\n}\n\n// Private mixins\n\n@mixin _helper-text-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if $color {\n & + .mdc-select-helper-text {\n @include feature-targeting.targets($feat-color) {\n @include theme-mixins.property(color, $color);\n }\n }\n }\n}\n\n@mixin _helper-text-validation-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if $color {\n &.mdc-select--invalid + .mdc-select-helper-text--validation-msg {\n @include feature-targeting.targets($feat-color) {\n @include theme-mixins.property(color, $color);\n }\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/theme/mixins' as theme-mixins;\n@use '@material/theme/state';\n@use '@material/theme/variables' as theme-variables;\n\n$icon-size: 24px !default;\n$dense-icon-size: 20px !default;\n$icon-horizontal-margin: 12px !default;\n\n$icon-color: rgba(theme-variables.prop-value(on-surface), 0.54) !default;\n$disabled-icon-color: rgba(\n theme-variables.prop-value(on-surface),\n 0.38\n) !default;\n\n///\n/// Customizes the size (both width and height) of the icon.\n/// @param {Number} $size - the intended icon size.\n///\n@mixin size($size, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n .mdc-select__icon {\n width: $size;\n height: $size;\n font-size: $size;\n }\n }\n}\n\n@mixin icon-color($color-or-map, $query: feature-targeting.all()) {\n &:not(.mdc-select--disabled) {\n @include _icon-color(\n state.get-default-state($color-or-map),\n $query: $query\n );\n }\n\n &.mdc-select--disabled {\n @include _icon-color(\n state.get-disabled-state($color-or-map),\n $query: $query\n );\n }\n}\n\n@mixin icon-horizontal-margins($left, $right, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n .mdc-select__icon {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(margin, $left, $right);\n }\n }\n}\n\n@mixin _icon-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @if $color {\n .mdc-select__icon {\n @include feature-targeting.targets($feat-color) {\n @include theme-mixins.property(color, $color);\n }\n }\n }\n}\n","// Copyright 2016 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n@use 'sass:list';\n@use 'sass:map';\n@use '@material/density/functions' as density-functions;\n@use '@material/dom/mixins' as dom-mixins;\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/theme/theme';\n@use '@material/shape/functions' as shape-functions;\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/typography/typography';\n@use '@material/feature-targeting/feature-targeting';\n@use './variables';\n@use '@material/theme/theme-color';\n@use './evolution-mixins';\n\n//\n// Public\n//\n\n@mixin core-styles($query: feature-targeting.all()) {\n @include without-ripple($query);\n @include ripple($query);\n}\n\n// This API is intended for use by frameworks that may want to separate the ripple-related styles from the other\n// list styles. It is recommended that most users use `mdc-list-core-styles` instead.\n@mixin without-ripple($query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-typography: feature-targeting.create-target($query, typography);\n\n $divider-color: if(\n theme-color.tone(theme-color.$background) == 'dark',\n variables.$divider-color-on-dark-bg,\n variables.$divider-color-on-light-bg\n );\n\n .mdc-list {\n @include base_($query);\n }\n\n @include single-line-density(\n variables.$single-line-density-scale,\n $query: $query\n );\n @include item-secondary-text-ink-color(text-secondary-on-background, $query);\n @include item-graphic-fill-color(transparent, $query);\n @include item-graphic-ink-color(text-icon-on-background, $query);\n @include item-meta-ink-color(text-hint-on-background, $query);\n @include group-subheader-ink-color(text-primary-on-background, $query);\n @include item-disabled-text-opacity(variables.$text-disabled-opacity, $query);\n @include item-disabled-text-color(variables.$text-disabled-color, $query);\n @include item-selected-text-color(variables.$text-selected-color, $query);\n\n .mdc-list--dense {\n @include feature-targeting.targets($feat-structure) {\n padding-top: 4px;\n padding-bottom: 4px;\n font-size: 0.812rem;\n }\n }\n\n .mdc-list-item {\n @include feature-targeting.targets($feat-structure) {\n @include item-base_;\n }\n\n // For components using aria-activedescendant, the focus pseudoclass is\n // never applied and use `.mdc-ripple-upgraded--background-focused` instead.\n &:not(.mdc-list-item--selected):focus::before,\n &.mdc-ripple-upgraded--background-focused::before {\n @include dom-mixins.transparent-border($query: $query);\n }\n\n &.mdc-list-item--selected::before {\n @include dom-mixins.transparent-border(\n $border-width: 3px,\n $border-style: double,\n $query: $query\n );\n }\n\n @include list-item-padding-variant(\n variables.$textual-variant-config,\n $query\n );\n @include list-item-height-variant(\n variables.$textual-variant-config,\n $query\n );\n\n .mdc-list--icon-list & {\n @include list-item-padding-variant(\n variables.$icon-variant-config,\n $query\n );\n @include list-item-height-variant(variables.$icon-variant-config, $query);\n }\n\n .mdc-list--avatar-list & {\n @include list-item-padding-variant(\n variables.$avatar-variant-config,\n $query\n );\n @include list-item-height-variant(\n variables.$avatar-variant-config,\n $query\n );\n }\n\n .mdc-list--thumbnail-list & {\n @include list-item-padding-variant(\n variables.$thumbnail-variant-config,\n $query\n );\n @include list-item-height-variant(\n variables.$thumbnail-variant-config,\n $query\n );\n }\n\n .mdc-list--image-list & {\n @include list-item-padding-variant(\n variables.$image-variant-config,\n $query\n );\n @include list-item-height-variant(\n variables.$image-variant-config,\n $query\n );\n }\n\n .mdc-list--video-list & {\n @include list-item-padding-variant(\n variables.$video-variant-config,\n $query\n );\n @include list-item-height-variant(\n variables.$video-variant-config,\n $query\n );\n }\n }\n\n // This is included here to preserve expected specificity behavior (avatar\n // graphic styles must take priority).\n // TODO(b/157038316): regroup this with density styles when nesting is fixed.\n .mdc-list--dense .mdc-list-item__graphic {\n @include graphic-size-dense_(20px, $query);\n }\n\n .mdc-list-item__graphic {\n @include feature-targeting.targets($feat-structure) {\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n fill: currentColor;\n object-fit: cover;\n }\n\n // TODO(b/156624966): this retains legacy spacing but should be updated.\n @include graphic-size-variant(variables.$deprecated-graphic-config, $query);\n\n .mdc-list--icon-list & {\n @include graphic-size-variant(variables.$icon-variant-config, $query);\n }\n\n .mdc-list--avatar-list & {\n @include graphic-size-variant(variables.$avatar-variant-config, $query);\n @include feature-targeting.targets($feat-structure) {\n border-radius: 50%;\n }\n }\n\n .mdc-list--thumbnail-list & {\n @include graphic-size-variant(\n variables.$thumbnail-variant-config,\n $query\n );\n }\n\n .mdc-list--image-list & {\n @include graphic-size-variant(variables.$image-variant-config, $query);\n }\n\n .mdc-list--video-list & {\n @include graphic-size-variant(variables.$video-variant-config, $query);\n }\n }\n\n // Extra specificity is to override .material-icons display style if used in\n // conjunction with mdc-list-item__graphic\n // stylelint-disable plugin/selector-bem-pattern\n .mdc-list .mdc-list-item__graphic {\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n }\n }\n // stylelint-enable plugin/selector-bem-pattern\n\n .mdc-list-item__meta {\n // stylelint-disable selector-class-pattern\n &:not(.material-icons) {\n @include typography.typography(caption, $query);\n }\n // stylelint-enable selector-class-pattern\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(margin, auto, 0, '.mdc-list-item');\n }\n }\n\n .mdc-list-item__text {\n @include typography.overflow-ellipsis($query);\n }\n\n // Disable interaction on label elements that may automatically\n // toggle corresponding checkbox / radio input.\n .mdc-list-item__text[for] {\n @include feature-targeting.targets($feat-structure) {\n pointer-events: none;\n }\n }\n\n .mdc-list-item__primary-text {\n @include typography.overflow-ellipsis($query);\n @include typography.text-baseline(\n $top: variables.$item-primary-text-baseline-height,\n $bottom: variables.$item-secondary-text-baseline-height,\n $display: block,\n $query: $query\n );\n\n .mdc-list--video-list &,\n .mdc-list--image-list &,\n .mdc-list--thumbnail-list &,\n .mdc-list--avatar-list &,\n .mdc-list--icon-list & {\n @include typography.text-baseline(\n $top: variables.$item-primary-text-baseline-height-with-graphic,\n $bottom: variables.$item-secondary-text-baseline-height,\n $query: $query\n );\n }\n\n // stylelint-disable plugin/selector-bem-pattern\n .mdc-list--dense & {\n @include typography.text-baseline(\n $top: variables.$dense-item-primary-text-baseline-height,\n $bottom: variables.$item-secondary-text-baseline-height,\n $query: $query\n );\n }\n // stylelint-enable plugin/selector-bem-pattern\n }\n\n .mdc-list-item__secondary-text {\n @include typography.typography(body2, $query);\n @include typography.overflow-ellipsis($query);\n @include typography.text-baseline(\n $top: variables.$item-secondary-text-baseline-height,\n $display: block,\n $query: $query\n );\n\n // stylelint-disable plugin/selector-bem-pattern\n .mdc-list--dense & {\n @include feature-targeting.targets($feat-structure) {\n font-size: inherit;\n }\n }\n // stylelint-enable plugin/selector-bem-pattern\n }\n\n // stylelint-disable plugin/selector-bem-pattern\n .mdc-list--dense .mdc-list-item {\n @include feature-targeting.targets($feat-structure) {\n height: 40px;\n }\n }\n\n .mdc-list--two-line .mdc-list-item__text {\n @include feature-targeting.targets($feat-structure) {\n align-self: flex-start;\n }\n }\n\n .mdc-list--two-line {\n .mdc-list-item {\n @include feature-targeting.targets($feat-structure) {\n height: variables.$two-line-height;\n }\n }\n\n &.mdc-list--video-list .mdc-list-item,\n &.mdc-list--image-list .mdc-list-item,\n &.mdc-list--thumbnail-list .mdc-list-item,\n &.mdc-list--avatar-list .mdc-list-item,\n &.mdc-list--icon-list .mdc-list-item {\n @include feature-targeting.targets($feat-structure) {\n height: variables.$two-line-graphic-height;\n }\n }\n\n // Icons in multiline lists are the only graphic that isn't centered.\n &.mdc-list--icon-list .mdc-list-item__graphic {\n @include feature-targeting.targets($feat-structure) {\n align-self: flex-start;\n margin-top: variables.$two-line-icon-top-margin;\n }\n }\n }\n\n .mdc-list--two-line.mdc-list--dense .mdc-list-item,\n .mdc-list--avatar-list.mdc-list--dense .mdc-list-item {\n @include feature-targeting.targets($feat-structure) {\n height: 60px;\n }\n }\n\n .mdc-list--avatar-list.mdc-list--dense .mdc-list-item__graphic {\n @include graphic-size-dense_(36px, $query);\n }\n\n // Only change mouse cursor for list items which are not disabled.\n :not(.mdc-list-item--disabled).mdc-list-item {\n @include feature-targeting.targets($feat-structure) {\n cursor: pointer;\n }\n }\n\n // Override anchor tag styles for the use-case of a list being used for navigation\n // stylelint-disable selector-max-type,selector-no-qualifying-type\n a.mdc-list-item {\n @include feature-targeting.targets($feat-structure) {\n color: inherit;\n text-decoration: none;\n }\n }\n // stylelint-enable selector-max-type,selector-no-qualifying-type\n\n .mdc-list-divider {\n @include feature-targeting.targets($feat-structure) {\n height: 0;\n margin: 0;\n border: none;\n border-bottom-width: 1px;\n border-bottom-style: solid;\n }\n }\n\n // Note: ideally we'd be able to hoist this to the top-level `$feat-color`, but doing so\n // will cause the `border` declaration on `.mdc-list-divider` above to override it.\n @include divider-color($divider-color, $query);\n\n // Deprecated. Use the specialized inset classes instead.\n // Items are fully inset using padding.\n .mdc-list-divider--padded {\n @include divider-inset-variant(\n variables.$textual-variant-config,\n $use-padding: true,\n $query: $query\n );\n }\n\n // Deprecated. Use the specialized inset classes instead.\n // Items's leading, but not trailing, edge is inset to account for *avatar*\n // width.\n .mdc-list-divider--inset {\n @include divider-inset-variant(\n variables.$avatar-variant-config,\n $trailing: false,\n $query: $query\n );\n }\n\n // Deprecated. Use the specialized inset classes instead.\n // Item's leading and trailing edges are inset to account for *avatar* width.\n .mdc-list-divider--inset.mdc-list-divider--padded {\n @include divider-inset-variant(\n variables.$avatar-variant-config,\n $query: $query\n );\n }\n\n .mdc-list {\n @include divider-insets-variant(\n variables.$textual-variant-config,\n $query: $query\n );\n }\n\n .mdc-list--icon-list {\n @include divider-insets-variant(\n variables.$icon-variant-config,\n $query: $query\n );\n }\n\n .mdc-list--avatar-list {\n @include divider-insets-variant(\n variables.$avatar-variant-config,\n $query: $query\n );\n }\n\n .mdc-list--thumbnail-list {\n @include divider-insets-variant(\n variables.$thumbnail-variant-config,\n $query: $query\n );\n }\n\n .mdc-list--image-list {\n @include divider-insets-variant(\n variables.$image-variant-config,\n $query: $query\n );\n }\n\n .mdc-list--video-list {\n @include divider-insets-variant(\n variables.$video-variant-config,\n $query: $query\n );\n }\n\n .mdc-list-group {\n @include feature-targeting.targets($feat-structure) {\n // Cancel top/bottom padding on individual lists within group\n .mdc-list {\n padding: 0;\n }\n }\n }\n\n .mdc-list-group__subheader {\n $mdc-list-subheader-virtual-height: 3rem;\n $mdc-list-subheader-leading: map.get(\n map.get(typography.$styles, body1),\n line-height\n );\n $mdc-list-subheader-margin: calc(\n (#{$mdc-list-subheader-virtual-height} - #{$mdc-list-subheader-leading}) /\n 2\n );\n\n @include typography.typography(subtitle1, $query);\n\n @include feature-targeting.targets($feat-structure) {\n margin: $mdc-list-subheader-margin variables.$side-padding;\n }\n }\n\n @include evolution-mixins.without-ripple($query: $query);\n}\n\n// This API is intended for use by frameworks that may want to separate the ripple-related styles from the other\n// list styles. It is recommended that most users use `mdc-list-core-styles` instead.\n@mixin ripple($query: feature-targeting.all()) {\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n // List items should support states by default, but it should be possible to opt out.\n :not(.mdc-list-item--disabled).mdc-list-item {\n @include item-interactive-ripple_($query);\n }\n\n // Set styles only for focus state on disabled list item.\n .mdc-list-item--disabled {\n @include ripple.surface(\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple.radius-bounded(\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states-base-color(\n theme-color.prop-value(on-surface),\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states-focus-opacity(\n ripple-theme.states-opacity(primary, focus),\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n\n #{variables.$ripple-target} {\n @include ripple.target-common($query: $query);\n }\n }\n\n @include evolution-mixins.with-ripple($query: $query);\n}\n\n///\n/// Sets ripple color for a list item.\n///\n@mixin ripple-states($color, $query: feature-targeting.all()) {\n @include ripple-theme.states(\n $color: $color,\n $query: $query,\n $ripple-target: variables.$ripple-target\n );\n}\n\n/// Sets the text color of the list item in selected or activated state.\n/// @param {color} $color - The desired text color.\n@mixin item-selected-text-color($color, $query: feature-targeting.all()) {\n // \"Selected\" is ephemeral and likely to change soon. E.g., selecting one or more photos to share in Google Photos.\n // \"Activated\" is more permanent. E.g., the currently highlighted navigation destination in a drawer.\n .mdc-list-item--selected,\n .mdc-list-item--activated {\n @include item-primary-text-ink-color($color, $query: $query);\n @include item-graphic-ink-color($color, $query: $query);\n }\n}\n\n@mixin item-primary-text-ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.prop(color, $color);\n }\n}\n\n@mixin item-secondary-text-ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-list-item__secondary-text {\n @include feature-targeting.targets($feat-color) {\n @include theme.prop(color, $color);\n }\n }\n}\n\n@mixin item-graphic-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-list-item__graphic {\n @include feature-targeting.targets($feat-color) {\n @include theme.prop(background-color, $color);\n }\n }\n}\n\n@mixin item-graphic-ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-list-item__graphic {\n @include feature-targeting.targets($feat-color) {\n @include theme.prop(color, $color);\n }\n }\n}\n\n@mixin item-meta-ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-list-item__meta {\n @include feature-targeting.targets($feat-color) {\n @include theme.prop(color, $color);\n }\n }\n}\n\n///\n/// Sets shape radius (rounded) to single line list variant.\n///\n/// @param {Number | List<Number>} $radius Radius size in `px` or percentage. It can be 4 value corner or single radius.\n/// Set to `50%` for rounded shape.\n/// @param {Boolean} $rtl-reflexive Set to true to flip border radius in RTL context. Defaults to `false`.\n/// @param {Number} $density-scale Density scale of single line list. Set this only when custom density is applied.\n/// Defaults to `$mdc-list-single-line-density-scale`.\n///\n/// @access public\n///\n@mixin single-line-shape-radius(\n $radius,\n $rtl-reflexive: false,\n $density-scale: variables.$single-line-density-scale,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: variables.$single-line-density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n .mdc-list-item {\n @include shape-mixins.radius(\n $radius,\n $rtl-reflexive,\n $component-height: $height,\n $query: $query\n );\n }\n}\n\n@mixin divider-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-list-divider {\n @include feature-targeting.targets($feat-color) {\n @include theme.prop(border-bottom-color, $color);\n }\n }\n}\n\n@mixin group-subheader-ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-list-group__subheader {\n @include feature-targeting.targets($feat-color) {\n @include theme.prop(color, $color);\n }\n }\n}\n\n@mixin item-disabled-text-opacity($opacity, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-list-item--disabled .mdc-list-item__text {\n @include feature-targeting.targets($feat-color) {\n opacity: $opacity;\n }\n }\n}\n\n@mixin item-disabled-text-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-list-item--disabled {\n .mdc-list-item__text,\n .mdc-list-item__primary-text,\n .mdc-list-item__secondary-text {\n @include feature-targeting.targets($feat-color) {\n @include theme.prop(color, $color);\n }\n }\n }\n}\n\n///\n/// Establishes each list item's padding using a variant config.\n///\n/// @param {Map} $variant-config The list variant's configuration.\n///\n/// @access public\n///\n@mixin list-item-padding-variant(\n $variant-config,\n $query: feature-targeting.all()\n) {\n $leading-padding: map.get($variant-config, leading-padding);\n @include list-item-padding($leading-padding, $query);\n}\n\n///\n/// Establishes each list item's padding.\n///\n/// @param {Number} $leading-padding The item's leading padding.\n///\n/// @access public\n///\n@mixin list-item-padding($leading-padding, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n padding,\n $leading-padding,\n variables.$trailing-padding\n );\n }\n}\n\n///\n/// Establishes each list item's single line height using a variant config.\n///\n/// @param {Map} $variant-config The list variant's configuration.\n///\n/// @access public\n///\n@mixin list-item-height-variant(\n $variant-config,\n $query: feature-targeting.all()\n) {\n $single-line-height: map.get($variant-config, single-line-height);\n @include list-item-height($single-line-height, $query);\n}\n\n///\n/// Establishes each list item's height.\n///\n/// @param {Number} $height The item's height.\n///\n/// @access public\n///\n@mixin list-item-height($height, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n}\n\n///\n/// Sets the trailing margin used by icons.\n///\n/// @param {Number} $margin The trailing margin applied to icons.\n///\n/// @access public\n///\n@mixin icon-margin($margin, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n .mdc-list-item__graphic {\n @include rtl-mixins.reflexive-box(margin, right, $margin);\n }\n }\n}\n\n///\n/// Sets divider inset sizes for each list variant.\n///\n/// @param {Map} $variant-config The list variant's configuration.\n///\n/// @access public\n///\n@mixin divider-insets-variant(\n $variant-config,\n $query: feature-targeting.all()\n) {\n $leading-padding: map.get($variant-config, leading-padding);\n $text-offset: map.get($variant-config, text-offset);\n @include divider-insets($leading-padding, $text-offset, $query);\n}\n\n///\n/// Sets divider inset sizes for each list variant.\n///\n/// @param {Number} $leading-padding The item's leading padding.\n/// @param {Number} $text-offset The item's text offset.\n///\n/// @access public\n///\n@mixin divider-insets(\n $leading-padding,\n $text-offset,\n $query: feature-targeting.all()\n) {\n .mdc-list-divider--inset-leading {\n @include divider-inset(\n $leading-padding,\n $text-offset,\n $trailing: false,\n $query: $query\n );\n }\n\n .mdc-list-divider--inset-trailing {\n @include divider-inset(\n $leading-padding,\n $text-offset,\n $leading: false,\n $query: $query\n );\n }\n\n .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing {\n @include divider-inset($leading-padding, $text-offset, $query: $query);\n }\n\n .mdc-list-divider--inset-leading.mdc-list-divider--padding {\n @include divider-inset(\n $leading-padding,\n $text-offset,\n $trailing: false,\n $use-padding: true,\n $query: $query\n );\n }\n\n .mdc-list-divider--inset-leading.mdc-list-divider--inset-trailing.mdc-list-divider--inset-padding {\n @include divider-inset(\n $leading-padding,\n $text-offset,\n $use-padding: true,\n $query: $query\n );\n }\n}\n\n// Sets the width and height of the graphic element using a variant config.\n@mixin graphic-size-variant($variant-config, $query: feature-targeting.all()) {\n $leading-padding: map.get($variant-config, leading-padding);\n $text-offset: map.get($variant-config, text-offset);\n $width: map.get(map.get($variant-config, graphic-size), width);\n $height: map.get(map.get($variant-config, graphic-size), height);\n\n @include graphic-size(\n $leading-padding,\n $text-offset,\n $width,\n $height,\n $query\n );\n}\n\n// Sets the width and height of the graphic element, as well as calculates the\n// trailing margin for the graphic element such that the text is always offset\n// from the item's leading edge by 72px, which is defined within the spec. If\n// height isn't specified, the graphic is assumed to be square.\n// TODO(b/155397992): restructure to use symmetric margins.\n@mixin graphic-size(\n $leading-padding,\n $text-offset,\n $width,\n $height,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $margin-value: max(\n $text-offset - $leading-padding - $width,\n $leading-padding\n );\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(margin, right, $margin-value);\n width: $width;\n height: $height;\n }\n}\n\n// Deprecated. Supports legacy density styles.\n@mixin graphic-size-dense_($size, $query: feature-targeting.all()) {\n @include graphic-size(\n $leading-padding: 16px,\n $text-offset: 16px,\n $width: $size,\n $height: $size,\n $query: $query\n );\n}\n\n///\n/// Computes the appropriate leading inset for a divider based on list type.\n///\n/// @param {String} $variant-config The list variant configuration.\n/// @param {Boolean} $leading Whether to apply the leading inset.\n/// @param {Boolean} $trailing Whether to apply the trailing inset.\n/// @param {Boolean} $use-padding Whether to align with padding vs. text offset.\n///\n/// @access private\n///\n@mixin divider-inset-variant(\n $variant-config,\n $leading: true,\n $trailing: true,\n $use-padding: false,\n $query: feature-targeting.all()\n) {\n $leading-padding: map.get($variant-config, leading-padding);\n $text-offset: map.get($variant-config, text-offset);\n\n @include divider-inset(\n $leading-padding,\n $text-offset,\n $leading,\n $trailing,\n $use-padding,\n $query\n );\n}\n\n@mixin divider-inset(\n $leading-padding,\n $text-offset,\n $leading: true,\n $trailing: true,\n $use-padding: false,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $trailing-inset: if($trailing, variables.$trailing-padding, 0);\n $leading-inset: if(\n $leading,\n if($use-padding, $leading-padding, $text-offset),\n 0\n );\n\n @include feature-targeting.targets($feat-structure) {\n @if $leading {\n @include rtl-mixins.reflexive-box(margin, left, $leading-inset);\n }\n width: calc(100% - #{$leading-inset + $trailing-inset});\n }\n}\n\n///\n/// Sets density scale to single line list variant.\n///\n/// @param {Number} $density-scale Density scale for list. Supported density scales are `-4`, `-3`, `-2`, `-1` and `0`.\n///\n/// @access public\n///\n@mixin single-line-density($density-scale, $query: feature-targeting.all()) {\n $height: density-functions.prop-value(\n $density-config: variables.$single-line-density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n .mdc-list-item {\n @include single-line-height($height, $query: $query);\n }\n}\n\n///\n/// Sets height to single line list variant.\n///\n/// @param {Number} $height Height value in `px`.\n///\n/// @access public\n///\n@mixin single-line-height($height, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n}\n\n//\n// Private\n//\n\n@mixin base_($query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-typography: feature-targeting.create-target($query, typography);\n\n @include typography.typography(subtitle1, $query);\n\n @include feature-targeting.targets($feat-typography) {\n // According to the mocks and stickersheet, the line-height is\n // adjusted to 24px for text content, same as for body1.\n /* @alternate */\n line-height: map.get(map.get(typography.$styles, body1), line-height);\n }\n\n @include feature-targeting.targets($feat-structure) {\n margin: 0;\n padding: 8px 0;\n list-style-type: none;\n\n &:focus {\n outline: none;\n }\n }\n\n @include item-primary-text-ink-color(text-primary-on-background, $query);\n}\n\n@mixin item-base_ {\n display: flex;\n position: relative;\n align-items: center;\n justify-content: flex-start;\n overflow: hidden;\n padding: 0;\n\n &:focus {\n outline: none;\n }\n}\n\n// Ripple styles for an interactive list item (one that is enabled and inside an interactive list).\n@mixin item-interactive-ripple_($query: feature-targeting.all()) {\n @include ripple.surface(\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple.radius-bounded(\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states(\n theme-color.prop-value(on-surface),\n false,\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states-activated(\n primary,\n false,\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states-selected(\n primary,\n false,\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n\n #{variables.$ripple-target} {\n @include ripple.target-common($query: $query);\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/theme';\n@use '@material/theme/custom-properties';\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/animation/variables' as animation-variables;\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/rtl/mixins' as rtl-mixins;\n@use './variables';\n@use './menu-surface-custom-properties';\n\n//\n// Public\n//\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // postcss-bem-linter: define menu-surface\n .mdc-menu-surface {\n @include base_($query);\n @include elevation-mixins.elevation($z-value: 8, $query: $query);\n @include fill-color(surface, $query);\n @include ink-color(on-surface, $query);\n @include shape-radius(variables.$shape-radius, false, $query);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n transform-origin,\n top left,\n top right\n );\n }\n }\n\n .mdc-menu-surface--anchor {\n @include feature-targeting.targets($feat-structure) {\n position: relative;\n overflow: visible;\n }\n }\n\n .mdc-menu-surface--fixed {\n @include feature-targeting.targets($feat-structure) {\n position: fixed;\n }\n }\n\n .mdc-menu-surface--fullwidth {\n @include feature-targeting.targets($feat-structure) {\n width: 100%;\n }\n }\n // postcss-bem-linter: end\n}\n\n@mixin ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n}\n\n@mixin fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n}\n\n@mixin shape-radius(\n $radius,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n @include shape-mixins.radius($radius, $rtl-reflexive, $query: $query);\n}\n\n// Used by filled variants of GM components to conditionally flatten the top\n// corners of the menu.\n@mixin flatten-top-when-opened-below($query: feature-targeting.all()) {\n .mdc-menu-surface--is-open-below {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n border-top-left-radius: 0px;\n border-top-right-radius: 0px;\n }\n }\n}\n\n//\n// Private\n//\n\n@mixin base_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include feature-targeting.targets($feat-structure) {\n display: none;\n position: absolute;\n box-sizing: border-box;\n\n $max-width: custom-properties.create(\n menu-surface-custom-properties.$max-width,\n calc(100vw - #{variables.$min-distance-from-edge})\n );\n @include theme.property(max-width, $max-width);\n $max-height: custom-properties.create(\n menu-surface-custom-properties.$max-height,\n calc(100vh - #{variables.$min-distance-from-edge})\n );\n @include theme.property(max-height, $max-height);\n margin: 0;\n padding: 0;\n transform: scale(1);\n transform-origin: top left;\n opacity: 0;\n overflow: auto;\n will-change: transform, opacity;\n z-index: variables.$z-index;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: opacity variables.$fade-in-duration linear,\n transform variables.$scale-duration\n animation-variables.$deceleration-curve-timing-function,\n height 250ms animation-variables.$deceleration-curve-timing-function;\n }\n\n &:focus {\n @include feature-targeting.targets($feat-structure) {\n outline: none;\n }\n }\n\n // stylelint-disable-next-line selector-max-type\n &--open {\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n transform: scale(1);\n opacity: 1;\n }\n }\n\n &--animating-open {\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n transform: scale(0.8);\n opacity: 0;\n }\n }\n\n &--animating-closed {\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n opacity: 0;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: opacity variables.$fade-out-duration linear;\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/menu-surface/mixins' as menu-surface-mixins;\n@use '@material/rtl/mixins' as rtl-mixins;\n@use './select-icon-theme';\n@use './select-theme';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select--filled {\n @include select-theme.filled-height(select-theme.$height, $query: $query);\n @include select-theme.filled-shape-radius(\n select-theme.$shape-radius,\n $query: $query\n );\n\n @include select-theme.container-fill-color(\n (\n default: select-theme.$fill-color,\n disabled: select-theme.$disabled-fill-color,\n ),\n $query: $query\n );\n\n @include select-theme.bottom-line-color(\n (\n default: select-theme.$bottom-line-idle-color,\n focus: primary,\n hover: select-theme.$bottom-line-hover-color,\n disabled: select-theme.$disabled-bottom-line-color,\n ),\n $query: $query\n );\n\n @include select-theme.truncate-floating-label-max-width(\n $leading-icon-size: 0,\n $dropdown-icon-size: select-icon-theme.$icon-size,\n $query: $query\n );\n\n @include menu-surface-mixins.flatten-top-when-opened-below($query: $query);\n\n &.mdc-select--focused.mdc-line-ripple::after {\n @include feature-targeting.targets($feat-structure) {\n transform: scale(1, 2);\n opacity: 1;\n }\n }\n\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(\n left,\n select-theme.$outline-label-offset\n );\n }\n }\n\n &.mdc-select--with-leading-icon {\n @include select-theme.leading-icon-floating-label-position(\n select-icon-theme.$icon-size,\n $query: $query\n );\n\n @include select-theme.truncate-floating-label-max-width(\n $leading-icon-size: select-icon-theme.$icon-size,\n $dropdown-icon-size: select-icon-theme.$icon-size,\n $query: $query\n );\n }\n }\n\n .mdc-select--invalid {\n @include select-theme.bottom-line-color(\n (\n default: select-theme.$error-color,\n hover: select-theme.$error-color,\n focus: select-theme.$error-color,\n ),\n $query: $query\n );\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/floating-label/mixins' as floating-label-mixins;\n@use '@material/notched-outline/mixins' as notched-outline-mixins;\n@use '@material/notched-outline/variables' as notched-outline-variables;\n@use '@material/rtl/mixins' as rtl-mixins;\n@use './select-icon-theme';\n@use './select-theme';\n\n@mixin core-styles($query: feature-targeting.all()) {\n .mdc-select--outlined {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-color: feature-targeting.create-target($query, color);\n\n @include select-theme.outlined-height(select-theme.$height, $query: $query);\n @include select-theme.outline-shape-radius(\n select-theme.$shape-radius,\n $query: $query\n );\n\n @include select-theme.container-fill-color(\n (\n default: transparent,\n disabled: transparent,\n ),\n $query: $query\n );\n\n @include select-theme.outline-color(\n (\n default: select-theme.$outlined-idle-border,\n hover: select-theme.$outlined-hover-border,\n focus: primary,\n disabled: select-theme.$disabled-outline-color,\n ),\n $query: $query\n );\n\n @include select-theme.truncate-notched-outline-max-width(\n $leading-icon-size: 0,\n $dropdown-icon-size: select-icon-theme.$icon-size,\n $query: $query\n );\n\n @include feature-targeting.targets($feat-structure) {\n border: none;\n }\n\n .mdc-select__anchor {\n @include floating-label-mixins.shake-animation(\n select-outlined,\n $query: $query\n );\n @include notched-outline-mixins.floating-label-float-position-absolute(\n select-theme.$outlined-label-position-y,\n $query: $query\n );\n @include notched-outline-mixins.notch-offset(\n notched-outline-variables.$border-width,\n $query: $query\n );\n @include select-theme.center-aligned($query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n // To eliminate extra gap between helper text & outlined select in IE.\n align-items: baseline;\n overflow: visible;\n }\n }\n\n .mdc-select__selected-text-container {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n border: none;\n z-index: 1;\n }\n\n @include feature-targeting.targets($feat-color) {\n background-color: transparent;\n }\n }\n\n .mdc-select__icon {\n @include feature-targeting.targets($feat-structure) {\n z-index: 2;\n }\n }\n\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n line-height: 1.15rem;\n\n @include rtl-mixins.reflexive-position(\n left,\n notched-outline-variables.$padding\n );\n }\n }\n\n &.mdc-select--focused {\n @include notched-outline-mixins.notch-offset(\n select-theme.$outlined-stroke-width,\n $query: $query\n );\n }\n\n &.mdc-select--invalid {\n @include select-theme.outline-color(\n (\n default: select-theme.$error-color,\n hover: select-theme.$error-color,\n focus: select-theme.$error-color,\n ),\n $query: $query\n );\n }\n\n &.mdc-select--with-leading-icon {\n @include select-theme.outlined-with-leading-icon-floating-label-position-animation(\n select-theme.$height,\n select-icon-theme.$icon-size,\n $query: $query\n );\n @include select-theme.truncate-notched-outline-max-width(\n $leading-icon-size: select-icon-theme.$icon-size,\n $dropdown-icon-size: select-icon-theme.$icon-size,\n $query: $query\n );\n }\n\n .mdc-menu-surface {\n @include feature-targeting.targets($feat-structure) {\n margin-bottom: 8px;\n }\n }\n\n &.mdc-select--no-label .mdc-menu-surface,\n .mdc-menu-surface--is-open-below {\n @include feature-targeting.targets($feat-structure) {\n margin-bottom: 0;\n }\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/list/mixins' as list-mixins;\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use './select-theme';\n\n@mixin core-styles($query: feature-targeting.all()) {\n .mdc-select__anchor {\n @include ripple.surface(\n $ripple-target: select-theme.$ripple-target,\n $query: $query\n );\n @include ripple.radius-bounded(\n $ripple-target: select-theme.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states-base-color(\n select-theme.$ink-color,\n $ripple-target: select-theme.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states-opacities(\n (\n hover: ripple-theme.states-opacity(select-theme.$ink-color, hover),\n focus: ripple-theme.states-opacity(select-theme.$ink-color, focus),\n ),\n $ripple-target: select-theme.$ripple-target,\n $query: $query\n );\n\n #{select-theme.$ripple-target} {\n @include ripple.target-common($query: $query);\n }\n }\n\n .mdc-select__menu .mdc-list .mdc-list-item--selected {\n @include list-mixins.ripple-states(on-surface, $query: $query);\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/animation/variables';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/typography/mixins' as typography-mixins;\n\n@mixin helper-text-core-styles($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select-helper-text {\n @include feature-targeting.targets($feat-structure) {\n margin: 0;\n @include rtl-mixins.reflexive-property(margin, 16px, 16px);\n }\n @include typography-mixins.typography(caption, $query: $query);\n @include typography-mixins.text-baseline(16px, $query: $query);\n }\n\n .mdc-select-helper-text--validation-msg {\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: opacity 180ms variables.$standard-curve-timing-function;\n }\n }\n\n .mdc-select--invalid + .mdc-select-helper-text--validation-msg,\n .mdc-select-helper-text--validation-msg-persistent {\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/feature-targeting/feature-targeting';\n@use './select-icon-theme';\n\n@mixin icon-core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-select--with-leading-icon {\n @include _icon($query: $query);\n @include select-icon-theme.icon-horizontal-margins(\n $left: select-icon-theme.$icon-horizontal-margin,\n $right: select-icon-theme.$icon-horizontal-margin,\n $query: $query\n );\n }\n\n .mdc-select__icon:not([tabindex]),\n .mdc-select__icon[tabindex='-1'] {\n @include feature-targeting.targets($feat-structure) {\n cursor: default;\n pointer-events: none;\n }\n }\n}\n\n@mixin _icon($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-select__icon {\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n box-sizing: border-box;\n border: none;\n text-decoration: none;\n cursor: pointer;\n user-select: none;\n flex-shrink: 0;\n align-self: center;\n }\n\n @include feature-targeting.targets($feat-color) {\n background-color: transparent;\n fill: currentColor;\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern\n// NOTE: We disable `selector-class-pattern` above to allow using `mdc-` class\n// selectors.\n\n@use 'sass:list';\n@use '@material/animation/functions';\n@use '@material/checkbox/mixins' as checkbox-mixins;\n@use '@material/density/functions' as density-functions;\n@use '@material/dom/mixins' as dom;\n@use '@material/elevation/mixins';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/icon-button/mixins' as icon-button-mixins;\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n@use '@material/typography/typography';\n@use './data-table-cell';\n@use './data-table-header-cell';\n@use './data-table-pagination';\n@use './data-table-progress-indicator';\n@use './data-table-theme';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-typography: feature-targeting.create-target($query, typography);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n // postcss-bem-linter: define data-table\n\n .mdc-data-table__content {\n @include typography.typography(body2, $query: $query);\n }\n\n .mdc-data-table {\n @include data-table-theme.fill-color(\n data-table-theme.$fill-color,\n $query: $query\n );\n @include data-table-theme.shape-radius(\n data-table-theme.$shape-radius,\n $query: $query\n );\n @include data-table-theme.stroke-size(\n data-table-theme.$stroke-size,\n $query: $query\n );\n @include data-table-theme.stroke-color(\n data-table-theme.$stroke-color,\n $query: $query\n );\n\n @include feature-targeting.targets($feat-structure) {\n // Makes the table scroll smoothly in iOS.\n // NOTE: Root element should not be scrollable, added this for backward\n // compatibility.\n -webkit-overflow-scrolling: touch;\n display: inline-flex;\n flex-direction: column;\n box-sizing: border-box;\n position: relative;\n }\n }\n\n // Note that we don't output the color styles inside the `@at-root`,\n // because it makes it difficult to consume by projects that wrap their\n // themes in a class (e.g. `.my-theme { @include mdc-data-table-core-style() }`).\n @include data-table-theme.row-fill-color(\n data-table-theme.$row-fill-color,\n $query: $query\n );\n @include data-table-theme.header-row-fill-color(\n data-table-theme.$header-row-fill-color,\n $query: $query\n );\n @include data-table-theme.selected-row-fill-color(\n data-table-theme.$selected-row-fill-color,\n $query: $query\n );\n @include data-table-theme.divider-color(\n data-table-theme.$divider-color,\n $query: $query\n );\n @include data-table-theme.divider-size(\n data-table-theme.$divider-size,\n $query: $query\n );\n @include data-table-theme.row-hover-fill-color(\n data-table-theme.$row-hover-fill-color,\n $query: $query\n );\n @include data-table-theme.header-row-text-color(\n data-table-theme.$header-row-text-color,\n $query: $query\n );\n @include data-table-theme.row-text-color(\n data-table-theme.$row-text-color,\n $query: $query\n );\n @include data-table-theme.density(\n data-table-theme.$default-density-scale,\n $query: $query\n );\n @include data-table-theme.cell-padding(\n $leading-padding: data-table-theme.$cell-leading-padding,\n $trailing-padding: data-table-theme.$cell-trailing-padding,\n $query: $query\n );\n @include data-table-theme.sort-icon-color(\n data-table-theme.$sort-icon-color,\n $query: $query\n );\n @include data-table-theme.sort-icon-active-color(\n data-table-theme.$sort-icon-active-color,\n $query: $query\n );\n\n .mdc-data-table__table-container {\n @include feature-targeting.targets($feat-structure) {\n // Makes the table scroll smoothly in iOS.\n -webkit-overflow-scrolling: touch;\n overflow-x: auto;\n width: 100%;\n }\n }\n\n .mdc-data-table__table {\n @include feature-targeting.targets($feat-structure) {\n min-width: 100%; // Makes table full-width of its container (Firefox / IE11)\n border: 0;\n white-space: nowrap;\n border-collapse: collapse;\n /**\n * With table-layout:fixed, table and column widths are defined by the width\n * of the first row of cells. Cells in subsequent rows do not affect column\n * widths. This results in a predictable table layout and may also speed up\n * rendering.\n */\n table-layout: fixed;\n }\n }\n\n @include data-table-cell.core-styles($query: $query);\n @include data-table-header-cell.core-styles($query: $query);\n @include data-table-progress-indicator.core-styles($query: $query);\n\n .mdc-data-table--sticky-header {\n @include _sticky-header($query: $query);\n }\n\n @include data-table-pagination.core-styles($query: $query);\n}\n\n@mixin theme-baseline($query: feature-targeting.all()) {\n @include data-table-theme.checked-icon-color(\n data-table-theme.$checked-icon-color,\n $query: $query\n );\n}\n\n/// Sets styles required to support sticky header row.\n@mixin _sticky-header($query: $query) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include data-table-header-cell.header-cell-sticky($query: $query);\n\n .mdc-data-table__row:first-child {\n @include feature-targeting.targets($feat-structure) {\n border-top: 0;\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern\n// NOTE: We disable `selector-class-pattern` above to allow using `mdc-` class\n// selectors.\n\n@use 'sass:list';\n@use 'sass:meta';\n@use '@material/animation/functions';\n@use '@material/checkbox/checkbox-theme';\n@use '@material/density/functions' as density-functions;\n@use '@material/density/variables' as density-variables;\n@use '@material/elevation/mixins';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/icon-button/mixins' as icon-button-mixins;\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/select/select-theme';\n@use '@material/shape/functions' as shape-functions;\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n@use '@material/touch-target/touch-target';\n@use '@material/typography/typography';\n\n$fill-color: surface !default;\n$header-row-fill-color: surface !default;\n$row-fill-color: inherit !default;\n$selected-row-fill-color: rgba(theme-color.prop-value(primary), 0.04) !default;\n$checked-icon-color: primary !default;\n$divider-color: rgba(theme-color.prop-value(on-surface), 0.12) !default;\n$divider-size: 1px !default;\n$row-hover-fill-color: rgba(theme-color.prop-value(on-surface), 0.04) !default;\n\n$header-row-text-color: rgba(theme-color.prop-value(on-surface), 0.87) !default;\n$row-text-color: rgba(theme-color.prop-value(on-surface), 0.87) !default;\n\n$sort-icon-color: rgba(theme-color.prop-value(on-surface), 0.6) !default;\n$sort-icon-active-color: rgba(\n theme-color.prop-value(on-surface),\n 0.87\n) !default;\n$sort-icon-density-scale: -5 !default;\n\n$shape-radius: medium !default;\n$stroke-size: 1px !default;\n$stroke-color: rgba(theme-color.prop-value(on-surface), 0.12) !default;\n\n$cell-height: 52px !default;\n$header-cell-height: get-header-cell-height($cell-height) !default;\n$cell-leading-padding: 16px !default;\n$cell-trailing-padding: 16px !default;\n\n$minimum-cell-height: 36px !default;\n$maximum-cell-height: $cell-height !default;\n$default-density-scale: density-variables.$default-scale !default;\n$density-config: (\n height: (\n maximum: $cell-height,\n default: $cell-height,\n minimum: $minimum-cell-height,\n ),\n);\n$pagination-rows-per-page-select-height: 36px;\n\n@function get-header-cell-height($height) {\n @return $height + 4px;\n}\n\n/// Sets the color of sort icon button when it is in idle state.\n/// (icon showed on header cell focus)\n/// @param {String} $color - Color of sort icon button\n@mixin sort-icon-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-data-table__sort-icon-button {\n @include icon-button-mixins.ink-color($color, $query: $query);\n }\n}\n\n/// Sets the color of sort icon button when it is activated (sorted).\n/// @param {String} $color - Color of sort icon button\n@mixin sort-icon-active-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-data-table__header-cell--sorted .mdc-data-table__sort-icon-button {\n @include icon-button-mixins.ink-color($color, $query: $query);\n }\n}\n\n@mixin fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property('background-color', $color);\n }\n}\n\n@mixin header-row-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n // Set background color to cell instead of row to support sticky header.\n .mdc-data-table__header-cell {\n @include feature-targeting.targets($feat-color) {\n @include theme.property('background-color', $color);\n }\n }\n}\n\n@mixin row-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-data-table__row {\n @include feature-targeting.targets($feat-color) {\n @include theme.property('background-color', $color);\n }\n }\n}\n\n@mixin selected-row-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-data-table__row--selected {\n @include feature-targeting.targets($feat-color) {\n @include theme.property('background-color', $color);\n }\n }\n}\n\n@mixin checked-icon-color($color, $query: feature-targeting.all()) {\n .mdc-data-table__header-row-checkbox,\n .mdc-data-table__row-checkbox {\n @include checkbox-theme.focus-indicator-color($color, $query: $query);\n @include checkbox-theme.container-colors(\n $marked-stroke-color: $color,\n $marked-fill-color: $color,\n $query: $query\n );\n }\n}\n\n///\n/// Sets divider color of data table (including outline color of rows per page\n/// select). Use `stroke-color()` to set table border color.\n/// @param {Color} $color Divider color.\n///\n@mixin divider-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-data-table__header-cell:after {\n @include feature-targeting.targets($feat-color) {\n border-bottom-color: $color;\n }\n }\n .mdc-data-table__pagination-rows-per-page-select {\n @include select-theme.outline-color($color, $query: $query);\n }\n\n .mdc-data-table__row,\n .mdc-data-table__pagination {\n @include feature-targeting.targets($feat-color) {\n border-top-color: $color;\n }\n }\n}\n\n@mixin divider-size($size, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-data-table__header-cell:after {\n @include feature-targeting.targets($feat-structure) {\n border-bottom-style: solid;\n border-bottom-width: $size;\n }\n }\n\n .mdc-data-table__row,\n .mdc-data-table__pagination {\n @include feature-targeting.targets($feat-structure) {\n border-top-width: $size;\n border-top-style: solid;\n }\n }\n}\n\n@mixin row-hover-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-data-table__row:not(.mdc-data-table__row--selected):hover {\n @include feature-targeting.targets($feat-color) {\n @include theme.property('background-color', $color);\n }\n }\n}\n\n@mixin header-row-text-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-data-table__header-cell {\n @include feature-targeting.targets($feat-color) {\n @include theme.property('color', $color);\n }\n }\n}\n\n///\n/// Sets row text color (including pagination row text).\n/// @param {Color} $color Row text color\n///\n@mixin row-text-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-data-table__pagination-total,\n .mdc-data-table__pagination-rows-per-page-label,\n .mdc-data-table__cell {\n @include feature-targeting.targets($feat-color) {\n @include theme.property('color', $color);\n }\n }\n}\n\n///\n/// Sets rounded shape radius to data table.\n/// @param {Number|List} $radius - Shape radius in `border-radius` CSS format.\n/// @param {Boolean} $rtl-reflexive - Set to `true` to flip radius corners in\n/// RTL context.\n///\n@mixin shape-radius(\n $radius,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include shape-mixins.radius($radius, $rtl-reflexive, $query: $query);\n\n // Apply same border radius as parent to leading & trailing header cells.\n // Header cells have explicite background color applied which requires border\n // radius to take its parent rounded shape.\n $border-radius: shape-functions.unpack-radius($radius);\n $top-left-radius: shape-functions.resolve-radius(list.nth($border-radius, 1));\n $top-right-radius: shape-functions.resolve-radius(\n list.nth($border-radius, 2)\n );\n\n .mdc-data-table__header-cell:first-child {\n @include feature-targeting.targets($feat-structure) {\n @include theme.property(border-top-left-radius, $top-left-radius);\n\n @include rtl-mixins.rtl {\n @include theme.property(\n border-top-right-radius,\n if($rtl-reflexive, $top-left-radius, $top-right-radius)\n );\n\n border-top-left-radius: 0;\n }\n }\n }\n\n .mdc-data-table__header-cell:last-child {\n @include feature-targeting.targets($feat-structure) {\n @include theme.property(border-top-right-radius, $top-right-radius);\n\n @include rtl-mixins.rtl {\n @include theme.property(\n border-top-left-radius,\n if($rtl-reflexive, $top-right-radius, $top-left-radius)\n );\n\n border-top-right-radius: 0;\n }\n }\n }\n}\n\n@mixin stroke-size($size, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n border-width: $size;\n border-style: solid;\n }\n}\n\n@mixin stroke-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n border-color: $color;\n }\n}\n\n@mixin header-cell-height($height, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-data-table__header-cell {\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n }\n}\n\n@mixin cell-height($height, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-data-table__cell {\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n }\n\n .mdc-data-table__pagination {\n @include feature-targeting.targets($feat-structure) {\n min-height: $height;\n }\n }\n}\n\n///\n/// Sets cell padding including cell, header cell, row checkbox cell and header\n/// row checkbox cell.\n/// @param {Number} $leading-padding [$cell-leading-padding] Leading padding.\n/// @param {Number} $trailing-padding [$cell-trailing-padding] Trailing padding.\n/// @param {Number} $checkbox-touch-size [$checkbox-touch-size] Checkbox Touch\n/// Size. Use this to adjust row checkbox cell leading padding based on\n/// checkbox density scale.\n/// @param {Number} $row-checkbox-density-scale [null] Density scale of row\n/// checkbox. Use this to adjust alignment of row checkbox within a cell.\n/// Ignore if data table's density scale is 0.\n/// See `checkbox-theme.density()` mixin for supported density scales.\n///\n@mixin cell-padding(\n $leading-padding: $cell-leading-padding,\n $trailing-padding: $cell-trailing-padding,\n $row-checkbox-density-scale: null,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-data-table__cell,\n .mdc-data-table__header-cell {\n @include feature-targeting.targets($feat-structure) {\n padding-right: $trailing-padding;\n padding-left: $leading-padding;\n }\n }\n\n @include checkbox-cell-padding(\n $leading-padding: $leading-padding,\n $row-checkbox-density-scale: $row-checkbox-density-scale,\n $query: $query\n );\n}\n\n///\n/// Sets only row checkbox cell and header row checkbox cell leading padding.\n/// Use `cell-padding()` to set all cell's padding.\n/// @param {Number} $leading-padding [$cell-leading-padding] Leading padding.\n/// @param {Number} $checkbox-touch-size [$checkbox-touch-size] Checkbox Touch\n/// Size. Use this to adjust row checkbox cell leading padding based on\n/// checkbox density scale.\n/// @param {Number} $row-checkbox-density-scale [null] Density scale of row\n/// checkbox. Use this to adjust alignment of row checkbox within a cell.\n/// Ignore if data table's density scale is 0.\n/// See `checkbox-theme.density()` mixin for supported density scales.\n///\n@mixin checkbox-cell-padding(\n $leading-padding: $cell-leading-padding,\n $row-checkbox-density-scale: null,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-data-table__header-cell--checkbox,\n .mdc-data-table__cell--checkbox {\n @include feature-targeting.targets($feat-structure) {\n // Distance from leading cell bound to checkbox's icon bound should be\n // 16dp (`$leading-padding`). Calculate required padding excluding\n // checkbox bounds.\n $checkbox-icon-size: 24px;\n $checkbox-touch-size: touch-target.$height;\n @if $row-checkbox-density-scale and $row-checkbox-density-scale < 0 {\n $checkbox-touch-size: checkbox-theme.get-ripple-size(\n $row-checkbox-density-scale\n );\n }\n $leading-padding: $leading-padding -\n ($checkbox-touch-size - $checkbox-icon-size) / 2;\n @include rtl-mixins.reflexive-property(padding, $leading-padding, 0);\n }\n }\n}\n\n@mixin column-widths($width-list, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @for $i from 1 through list.length($width-list) {\n .mdc-data-table__row > :nth-child(#{$i}) {\n @include feature-targeting.targets($feat-structure) {\n width: list.nth($width-list, $i);\n }\n }\n }\n}\n\n///\n/// Sets density scale for data table. Use corresponding density mixins of child components (such as Checkbox) to apply\n/// density scales which will be rendered inside data table.\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values `-4`,\n/// `-3`, `-2`, `-1`, `0`.\n/// @param {Number} $row-checkbox-density-scale [null] Density scale of row\n/// checkbox. Use this to set density of row checkbox and also\n/// automatically adjust the alignment of row checkbox within a cell.\n/// See `checkbox.density()` mixin for supported density scales.\n///\n@mixin density(\n $density-scale,\n $row-checkbox-density-scale: null,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: $density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include cell-height($height, $query: $query);\n @include header-cell-height(get-header-cell-height($height), $query: $query);\n\n @if $row-checkbox-density-scale {\n @include checkbox-cell-padding(\n $leading-padding: $cell-leading-padding,\n $row-checkbox-density-scale: $row-checkbox-density-scale,\n $query: $query\n );\n\n .mdc-data-table__header-row-checkbox,\n .mdc-data-table__row-checkbox {\n @include checkbox-theme.density($row-checkbox-density-scale);\n }\n }\n}\n\n///\n/// Sets maximum height of data table. Use this to make table vertically\n/// scrollable.\n/// @param {Number} $height\n///\n@mixin max-height($height, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-data-table__table-container {\n @include feature-targeting.targets($feat-structure) {\n max-height: $height;\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern\n// NOTE: We disable `selector-class-pattern` above to allow using `mdc-` class\n// selectors.\n\n@use 'sass:list';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/typography/typography';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-typography: feature-targeting.create-target($query, typography);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n .mdc-data-table__cell {\n @include typography.typography(body2, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n box-sizing: border-box;\n overflow: hidden;\n text-align: left;\n text-overflow: ellipsis;\n\n @include rtl-mixins.rtl {\n /* @noflip */\n text-align: right;\n }\n }\n }\n\n .mdc-data-table__cell--numeric {\n @include feature-targeting.targets($feat-structure) {\n text-align: right;\n }\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.rtl {\n /* @noflip */\n text-align: left;\n }\n }\n }\n\n .mdc-data-table__cell--checkbox {\n @include adaptive-width($query: $query);\n }\n}\n\n@mixin adaptive-width($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n // Set to lowest width to adapt to cell content. Cell width should adapt\n // to row checkbox size when it is dense.\n // NOTE: `min-width` does not seem to work on table cells.\n width: 1px;\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern\n// NOTE: We disable `selector-class-pattern` above to allow using `mdc-` class\n// selectors.\n\n@use 'sass:list';\n@use '@material/animation/functions';\n@use '@material/density/functions' as density-functions;\n@use '@material/dom/mixins' as dom;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/icon-button/mixins' as icon-button-mixins;\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/typography/typography';\n@use './data-table-theme';\n@use './data-table-cell';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n .mdc-data-table__header-cell {\n @include typography.typography(subtitle2, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n box-sizing: border-box;\n text-overflow: ellipsis;\n overflow: hidden;\n outline: none;\n\n /* @noflip */\n text-align: left;\n\n @include rtl-mixins.rtl {\n /* @noflip */\n text-align: right;\n }\n }\n }\n\n .mdc-data-table__header-cell--checkbox {\n @include data-table-cell.adaptive-width($query: $query);\n }\n\n .mdc-data-table__header-cell--numeric {\n @include feature-targeting.targets($feat-structure) {\n text-align: right;\n }\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.rtl {\n /* @noflip */\n text-align: left;\n }\n }\n }\n\n .mdc-data-table__sort-icon-button {\n @include icon-button-mixins.density(\n $density-scale: data-table-theme.$sort-icon-density-scale,\n $query: $query\n );\n\n @include feature-targeting.targets($feat-structure) {\n // Apply dummy `transform` to avoid pixel shift on sort down animation.\n transform: rotate(0.0001deg);\n }\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(margin, left, 4px);\n }\n\n .mdc-data-table__header-cell--numeric & {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(margin, right, 4px);\n }\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: functions.standard(transform, $duration: 150ms);\n }\n\n .mdc-data-table__header-cell--sorted-descending & {\n @include feature-targeting.targets($feat-structure) {\n transform: rotate(-180deg);\n }\n }\n\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n\n &:focus,\n .mdc-data-table__header-cell:hover &,\n .mdc-data-table__header-cell--sorted & {\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n }\n }\n\n .mdc-data-table__header-cell-wrapper {\n @include feature-targeting.targets($feat-structure) {\n align-items: center;\n display: inline-flex;\n vertical-align: middle;\n }\n }\n\n .mdc-data-table__header-cell--with-sort {\n @include feature-targeting.targets($feat-structure) {\n cursor: pointer;\n }\n }\n\n .mdc-data-table__sort-status-label {\n @include dom.visually-hidden($query: $query);\n }\n}\n\n/// Sets header cell in sticky position on table content vertical scroll.\n@mixin header-cell-sticky($query: $query) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-data-table__header-cell {\n @include feature-targeting.targets($feat-structure) {\n position: sticky;\n top: 0;\n z-index: 1;\n }\n }\n\n // Use pseudo element to set border to bottom side of header cell.\n // Applying `border-bottom` to header cell element does not work on vertical\n // scroll for header row is sticky and table is set to\n // `border-collapse: collapse`.\n .mdc-data-table__header-cell:after {\n @include feature-targeting.targets($feat-structure) {\n bottom: 0;\n content: '';\n left: 0;\n position: absolute;\n width: 100%;\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:math';\n@use '@material/density/functions' as density-functions;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/rtl/mixins' as rtl;\n@use '@material/theme/theme';\n@use './variables';\n\n@mixin core-styles($query: feature-targeting.all()) {\n @include without-ripple($query);\n @include ripple($query);\n}\n\n@mixin without-ripple($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // postcss-bem-linter: define icon-button\n .mdc-icon-button {\n @include base_($query: $query);\n @include density(0, $query: $query);\n }\n\n .mdc-icon-button__icon {\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n }\n\n // stylelint-disable-next-line plugin/selector-bem-pattern\n &.mdc-icon-button__icon--on {\n @include feature-targeting.targets($feat-structure) {\n display: none;\n }\n }\n }\n\n .mdc-icon-button--on {\n .mdc-icon-button__icon {\n @include feature-targeting.targets($feat-structure) {\n display: none;\n }\n\n // stylelint-disable-next-line plugin/selector-bem-pattern\n &.mdc-icon-button__icon--on {\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n }\n }\n }\n }\n // postcss-bem-linter: end\n}\n\n@mixin ripple($query: feature-targeting.all()) {\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-icon-button {\n @include ripple.surface($query: $query);\n @include ripple.radius-unbounded($query: $query);\n @include ripple-theme.states($query: $query);\n }\n}\n\n///\n/// Sets the density scale for icon button.\n///\n/// @param {Number | String} $density-scale - Density scale value for component.\n/// Supported density scale values range from `-5` to `0`, with `0` being the default.\n///\n@mixin density($density-scale, $query: feature-targeting.all()) {\n $size: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: size,\n );\n\n @include size($size, $query: $query);\n}\n\n///\n/// Sets the size of the icon-button.\n///\n/// @param {Number} $size - Size value for icon-button.\n/// Size will set the width, height, and padding for the overall component.\n///\n@mixin size($size, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n width: $size;\n height: $size;\n padding: ($size - variables.$icon-size) / 2;\n }\n}\n\n///\n/// Sets the width, height and padding of icon button. Also changes the size of\n/// the icon itself based on button size.\n///\n/// @param {Number} $width - Width value for icon-button.\n/// @param {Number} $height - Height value for icon-button. (default: $width)\n/// @param {Number} $padding - Padding value for icon-button. (default: max($width, $height) / 2)\n/// @deprecated\n/// This mixin provides too much of low level customization.\n/// Please use mdc-icon-button-size instead.\n///\n@mixin icon-size(\n $width,\n $height: $width,\n $padding: math.max($width, $height) / 2,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n width: $width + $padding * 2;\n height: $height + $padding * 2;\n padding: $padding;\n font-size: math.max($width, $height);\n }\n\n // stylelint-disable-next-line selector-max-type\n svg,\n img {\n @include feature-targeting.targets($feat-structure) {\n width: $width;\n height: $height;\n }\n }\n}\n\n///\n/// Sets the font color and the ripple color to the provided color value.\n/// @param {Color} $color - The desired font and ripple color.\n///\n@mixin ink-color($color, $query: feature-targeting.all()) {\n @include ink-color_($color, $query: $query);\n @include ripple-theme.states($color, $query: $query);\n}\n\n///\n/// Flips icon only in RTL context.\n///\n@mixin flip-icon-in-rtl($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-button__icon {\n @include rtl.rtl {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n transform: rotate(180deg);\n }\n }\n }\n}\n\n///\n/// Sets the font color to the provided color value for a disabled icon button.\n/// @param {Color} $color - The desired font color.\n///\n@mixin disabled-ink-color($color, $query: feature-targeting.all()) {\n @include if-disabled_ {\n @include ink-color_($color, $query: $query);\n }\n}\n\n///\n/// Includes ad-hoc high contrast mode support.\n///\n@mixin high-contrast-mode-shim($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n // TODO(b/175806874): Use the DOM border mixin after the ripple is moved\n // away from :before to a dedicated element.\n outline: solid 3px transparent;\n\n &:focus {\n outline: double 5px transparent;\n }\n }\n}\n\n@mixin base_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n position: relative;\n box-sizing: border-box;\n border: none;\n outline: none;\n background-color: transparent;\n fill: currentColor;\n color: inherit;\n font-size: variables.$icon-size;\n text-decoration: none;\n cursor: pointer;\n user-select: none;\n }\n\n // stylelint-disable-next-line selector-max-type\n svg,\n img {\n @include feature-targeting.targets($feat-structure) {\n width: variables.$icon-size;\n height: variables.$icon-size;\n }\n }\n\n @include disabled-ink-color(text-disabled-on-light, $query: $query);\n\n @include if-disabled_ {\n @include feature-targeting.targets($feat-structure) {\n cursor: default;\n pointer-events: none;\n }\n }\n}\n\n///\n/// Sets the font color to the provided color value. This can be wrapped in\n/// a state qualifier such as `mdc-icon-button-if-disabled_`.\n/// @access private\n///\n@mixin ink-color_($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n}\n\n///\n/// Helps style the icon button in its disabled state.\n/// @access private\n///\n@mixin if-disabled_ {\n &:disabled {\n @content;\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// stylelint-disable selector-class-pattern\n// NOTE: We disable `selector-class-pattern` above to allow using `mdc-` class\n// selectors.\n\n@use 'sass:list';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/theme';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-data-table__progress-indicator {\n @include feature-targeting.targets($feat-structure) {\n display: none;\n position: absolute;\n width: 100%;\n }\n\n .mdc-data-table--in-progress & {\n @include feature-targeting.targets($feat-structure) {\n display: block;\n }\n }\n }\n\n .mdc-data-table__scrim {\n @include feature-targeting.targets($feat-structure) {\n @include theme.property('background-color', surface);\n\n height: 100%;\n // TODO(b/151453287): Set appropriate opacity value once we've a UX\n // guidance.\n opacity: 0.32;\n position: absolute;\n top: 0;\n width: 100%;\n }\n }\n}\n","@use '@material/feature-targeting/feature-targeting';\n@use '@material/typography/typography';\n@use '@material/rtl/mixins' as rtl;\n@use '@material/icon-button/mixins' as icon-button-theme;\n@use '@material/select/select-theme';\n@use '@material/list/mixins' as list-theme;\n@use '@material/menu/mixins' as menu-theme;\n@use './data-table-theme';\n\n// stylelint-disable selector-class-pattern\n// NOTE: We disable `selector-class-pattern` above to allow using `mdc-` class\n// selectors.\n\n/// Sets core styles for data table pagination.\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-data-table__pagination {\n @include typography.typography(body2, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n box-sizing: border-box;\n display: flex;\n justify-content: flex-end;\n }\n }\n\n .mdc-data-table__pagination-trailing {\n @include feature-targeting.targets($feat-structure) {\n @include rtl.reflexive-box(margin, left, 4px);\n\n align-items: center;\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end;\n }\n }\n\n .mdc-data-table__pagination-navigation {\n @include feature-targeting.targets($feat-structure) {\n align-items: center;\n display: flex;\n }\n }\n\n .mdc-data-table__pagination-button {\n @include icon-button-theme.flip-icon-in-rtl($query: $query);\n @include feature-targeting.targets($feat-structure) {\n @include rtl.reflexive-box(margin, right, 4px);\n }\n }\n\n .mdc-data-table__pagination-total {\n @include feature-targeting.targets($feat-structure) {\n @include rtl.reflexive-property(\n margin,\n $left-value: 14px,\n $right-value: 36px\n );\n\n white-space: nowrap;\n }\n }\n\n .mdc-data-table__pagination-rows-per-page {\n @include feature-targeting.targets($feat-structure) {\n @include rtl.reflexive-box(margin, right, 22px);\n\n align-items: center;\n display: inline-flex;\n }\n }\n\n .mdc-data-table__pagination-rows-per-page-label {\n @include feature-targeting.targets($feat-structure) {\n @include rtl.reflexive-box(margin, right, 12px);\n\n white-space: nowrap;\n }\n }\n\n .mdc-data-table__pagination-rows-per-page-select {\n @include select-theme.variable-width($min-width: 80px, $query: $query);\n @include menu-theme.min-width(80px, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n margin: 8px 0;\n }\n\n // TODO(b/158196144): Set it to `-5` density scale using density mixin when\n // select component supports it.\n @include select-theme.outlined-height(\n data-table-theme.$pagination-rows-per-page-select-height,\n $query: $query\n );\n .mdc-list-item {\n @include list-theme.single-line-height(\n data-table-theme.$pagination-rows-per-page-select-height,\n $query: $query\n );\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern --\n// Internal styling for Dialog MDC component.\n\n@use 'sass:math';\n@use '@material/animation/functions' as animation-functions;\n@use '@material/button/button-theme';\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/theme/custom-properties';\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n@use '@material/touch-target/variables' as touch-target-variables;\n@use '@material/typography/typography';\n@use './dialog-custom-properties';\n@use '@material/icon-button/mixins' as iconbutton-mixins;\n@use './variables';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // prettier-ignore\n @include elevation-mixins.overlay-common($query); // COPYBARA_COMMENT_THIS_LINE\n\n // postcss-bem-linter: define dialog\n\n .mdc-dialog,\n .mdc-dialog__scrim {\n @include feature-targeting.targets($feat-structure) {\n position: fixed;\n top: 0;\n left: 0;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n }\n }\n\n .mdc-dialog {\n @include container-fill-color(surface, $query: $query);\n @include scrim-color(variables.$scrim-color, $query: $query);\n @include title-ink-color(variables.$title-ink-color, $query: $query);\n @include content-ink-color(variables.$content-ink-color, $query: $query);\n @include scroll-divider-color(\n variables.$scroll-divider-color,\n $query: $query\n );\n // Note: the top padding is only 20px for dialogs without titles; see below for override.\n @include content-padding(20px, 24px, 20px, 24px, $query: $query);\n @include min-width(variables.$min-width, $query: $query);\n @include max-width(variables.$max-width, variables.$margin, $query: $query);\n @include max-height(null, variables.$margin, $query: $query);\n @include shape-radius(variables.$shape-radius, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n // Use `display: none` instead of `visibility: hidden` to avoid recalculating layout when the dialog is closed.\n display: none;\n $z-index: custom-properties.create(\n dialog-custom-properties.$z-index,\n variables.$z-index\n );\n @include theme.property(z-index, $z-index);\n }\n\n &.mdc-dialog--fullscreen {\n @include _fullscreen-dialog-size($query: $query);\n }\n }\n\n .mdc-dialog__scrim {\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n z-index: -1;\n }\n }\n\n // This wrapper element is needed to make max-height work in IE 11.\n // See https://github.com/philipwalton/flexbugs/issues/216\n .mdc-dialog__container {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n flex-direction: row; // IE 11\n align-items: center;\n justify-content: space-around; // Ensure Safari centers the dialog (because it treats the container's width oddly)\n box-sizing: border-box;\n height: 100%;\n transform: scale(0.8);\n opacity: 0;\n // This element is necessary for IE 11 and needs to have `height: 100%`.\n // Let clicks on element fall through to scrim element underneath.\n pointer-events: none;\n }\n }\n\n .mdc-dialog__surface {\n @include elevation-mixins.overlay-surface-position($query: $query);\n @include elevation-mixins.overlay-dimensions(100%, $query: $query);\n @include elevation-mixins.elevation(24, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n flex-direction: column;\n flex-grow: 0; // IE 11\n flex-shrink: 0; // IE 11\n box-sizing: border-box;\n max-width: 100%; // IE 11\n max-height: 100%; // IE 11\n pointer-events: auto; // Override from `.mdc-dialog__container`.\n // IE 11: Otherwise, scrolling content in `mdc-dialog__content` overflows.\n overflow-y: auto;\n\n @include rtl-mixins.rtl('.mdc-dialog') {\n /* @noflip */\n text-align: right;\n }\n }\n }\n\n .mdc-dialog__title {\n @include typography.text-baseline(\n $top: 40px,\n $display: block,\n $query: $query\n );\n @include typography.typography(headline6, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n position: relative;\n flex-shrink: 0;\n box-sizing: border-box;\n margin: 0;\n padding: 0 24px variables.$title-bottom-padding;\n border-bottom: 1px solid transparent;\n\n @include rtl-mixins.rtl('.mdc-dialog') {\n /* @noflip */\n text-align: right;\n }\n }\n }\n\n // stylelint-disable-next-line plugin/selector-bem-pattern\n .mdc-dialog--scrollable .mdc-dialog__title {\n @include feature-targeting.targets($feat-structure) {\n // Adjust bottom padding to make title height align to spec when divider is present.\n // (Titles for alert dialogs w/o dividers align based on text baseline. All spec values are divisible by 4.)\n padding-bottom: variables.$title-bottom-padding + 6px;\n }\n }\n\n .mdc-dialog--fullscreen {\n .mdc-dialog__header {\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n padding: 0 variables.$header-side-padding\n variables.$title-bottom-padding;\n border-bottom: 1px solid transparent;\n justify-content: space-between;\n align-items: baseline;\n }\n }\n\n .mdc-dialog__title {\n @include feature-targeting.targets($feat-structure) {\n padding: 0;\n border-bottom: 0;\n }\n }\n\n .mdc-dialog__close {\n @include iconbutton-mixins.size($size: 24px, $query: $query);\n }\n\n &.mdc-dialog--scrollable .mdc-dialog__actions {\n // If full-screen dialog is scrollable, the scroll divider over the action\n // buttons (i.e. the \"footer\") should only be visible when the content is\n // \"cut off\" by the footer. To toggle this divider, we override the\n // styling set by the mdc-dialog--scrollable class, and instead rely on\n // the mdc-dialog-scroll-divider-footer class to determine when the\n // border-top should be visible.\n @include feature-targeting.targets($feat-structure) {\n border-top: 1px solid transparent;\n }\n }\n }\n\n .mdc-dialog__content {\n @include typography.typography(body1, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n flex-grow: 1;\n box-sizing: border-box;\n margin: 0;\n overflow: auto;\n -webkit-overflow-scrolling: touch;\n }\n\n // The content element already has top/bottom padding, so we need to suppress margins on its first/last children.\n > :first-child {\n @include feature-targeting.targets($feat-structure) {\n margin-top: 0;\n }\n }\n\n // The content element already has top/bottom padding, so we need to suppress margins on its first/last children.\n > :last-child {\n @include feature-targeting.targets($feat-structure) {\n margin-bottom: 0;\n }\n }\n }\n\n // stylelint-disable-next-line plugin/selector-bem-pattern\n .mdc-dialog__title + .mdc-dialog__content {\n @include feature-targeting.targets($feat-structure) {\n // Eliminate padding to bring as close to spec as possible, relying on title padding.\n // (Spec seems inconsistent RE title/body spacing on alert vs. simple variants.)\n padding-top: 0;\n }\n }\n\n // stylelint-disable-next-line plugin/selector-bem-pattern\n .mdc-dialog--scrollable .mdc-dialog__title + .mdc-dialog__content {\n @include feature-targeting.targets($feat-structure) {\n // Reduce and equalize vertical paddings when scrollable dividers are present\n // (Note: this is intentionally after title + content to take precedence)\n padding-top: 8px;\n padding-bottom: 8px;\n }\n }\n\n // stylelint-disable-next-line plugin/selector-bem-pattern\n .mdc-dialog__content .mdc-list:first-child:last-child {\n @include feature-targeting.targets($feat-structure) {\n // Override default .mdc-list padding for content consisting exclusively of a MDC List\n padding: 6px 0 0; // Top padding balances with title height\n }\n }\n\n // stylelint-disable-next-line plugin/selector-bem-pattern, selector-max-specificity\n .mdc-dialog--scrollable\n .mdc-dialog__content\n .mdc-list:first-child:last-child {\n @include feature-targeting.targets($feat-structure) {\n // Override default .mdc-list padding for content consisting exclusively of a MDC List\n padding: 0;\n }\n }\n\n .mdc-dialog__actions {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n position: relative;\n flex-shrink: 0;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-end;\n box-sizing: border-box;\n min-height: 52px;\n margin: 0;\n padding: variables.$actions-padding;\n border-top: 1px solid transparent;\n }\n\n .mdc-dialog--stacked & {\n @include feature-targeting.targets($feat-structure) {\n flex-direction: column;\n align-items: flex-end;\n }\n }\n }\n\n .mdc-dialog__button {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(margin, left, 8px);\n }\n\n &:first-child {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(margin, left, 0);\n }\n }\n\n @include feature-targeting.targets($feat-structure) {\n max-width: 100%; // Prevent long text from overflowing parent element in IE 11\n /* @noflip */\n text-align: right;\n\n @include rtl-mixins.rtl('.mdc-dialog') {\n /* @noflip */\n text-align: left;\n }\n }\n\n .mdc-dialog--stacked &:not(:first-child) {\n @include feature-targeting.targets($feat-structure) {\n margin-top: 12px;\n }\n }\n }\n\n .mdc-dialog--open,\n .mdc-dialog--opening,\n .mdc-dialog--closing {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n }\n }\n\n .mdc-dialog--opening {\n .mdc-dialog__scrim {\n @include feature-targeting.targets($feat-animation) {\n transition: opacity 150ms linear;\n }\n }\n\n .mdc-dialog__container {\n @include feature-targeting.targets($feat-animation) {\n transition: opacity 75ms linear,\n animation-functions.enter(transform, 150ms);\n }\n }\n }\n\n .mdc-dialog--closing {\n .mdc-dialog__scrim,\n .mdc-dialog__container {\n @include feature-targeting.targets($feat-animation) {\n transition: opacity 75ms linear;\n }\n }\n\n .mdc-dialog__container {\n @include feature-targeting.targets($feat-structure) {\n // Dialog container scales up while opening, but should remain scaled up while closing\n transform: none;\n }\n }\n }\n\n .mdc-dialog--open {\n .mdc-dialog__scrim {\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n }\n\n .mdc-dialog__container {\n @include feature-targeting.targets($feat-structure) {\n transform: none;\n opacity: 1;\n }\n }\n }\n\n // postcss-bem-linter: end\n\n // Class applied to body while dialog is open, to prevent scrolling behind the dialog\n .mdc-dialog-scroll-lock {\n @include feature-targeting.targets($feat-structure) {\n overflow: hidden;\n }\n }\n}\n\n@mixin container-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-dialog__surface {\n @include feature-targeting.targets($feat-color) {\n @include theme.prop(background-color, $color);\n }\n }\n}\n\n@mixin scrim-color(\n $color,\n $opacity: variables.$scrim-opacity,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-dialog__scrim {\n @include feature-targeting.targets($feat-color) {\n background-color: rgba(theme-color.prop-value($color), $opacity);\n }\n }\n}\n\n@mixin title-ink-color(\n $color,\n $opacity: variables.$title-ink-opacity,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-dialog__title {\n @include feature-targeting.targets($feat-color) {\n color: rgba(theme-color.prop-value($color), $opacity);\n }\n }\n}\n\n@mixin content-ink-color(\n $color,\n $opacity: variables.$content-ink-opacity,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-dialog__content {\n @include feature-targeting.targets($feat-color) {\n color: rgba(theme-color.prop-value($color), $opacity);\n }\n }\n}\n\n@mixin content-padding(\n $padding-top,\n $padding-right,\n $padding-bottom,\n $padding-left,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-dialog__content {\n @include feature-targeting.targets($feat-structure) {\n padding: $padding-top $padding-right $padding-bottom $padding-left;\n }\n }\n}\n\n@mixin scroll-divider-color(\n $color,\n $opacity: variables.$scroll-divider-opacity,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &.mdc-dialog--scrollable .mdc-dialog__title,\n &.mdc-dialog--scrollable .mdc-dialog__actions,\n &.mdc-dialog--scrollable.mdc-dialog-scroll-divider-footer\n .mdc-dialog__actions {\n @include feature-targeting.targets($feat-color) {\n border-color: rgba(theme-color.prop-value($color), $opacity);\n }\n }\n\n &.mdc-dialog-scroll-divider-header.mdc-dialog--fullscreen\n .mdc-dialog__header {\n @include elevation-mixins.elevation(2, $query: $query);\n }\n}\n\n@mixin shape-radius(\n $radius,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-dialog__surface {\n @include shape-mixins.radius($radius, $rtl-reflexive, $query: $query);\n }\n}\n\n@mixin min-width($min-width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-dialog__surface {\n @include feature-targeting.targets($feat-structure) {\n min-width: $min-width;\n }\n }\n}\n\n@mixin max-width($max-width, $margin, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $max-size-calc-expr: calc(100vw - #{$margin * 2});\n\n .mdc-dialog__surface {\n @include feature-targeting.targets($feat-structure) {\n @if $max-width {\n $max-width-breakpoint: $max-width + ($margin * 2);\n\n // Fit snugly within the viewport at smaller screen sizes.\n @media (max-width: $max-width-breakpoint) {\n max-width: $max-size-calc-expr;\n }\n\n // Once the screen gets big enough, apply a fixed maximum width.\n @media (min-width: $max-width-breakpoint) {\n max-width: $max-width;\n }\n } @else {\n max-width: $max-size-calc-expr;\n }\n }\n }\n}\n\n@mixin max-height($max-height, $margin, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $max-size-calc-expr: calc(100% - #{$margin * 2});\n\n .mdc-dialog__surface {\n @include feature-targeting.targets($feat-structure) {\n @if $max-height {\n $max-height-breakpoint: $max-height + ($margin * 2);\n\n // Fit snugly within the viewport at smaller screen sizes.\n @media (max-height: $max-height-breakpoint) {\n max-height: $max-size-calc-expr;\n }\n\n // Once the screen gets big enough, apply a fixed maximum height.\n @media (min-height: $max-height-breakpoint) {\n max-height: $max-height;\n }\n } @else {\n max-height: $max-size-calc-expr;\n }\n }\n }\n\n // Target IE 11.\n @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\n // On IE 11, if surface height is fixed and container height is 100%,\n // scrolling content overflows. So, reset height if surface height\n // is fixed.\n .mdc-dialog__container {\n @include feature-targeting.targets($feat-structure) {\n /* stylelint-disable */\n // Disable stylelint here, as nesting depth > 3 is required to\n // work around IE 11.\n @if $max-height {\n $max-height-breakpoint: $max-height + ($margin * 2);\n\n @media (min-height: $max-height-breakpoint) {\n align-items: stretch;\n height: auto;\n }\n }\n /* stylelint-enable*/\n }\n }\n }\n}\n\n// Applied to dialogs that have buttons with an increased touch target.\n@mixin with-touch-target($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $touch-target-margin: (touch-target-variables.$height - button-theme.$height) /\n 2;\n $vertical-padding: math.max(\n 0,\n variables.$actions-padding - $touch-target-margin\n );\n\n // Buttons with an increased touch target have added vertical margin, so\n // decrease the actions element padding to compensate.\n .mdc-dialog__actions {\n @include feature-targeting.targets($feat-structure) {\n padding-top: $vertical-padding;\n padding-bottom: $vertical-padding;\n\n // The below styles override the default button touch target values,\n // which otherwise cause `mdc-dialog__surface` to scroll unnnecessarily\n // in IE 11.\n .mdc-button__touch {\n top: -$touch-target-margin; // IE 11\n transform: none; // IE 11\n }\n }\n }\n}\n\n@mixin _fullscreen-dialog-size($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n .mdc-dialog__surface {\n // Medium screens\n @media (max-width: 960px) and (max-height: 1440px) {\n @include feature-targeting.targets($feat-structure) {\n max-height: 560px;\n max-width: 560px;\n }\n }\n\n // Small screens\n @media (max-width: 720px) and (max-height: 1023px) {\n @include feature-targeting.targets($feat-structure) {\n $max-small-height: 560px;\n $max-small-width: 560px;\n $min-horizontal-small-margin: 56px;\n $min-vertical-small-margin: 80px;\n @include _fluid-size-calc(\n $vertical-margin: $min-vertical-small-margin,\n $max-height: $max-small-height,\n $horizontal-margin: $min-horizontal-small-margin,\n $max-width: $max-small-width\n );\n }\n }\n\n // X-Small Screens (horizontal)\n @media (max-width: 720px) and (max-height: 400px) {\n @include feature-targeting.targets($feat-structure) {\n max-width: 100vw;\n width: 100vw;\n max-height: 100vh;\n height: 100vh;\n }\n @include shape-mixins.radius(0, $query: $query);\n }\n\n // X-Small Screens (vertical)\n @media (max-width: 600px) and (max-height: 960px) {\n @include feature-targeting.targets($feat-structure) {\n max-width: 100vw;\n width: 100vw;\n max-height: 100vh;\n height: 100vh;\n }\n @include shape-mixins.radius(0, $query: $query);\n }\n\n // Large to X-Large screens\n @media (min-width: 960px) and (min-height: 1440px) {\n @include feature-targeting.targets($feat-structure) {\n $min-horizontal-margin: 200px;\n max-width: calc(100vw - #{$min-horizontal-margin * 2});\n }\n }\n }\n}\n\n/// Defines styling to specify a fluid dialog size while maintaining a specific\n/// vertical and horizontal margin.\n/// @param {Number} $vertical-margin\n/// @param {Number} $max-height\n/// @param {Number} $horizontal-margin\n/// @param {Number} $max-width\n@mixin _fluid-size-calc(\n $vertical-margin,\n $max-height,\n $horizontal-margin,\n $max-width\n) {\n $max-width-calc-expr: calc(100vw - #{$horizontal-margin * 2});\n $max-width-breakpoint: $max-width + ($horizontal-margin * 2);\n\n @media (max-width: $max-width-breakpoint) {\n max-width: $max-width-calc-expr;\n }\n @media (min-width: $max-width-breakpoint) {\n max-width: $max-width;\n }\n\n $max-height-calc-expr: calc(100vh - #{$vertical-margin * 2});\n $max-height-breakpoint: $max-height + ($vertical-margin * 2);\n\n @media (max-height: $max-height-breakpoint) {\n max-height: $max-height-calc-expr;\n }\n @media (min-height: $max-height-breakpoint) {\n max-height: $max-height;\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n$scrim-color: on-surface !default;\n$title-ink-color: on-surface !default;\n$content-ink-color: on-surface !default;\n$scroll-divider-color: on-surface !default;\n\n$scrim-opacity: 0.32 !default;\n$title-ink-opacity: 0.87 !default;\n$content-ink-opacity: 0.6 !default;\n$scroll-divider-opacity: 0.12 !default;\n\n$min-width: 280px !default;\n$max-width: 560px !default;\n$margin: 16px !default;\n$shape-radius: medium !default;\n$title-bottom-padding: 9px !default;\n$actions-padding: 8px !default;\n$header-side-padding: 16px !default;\n\n$z-index: 7 !default;\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:list';\n@use 'sass:meta';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/animation/functions' as functions2;\n@use '@material/animation/variables' as animation-variables;\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/typography/typography';\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n@use '@material/list/mixins' as list-mixins;\n@use '@material/ripple/ripple-theme';\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/elevation/mixins' as elevation-mixins;\n@use './variables';\n\n//\n// Public\n//\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n // postcss-bem-linter: define drawer\n .mdc-drawer {\n @include title-ink-color(variables.$title-ink-color, $query: $query);\n @include subtitle-ink-color(variables.$subtitle-ink-color, $query: $query);\n @include border-color(variables.$divider-color, $query: $query);\n @include surface-fill-color(variables.$surface-fill-color, $query: $query);\n @include item-icon-ink-color(\n variables.$item-inactive-ink-color,\n $query: $query\n );\n @include item-text-ink-color(\n variables.$item-inactive-ink-color,\n $query: $query\n );\n @include item-activated-icon-ink-color(\n variables.$item-activated-ink-color,\n $query: $query\n );\n @include item-activated-text-ink-color(\n variables.$item-activated-ink-color,\n $query: $query\n );\n @include shape-radius(variables.$shape-radius, $query: $query);\n @include item-shape-radius(variables.$item-shape-radius, $query: $query);\n @include z-index(variables.$z-index, $query: $query);\n @include width(variables.$width, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n box-sizing: border-box;\n height: 100%;\n /* @noflip */\n border-right-width: 1px;\n /* @noflip */\n border-right-style: solid;\n overflow: hidden;\n\n @include rtl-mixins.rtl {\n /* @noflip */\n border-right-width: 0;\n /* @noflip */\n border-left-width: 1px;\n /* @noflip */\n border-right-style: none;\n /* @noflip */\n border-left-style: solid;\n }\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition-property: transform;\n transition-timing-function: animation-variables.$standard-curve-timing-function;\n }\n\n @include list-item_($query);\n }\n\n .mdc-drawer--animate {\n @include feature-targeting.targets($feat-structure) {\n transform: translateX(-100%);\n\n @include rtl-mixins.rtl {\n transform: translateX(100%);\n }\n }\n }\n\n .mdc-drawer--opening {\n @include feature-targeting.targets($feat-structure) {\n transform: translateX(0);\n\n // Required to level the specificity with animate class.\n @include rtl-mixins.rtl {\n transform: translateX(0);\n }\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition-duration: variables.$animation-enter;\n }\n }\n\n .mdc-drawer--closing {\n @include feature-targeting.targets($feat-structure) {\n transform: translateX(-100%);\n\n @include rtl-mixins.rtl {\n transform: translateX(100%);\n }\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition-duration: variables.$animation-exit;\n }\n }\n\n .mdc-drawer__header {\n @include feature-targeting.targets($feat-structure) {\n flex-shrink: 0;\n box-sizing: border-box;\n min-height: 64px; // same as $mdc-top-app-bar-row-height\n padding: 0 variables.$surface-padding 4px;\n }\n }\n\n .mdc-drawer__title {\n @include typography.typography(headline6, $query: $query);\n @include typography.text-baseline(\n $top: 36px,\n $bottom: 20px,\n $query: $query\n );\n }\n\n .mdc-drawer__subtitle {\n @include typography.typography(body2, $query: $query);\n @include typography.text-baseline($top: 20px, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n margin-bottom: 0;\n }\n }\n\n .mdc-drawer__content {\n @include feature-targeting.targets($feat-structure) {\n height: 100%;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n }\n }\n\n // postcss-bem-linter: end\n}\n\n@mixin dismissible-core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-drawer--dismissible {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(left, 0);\n\n display: none;\n position: absolute;\n\n &.mdc-drawer--open {\n display: flex;\n }\n }\n }\n\n .mdc-drawer-app-content {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(margin, left, 0);\n\n position: relative;\n }\n }\n}\n\n@mixin modal-core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n .mdc-drawer--modal {\n @include scrim-fill-color(variables.$modal-scrim-color, $query: $query);\n @include elevation-mixins.elevation(\n variables.$modal-elevation,\n $query: $query\n );\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(left, 0);\n\n display: none;\n position: fixed;\n }\n\n &.mdc-drawer--open {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n }\n }\n }\n\n .mdc-drawer-scrim {\n @include feature-targeting.targets($feat-structure) {\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: variables.$z-index - 1;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition-property: opacity;\n transition-timing-function: animation-variables.$standard-curve-timing-function;\n }\n\n .mdc-drawer--open + & {\n @include feature-targeting.targets($feat-structure) {\n display: block;\n }\n }\n\n .mdc-drawer--animate + & {\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n }\n\n .mdc-drawer--opening + & {\n @include feature-targeting.targets($feat-animation) {\n transition-duration: variables.$animation-enter;\n }\n\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n }\n\n .mdc-drawer--closing + & {\n @include feature-targeting.targets($feat-animation) {\n transition-duration: variables.$animation-exit;\n }\n\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n }\n }\n}\n\n@mixin activated-overlay-color($color, $query: feature-targeting.all()) {\n :not(.mdc-list--non-interactive) > .mdc-list-item {\n @include ripple-theme.states-activated($color, $query: $query);\n }\n}\n\n@mixin border-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $value: rgba(theme-color.prop-value($color), variables.$divider-opacity);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-color, $value);\n }\n}\n\n@mixin item-shape-radius(\n $radius,\n $rtl-reflexive: true,\n $query: feature-targeting.all()\n) {\n @include list-mixins.single-line-shape-radius(\n $radius,\n $rtl-reflexive,\n $query: $query\n );\n}\n\n@mixin shape-radius($radius, $query: feature-targeting.all()) {\n // Check type since $radius may be a custom property Map\n $is-list: meta.type-of($radius) == 'list';\n @if $is-list and list.length($radius) > 2 {\n @error \"Invalid radius: '#{$radius}' component doesn't allow customizing all corners\";\n } @else if $is-list and list.length($radius) == 2 {\n $radius: 0 list.nth($radius, 1) list.nth($radius, 2) 0;\n } @else {\n $radius: 0 $radius $radius 0;\n }\n\n @include shape-mixins.radius($radius, $rtl-reflexive: true, $query: $query);\n}\n\n@mixin divider-color($color, $query: feature-targeting.all()) {\n $value: rgba(theme-color.prop-value($color), variables.$divider-opacity);\n\n @include list-mixins.divider-color($value, $query: $query);\n}\n\n@mixin title-ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $value: rgba(theme-color.prop-value($color), variables.$title-ink-opacity);\n\n .mdc-drawer__title {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $value);\n }\n }\n}\n\n@mixin subtitle-ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $value: rgba(theme-color.prop-value($color), variables.$subtitle-ink-opacity);\n\n @include list-mixins.group-subheader-ink-color($value, $query: $query);\n\n .mdc-drawer__subtitle {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $value);\n }\n }\n}\n\n@mixin fill-color-accessible($color, $query: feature-targeting.all()) {\n $accessibleColor: theme-color.accessible-ink-color($color);\n\n @include title-ink-color($accessibleColor, $query: $query);\n @include subtitle-ink-color($accessibleColor, $query: $query);\n @include item-text-ink-color($accessibleColor, $query: $query);\n @include item-icon-ink-color($accessibleColor, $query: $query);\n @include surface-fill-color($color, $query: $query);\n}\n\n@mixin item-icon-ink-color($color, $query: feature-targeting.all()) {\n $value: rgba(\n theme-color.prop-value($color),\n variables.$item-inactive-icon-ink-opacity\n );\n\n @include list-mixins.item-graphic-ink-color($value, $query: $query);\n}\n\n@mixin item-activated-icon-ink-color($color, $query: feature-targeting.all()) {\n $value: rgba(\n theme-color.prop-value($color),\n variables.$item-active-icon-ink-opacity\n );\n\n .mdc-list-item--activated {\n @include list-mixins.item-graphic-ink-color($value, $query: $query);\n }\n}\n\n@mixin item-activated-text-ink-color($color, $query: feature-targeting.all()) {\n $value: rgba(\n theme-color.prop-value($color),\n variables.$item-active-text-ink-opacity\n );\n\n .mdc-list-item--activated {\n @include list-mixins.item-primary-text-ink-color($value, $query: $query);\n }\n}\n\n@mixin item-text-ink-color($color, $query: feature-targeting.all()) {\n $value: rgba(\n theme-color.prop-value($color),\n variables.$item-inactive-text-ink-opacity\n );\n\n .mdc-list-item {\n @include list-mixins.item-primary-text-ink-color($value, $query: $query);\n }\n}\n\n@mixin surface-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n}\n\n@mixin scrim-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $value: rgba(theme-color.prop-value($color), variables.$modal-scrim-opacity);\n\n + .mdc-drawer-scrim {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $value);\n }\n }\n}\n\n@mixin z-index($value, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n z-index: $value;\n }\n}\n\n@mixin width($width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include theme.property(width, $width);\n }\n\n &.mdc-drawer--open:not(.mdc-drawer--closing) + .mdc-drawer-app-content {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(margin, left, $width);\n }\n }\n}\n\n//\n// Private\n//\n@mixin list-item_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // postcss-bem-linter: ignore\n .mdc-list-item {\n @include typography.typography(subtitle2, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n height: calc(48px - 2 * #{variables.$list-item-spacing});\n // To accomodate margin conflict.\n margin: (variables.$list-item-spacing * 2) 8px;\n padding: 0 variables.$surface-padding / 2;\n }\n }\n\n // postcss-bem-linter: ignore\n .mdc-list-item:nth-child(1) {\n @include feature-targeting.targets($feat-structure) {\n margin-top: 2px;\n }\n }\n\n // postcss-bem-linter: ignore\n .mdc-list-item:nth-last-child(1) {\n @include feature-targeting.targets($feat-structure) {\n margin-bottom: 0;\n }\n }\n\n // postcss-bem-linter: ignore\n .mdc-list-group__subheader {\n @include typography.typography(body2, $query: $query);\n @include typography.text-baseline($top: 24px, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n margin: 0;\n padding: 0 variables.$surface-padding;\n }\n }\n\n // postcss-bem-linter: ignore\n .mdc-list-divider {\n @include feature-targeting.targets($feat-structure) {\n margin: 3px 0 4px;\n }\n }\n\n // Prevents list item children from being included in the click target.\n // postcss-bem-linter: ignore\n .mdc-list-item__text,\n .mdc-list-item__graphic {\n @include feature-targeting.targets($feat-structure) {\n pointer-events: none;\n }\n }\n}\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/theme/theme-color';\n\n// Colors\n$title-ink-color: theme-color.prop-value(on-surface) !default;\n$subtitle-ink-color: theme-color.prop-value(on-surface) !default;\n$item-inactive-ink-color: theme-color.prop-value(on-surface) !default;\n$item-activated-ink-color: theme-color.prop-value(primary) !default;\n$divider-color: theme-color.prop-value(on-surface) !default;\n$surface-fill-color: surface !default;\n\n// Opacity\n$title-ink-opacity: theme-color.text-emphasis(high) !default;\n$subtitle-ink-opacity: theme-color.text-emphasis(medium) !default;\n$item-inactive-icon-ink-opacity: theme-color.text-emphasis(medium) !default;\n$item-inactive-text-ink-opacity: theme-color.text-emphasis(high) !default;\n$item-active-icon-ink-opacity: 1 !default;\n$item-active-text-ink-opacity: theme-color.text-emphasis(high) !default;\n$divider-opacity: 0.12 !default;\n\n// Widths\n$width: 256px !default;\n$list-item-spacing: 4px !default;\n$surface-padding: 16px !default;\n$shape-radius: large !default;\n$item-shape-radius: small !default;\n\n// Animations\n$animation-enter: 250ms !default;\n$animation-exit: 200ms !default;\n\n// Scrim\n$modal-scrim-color: theme-color.prop-value(on-surface) !default;\n$modal-scrim-opacity: 0.32 !default;\n\n$z-index: 6 !default;\n$modal-elevation: 16 !default;\n","// Copyright 2016 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n@use '@material/animation/functions' as animation-functions;\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/elevation/variables' as elevation-variables;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/dom/mixins' as dom-mixins;\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/shape/functions' as shape-functions;\n@use '@material/theme/css';\n@use '@material/theme/custom-properties';\n@use '@material/theme/state';\n@use '@material/theme/theme-color';\n@use '@material/theme/theme';\n@use '@material/touch-target/mixins' as touch-target-mixins;\n@use '@material/typography/typography';\n@use './variables';\n@use 'sass:math';\n@use 'sass:list';\n\n$ripple-target: '.mdc-fab__ripple';\n\n@mixin core-styles($query: feature-targeting.all()) {\n @include without-ripple($query);\n @include ripple($query);\n}\n\n@mixin without-ripple($query: feature-targeting.all()) {\n // postcss-bem-linter: define fab\n\n @include touch-target-mixins.wrapper($query); // COPYBARA_COMMENT_THIS_LINE\n // prettier-ignore\n @include elevation-mixins.overlay-common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-fab {\n @include base_($query: $query);\n @include container-color(secondary, $query: $query);\n @include icon-size(24px, $query: $query);\n @include ink-color(on-secondary, $query: $query);\n }\n\n .mdc-fab--mini {\n @include mini_($query: $query);\n }\n\n .mdc-fab--extended {\n @include extended_($query: $query);\n }\n\n .mdc-fab--touch {\n @include touch-target-mixins.margin(\n $component-height: variables.$mini-height,\n $component-width: variables.$mini-height,\n $query: $query\n );\n\n .mdc-fab__touch {\n @include touch-target-mixins.touch-target(\n $set-width: true,\n $query: $query\n );\n }\n }\n\n .mdc-fab::before {\n @include dom-mixins.transparent-border($query: $query);\n }\n\n .mdc-fab__label {\n @include label_($query: $query);\n }\n\n .mdc-fab__icon {\n @include icon_($query: $query);\n }\n\n // Increase specificity for FAB icon styles that need to override styles defined for .material-icons\n // (which is loaded separately so the order of CSS definitions is not guaranteed)\n .mdc-fab .mdc-fab__icon {\n @include icon-overrides_($query: $query);\n }\n\n .mdc-fab--exited {\n @include exited_($query: $query);\n }\n\n // postcss-bem-linter: end\n}\n\n@mixin ripple($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-fab {\n @include ripple.surface($query: $query, $ripple-target: $ripple-target);\n @include ripple.radius-bounded(\n $query: $query,\n $ripple-target: $ripple-target\n );\n @include ripple-theme.states(\n on-secondary,\n $query: $query,\n $ripple-target: $ripple-target\n );\n\n #{$ripple-target} {\n @include ripple.target-common($query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n overflow: hidden;\n // Fixes Safari on Mac & iOS issue where ripple overflows button\n // rendered in square shape. Creating new stacking context fixes this\n // issue.\n z-index: -1;\n }\n }\n }\n}\n\n@mixin accessible($container-color, $query: feature-targeting.all()) {\n @include container-color($container-color, $query: $query);\n\n $fill-tone: theme-color.tone($container-color);\n\n @if ($fill-tone == 'dark') {\n @include ink-color(text-primary-on-dark, $query: $query);\n @include ripple-theme.states(\n text-primary-on-dark,\n $query: $query,\n $ripple-target: $ripple-target\n );\n } @else {\n @include ink-color(text-primary-on-light, $query: $query);\n @include ripple-theme.states(\n text-primary-on-light,\n $query: $query,\n $ripple-target: $ripple-target\n );\n }\n}\n\n@mixin container-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n}\n\n@mixin icon-size($width, $height: $width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-fab__icon {\n @include feature-targeting.targets($feat-structure) {\n width: $width;\n height: $height;\n font-size: $height;\n }\n }\n}\n\n@mixin ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n}\n\n///\n/// Sets outline width only when button is in focus. Also sets padding to\n/// include outline on focus (Helps prevent size jump on focus).\n/// @param {Number} $width - Outline (border) width.\n/// @param {Number|List} $padding [0] - Padding when button is not in focus.\n/// Offsets padding based on given outline width on focus.\n///\n@mixin focus-outline-width(\n $width,\n $padding: 0,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n $padding: css.unpack-value($padding);\n\n // Padding should include outline width which will be set on focus.\n padding: math.max(list.nth($padding, 1), $width)\n math.max(list.nth($padding, 2), $width)\n math.max(list.nth($padding, 3), $width)\n math.max(list.nth($padding, 4), $width);\n\n &:focus {\n @include feature-targeting.targets($feat-structure) {\n border-style: solid;\n border-width: $width;\n\n // Offset border width from padding.\n padding: math.abs(list.nth($padding, 1) - $width)\n math.abs(list.nth($padding, 2) - $width)\n math.abs(list.nth($padding, 3) - $width)\n math.abs(list.nth($padding, 4) - $width);\n }\n }\n}\n\n///\n/// Sets outline color only when button is in focus. Use `focus-outline-width()`\n/// to set appropriate outline width.\n/// @param {Color} $color - Outline (border) color.\n///\n@mixin focus-outline-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &:focus {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-color, $color);\n }\n }\n}\n\n@mixin extended-fluid($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n width: 100%;\n }\n}\n\n@mixin extended-padding(\n $icon-padding,\n $label-padding,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include extended-label-padding($label-padding, $query: $query);\n\n // Offsets the outer label padding by deducting it from icon padding.\n .mdc-fab__icon {\n @include feature-targeting.targets($feat-structure) {\n @include extended-icon-padding($icon-padding, $label-padding);\n }\n }\n\n // For Extended FAB with text label followed by icon.\n .mdc-fab__label + .mdc-fab__icon {\n @include feature-targeting.targets($feat-structure) {\n @include extended-icon-padding(\n $icon-padding,\n $label-padding,\n $is-icon-at-end: true\n );\n }\n }\n}\n\n@mixin extended-icon-padding(\n $icon-padding,\n $label-padding,\n $is-icon-at-end: false\n) {\n $start: calc(icon - label);\n $end: $icon-padding;\n\n @if $is-icon-at-end {\n $start: $icon-padding;\n $end: calc(icon - label);\n }\n\n @include rtl-mixins.reflexive-property(\n margin,\n $start,\n $end,\n $replace: (icon: $icon-padding, label: $label-padding)\n );\n}\n\n@mixin extended-label-padding($label-padding, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include theme.property(padding-left, $label-padding, $gss: (noflip: true));\n @include theme.property(\n padding-right,\n $label-padding,\n $gss: (noflip: true)\n );\n }\n}\n\n@mixin shape-radius(\n $radius,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n &:not(.mdc-fab--extended) {\n // Do not specify $component-height for shape radius. FABs are circular,\n // which means they can use percentage border radius without resolving to\n // a component height.\n @include shape-mixins.radius($radius, $rtl-reflexive, $query: $query);\n\n #{$ripple-target} {\n @include shape-mixins.radius($radius, $rtl-reflexive, $query: $query);\n }\n }\n}\n\n@mixin extended-shape-radius(\n $radius,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n // Extended FABs _do_ need a $component-height since they are not circular.\n // Percentage radii must be resolved.\n @include shape-mixins.radius(\n $radius,\n $rtl-reflexive,\n $component-height: variables.$extended-height,\n $query: $query\n );\n\n #{$ripple-target} {\n @include shape-mixins.radius(\n $radius,\n $rtl-reflexive,\n $component-height: variables.$extended-height,\n $query: $query\n );\n }\n}\n\n$icon-enter-delay_: 90ms;\n$icon-enter-duration_: 180ms;\n\n@mixin base_($query: feature-targeting.all()) {\n @include elevation-mixins.overlay-surface-position($query: $query);\n @include elevation-mixins.overlay-dimensions(100%, $query: $query);\n @include elevation-mixins.elevation(6, $query: $query);\n @include shape-radius(variables.$shape-radius, $query: $query);\n\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n position: relative;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: variables.$height;\n height: variables.$height;\n padding: 0;\n border: none;\n fill: currentColor;\n text-decoration: none;\n cursor: pointer;\n user-select: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n // Even though `visible` is the default, IE 11 computes the property as\n // `hidden` in some cases, unless it's explicitly defined here.\n overflow: visible;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: box-shadow elevation-variables.$transition-duration\n elevation-variables.$transition-timing-function,\n opacity 15ms linear 30ms,\n animation-functions.enter(\n transform,\n $icon-enter-duration_ + $icon-enter-delay_\n );\n }\n\n &::-moz-focus-inner {\n @include feature-targeting.targets($feat-structure) {\n padding: 0;\n border: 0;\n }\n }\n\n &:hover,\n &:focus {\n @include elevation-mixins.elevation(8, $query: $query);\n }\n\n &:active {\n @include elevation-mixins.elevation(12, $query: $query);\n }\n\n &:active,\n &:focus {\n // TODO(acdvorak): Should this be paired with states and/or ripple? We don't want to disable outline\n // (an accessibility/usability feature) unless we're confident that there is also a visual indication that the\n // element has focus. If the client has customized the DOM in some unexpected way, and is certain that another\n // element will receive focus instead, they can always override this property manually in their CSS.\n @include feature-targeting.targets($feat-structure) {\n outline: none;\n }\n }\n\n &:hover {\n @include feature-targeting.targets($feat-structure) {\n cursor: pointer;\n }\n }\n\n // This allows for using SVGs within them to align properly in all browsers.\n // Can remove once: https://bugzilla.mozilla.org/show_bug.cgi?id=1294515 is resolved.\n\n // stylelint-disable selector-max-type\n // postcss-bem-linter: ignore\n > svg {\n @include feature-targeting.targets($feat-structure) {\n width: 100%;\n }\n }\n // stylelint-enable selector-max-type\n}\n\n@mixin mini_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n width: variables.$mini-height;\n height: variables.$mini-height;\n }\n}\n\n@mixin extended_($query: feature-targeting.all()) {\n @include typography.typography(button, $query: $query);\n @include extended-shape-radius(variables.$shape-radius, $query: $query);\n @include extended-padding(\n variables.$extended-icon-padding,\n variables.$extended-label-padding,\n $query: $query\n );\n\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n width: auto;\n max-width: 100%;\n height: variables.$extended-height;\n // This allows the text within the extended fab to be centered for varying font sizes.\n /* @alternate */\n line-height: normal;\n }\n}\n\n@mixin icon_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-animation) {\n transition: animation-functions.enter(\n transform,\n $icon-enter-duration_,\n $icon-enter-delay_\n );\n }\n\n @include feature-targeting.targets($feat-structure) {\n fill: currentColor;\n will-change: transform;\n }\n}\n\n@mixin label_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n justify-content: flex-start;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow-x: hidden;\n overflow-y: visible;\n }\n}\n\n@mixin icon-overrides_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n}\n\n@mixin exited_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n transform: scale(0);\n opacity: 0;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: opacity 15ms linear 150ms,\n animation-functions.exit-permanent(transform, 180ms);\n }\n\n .mdc-fab__icon {\n @include feature-targeting.targets($feat-structure) {\n transform: scale(0);\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: animation-functions.exit-permanent(transform, 135ms);\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n$extended-icon-padding: 12px !default;\n$extended-label-padding: 20px !default;\n$height: 56px !default;\n$mini-height: 40px !default;\n$extended-height: 48px !default;\n$shape-radius: 50% !default;\n","//\n// Copyright 2019 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/theme/theme';\n@use '@material/typography/typography';\n@use './variables';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-form-field {\n @include typography.typography(body2, $query);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, text-primary-on-background);\n }\n\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n align-items: center;\n vertical-align: middle;\n }\n\n // stylelint-disable-next-line selector-max-type\n > label {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(margin, 0, auto);\n @include rtl-mixins.reflexive-property(\n padding,\n variables.$item-spacing,\n 0\n );\n\n order: 0;\n }\n }\n }\n\n .mdc-form-field--nowrap {\n > label {\n @include feature-targeting.targets($feat-structure) {\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n }\n }\n }\n\n .mdc-form-field--align-end {\n // stylelint-disable-next-line selector-max-type\n > label {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(margin, auto, 0);\n @include rtl-mixins.reflexive-property(\n padding,\n 0,\n variables.$item-spacing\n );\n\n order: -1;\n }\n }\n }\n\n .mdc-form-field--space-between {\n @include feature-targeting.targets($feat-structure) {\n justify-content: space-between;\n }\n\n // stylelint-disable-next-line selector-max-type\n > label {\n @include feature-targeting.targets($feat-structure) {\n margin: 0;\n\n @include rtl-mixins.rtl {\n // RTL needed for specificity\n margin: 0;\n }\n }\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/density/variables';\n\n$icon-size: 24px !default;\n\n$size: 48px !default;\n$minimum-height: 28px !default;\n$maximum-height: $size !default;\n$density-scale: variables.$default-scale !default;\n$density-config: (\n size: (\n default: $size,\n maximum: $maximum-height,\n minimum: $minimum-height,\n ),\n) !default;\n","// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/shape/functions' as shape-functions;\n@use '@material/theme/theme';\n@use '@material/typography/typography';\n@use './variables';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // postcss-bem-linter: define image-list\n .mdc-image-list {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n flex-wrap: wrap;\n // Margin and padding are set to override default user agent styles for lists, and also to center the Image List\n margin: 0 auto;\n padding: 0;\n }\n }\n\n .mdc-image-list__item,\n .mdc-image-list__image-aspect-container {\n @include feature-targeting.targets($feat-structure) {\n // Supports absolute positioning of protected supporting content for item, and image for image-aspect-container\n position: relative;\n box-sizing: border-box;\n }\n }\n\n .mdc-image-list__item {\n @include feature-targeting.targets($feat-structure) {\n list-style-type: none;\n }\n }\n\n .mdc-image-list__image {\n @include feature-targeting.targets($feat-structure) {\n width: 100%;\n }\n }\n\n // Descendant selector allows image-aspect-container to be optional in DOM structure\n .mdc-image-list__image-aspect-container .mdc-image-list__image {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n height: 100%;\n // Background styles to support div instead of img\n background-repeat: no-repeat;\n background-position: center;\n background-size: cover;\n }\n }\n\n @include aspect(1, $query: $query);\n @include shape-radius(variables.$shape-radius, $query: $query);\n\n .mdc-image-list__supporting {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, text-primary-on-background);\n }\n\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n align-items: center;\n justify-content: space-between;\n box-sizing: border-box;\n padding: 8px 0;\n line-height: variables.$icon-size;\n }\n }\n\n .mdc-image-list__label {\n @include typography.typography(subtitle1, $query: $query);\n @include typography.overflow-ellipsis($query: $query);\n }\n\n // Modifier for labels/icons with text protection, overlaying images.\n\n .mdc-image-list--with-text-protection .mdc-image-list__supporting {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n bottom: 0;\n width: 100%;\n height: variables.$text-protection-height;\n padding: 0 variables.$text-protection-horizontal-padding;\n }\n\n @include feature-targeting.targets($feat-color) {\n background: variables.$text-protection-background-color;\n color: #fff;\n }\n }\n\n // Masonry Image List, using CSS columns (i.e. renders down then across)\n\n .mdc-image-list--masonry {\n @include feature-targeting.targets($feat-structure) {\n display: block; // Override flex\n }\n\n .mdc-image-list__item {\n @include feature-targeting.targets($feat-structure) {\n break-inside: avoid-column;\n }\n }\n\n .mdc-image-list__image {\n @include feature-targeting.targets($feat-structure) {\n display: block;\n height: auto;\n }\n }\n }\n // postcss-bem-linter: end\n}\n\n@mixin aspect($width-height-ratio, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-image-list__image-aspect-container {\n @include feature-targeting.targets($feat-structure) {\n padding-bottom: calc(100% / #{$width-height-ratio});\n }\n }\n}\n\n@mixin shape-radius(\n $radius,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n .mdc-image-list__image {\n @include shape-mixins.radius($radius, $rtl-reflexive, $query: $query);\n }\n\n $selector: if(\n &,\n '&.mdc-image-list--with-text-protection',\n '.mdc-image-list--with-text-protection'\n );\n\n #{$selector} .mdc-image-list__supporting {\n $masked-radius: shape-functions.mask-radius($radius, 0 0 1 1);\n\n @include shape-mixins.radius(\n $masked-radius,\n $rtl-reflexive,\n $query: $query\n );\n }\n}\n\n// Standard Image List\n\n@mixin standard-columns(\n $column-count,\n $gutter-size: variables.$standard-gutter-size,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // This uses margin rather than padding to facilitate properly positioning the supporting content element when\n // --with-text-protection is used.\n .mdc-image-list__item {\n @include feature-targeting.targets($feat-structure) {\n // Subtract extra fraction from each item's width to ensure correct wrapping in IE/Edge which round differently\n width: calc(\n 100% / #{$column-count} - #{$gutter-size + 1 / $column-count}\n );\n margin: $gutter-size / 2;\n }\n }\n}\n\n// Masonry Image List\n\n@mixin masonry-columns(\n $column-count,\n $gutter-size: variables.$masonry-gutter-size,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n column-count: $column-count;\n column-gap: $gutter-size;\n }\n\n .mdc-image-list__item {\n @include feature-targeting.targets($feat-structure) {\n margin-bottom: $gutter-size;\n }\n }\n}\n","// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n$standard-gutter-size: 4px !default;\n$masonry-gutter-size: 16px !default;\n$icon-size: 24px !default;\n$text-protection-background-color: rgba(0, 0, 0, 0.6) !default;\n$text-protection-height: 48px !default;\n$text-protection-horizontal-padding: 16px !default;\n$shape-radius: 0 !default;\n","// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n@use 'sass:list';\n@use 'sass:map';\n@use './variables';\n@use './mixins';\n\n:root {\n @each $size in map.keys(variables.$columns) {\n --mdc-layout-grid-margin-#{$size}: #{map.get(\n variables.$default-margin,\n $size\n )};\n --mdc-layout-grid-gutter-#{$size}: #{map.get(\n variables.$default-gutter,\n $size\n )};\n --mdc-layout-grid-column-width-#{$size}: #{map.get(\n variables.$column-width,\n $size\n )};\n }\n}\n\n// postcss-bem-linter: define layout-grid\n.mdc-layout-grid {\n @each $size in map.keys(variables.$columns) {\n @include mixins.media-query_($size) {\n $margin: map.get(variables.$default-margin, $size);\n\n @include mixins.layout-grid($size, $margin, variables.$max-width);\n }\n }\n}\n\n.mdc-layout-grid__inner {\n @each $size in map.keys(variables.$columns) {\n @include mixins.media-query_($size) {\n $margin: map.get(variables.$default-margin, $size);\n $gutter: map.get(variables.$default-gutter, $size);\n\n @include mixins.inner($size, $margin, $gutter);\n }\n }\n}\n\n.mdc-layout-grid__cell {\n // select the upper breakpoint\n $upper-breakpoint: list.nth(map.keys(variables.$columns), 1);\n\n @each $size in map.keys(variables.$columns) {\n @include mixins.media-query_($size) {\n $gutter: map.get(variables.$default-gutter, $size);\n\n @include mixins.cell($size, variables.$default-column-span, $gutter);\n\n @for $span from 1 through map.get(variables.$columns, $upper-breakpoint) {\n // Span classes.\n // stylelint-disable max-nesting-depth\n @at-root .mdc-layout-grid__cell--span-#{$span},\n .mdc-layout-grid__cell--span-#{$span}-#{$size} {\n @include mixins.cell-span_($size, $span, $gutter);\n }\n // stylelint-enable max-nesting-depth\n }\n }\n }\n\n // Order override classes.\n @for $i from 1 through map.get(variables.$columns, $upper-breakpoint) {\n &--order-#{$i} {\n @include mixins.cell-order($i);\n }\n }\n\n // Alignment classes.\n &--align-top {\n @include mixins.cell-align(top);\n }\n\n &--align-middle {\n @include mixins.cell-align(middle);\n }\n\n &--align-bottom {\n @include mixins.cell-align(bottom);\n }\n}\n\n.mdc-layout-grid--fixed-column-width {\n @each $size in map.keys(variables.$columns) {\n @include mixins.media-query_($size) {\n $margin: map.get(variables.$default-margin, $size);\n $gutter: map.get(variables.$default-gutter, $size);\n $column-width: map.get(variables.$column-width, $size);\n\n @include mixins.fixed-column-width(\n $size,\n $margin,\n $gutter,\n $column-width\n );\n }\n }\n}\n\n.mdc-layout-grid--align-left {\n margin-right: auto;\n margin-left: 0;\n}\n\n.mdc-layout-grid--align-right {\n margin-right: 0;\n margin-left: auto;\n}\n// postcss-bem-linter: end\n","// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n@use 'sass:list';\n@use 'sass:map';\n@use 'sass:math';\n@use './variables';\n\n// returns the lower grid boundary or null if the smallest grid is selected\n@function breakpoint-min($size) {\n @if not map.has-key(variables.$columns, $size) {\n @error \"Invalid style specified! Choose one of #{map.keys(variables.$columns)}\";\n }\n $min: map.get(variables.$breakpoints, $size);\n\n @return if($min > 0, $min, null);\n}\n\n// returns the upper grid boundary or null if the largest grid is selected\n@function breakpoint-max($size) {\n @if not map.has-key(variables.$columns, $size) {\n @error \"Invalid style specified! Choose one of #{map.keys(variables.$columns)}\";\n }\n $names: map.keys(variables.$columns);\n $n: list.index($names, $size);\n $prev: if($n > 1, list.nth($names, $n - 1), null);\n\n @return if($prev, (breakpoint-min($prev) - 1px), null);\n}\n\n// Private mixins, meant for internal use.\n@mixin media-query_($size) {\n @if not map.has-key(variables.$columns, $size) {\n @error \"Invalid style specified! Choose one of #{map.keys(variables.$columns)}\";\n }\n\n $min: breakpoint-min($size);\n $max: breakpoint-max($size);\n\n @if $min == null and $max != null {\n // Phone\n @media (max-width: $max) {\n @content;\n }\n } @else if $min != null and $max != null {\n // Tablet\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $min != null and $max == null {\n // Desktop\n @media (min-width: $min) {\n @content;\n }\n } @else {\n // Fallback - no breakpoints defined\n @content;\n }\n}\n\n@mixin cell-span_($size, $span, $gutter) {\n @if not map.has-key(variables.$columns, $size) {\n @error \"Invalid style specified! Choose one of #{map.keys(variables.$columns)}\";\n }\n\n $percent: math.percentage($span / map.get(variables.$columns, $size));\n\n @if $percent > 100% {\n $percent: 100%;\n }\n\n width: calc(#{$percent} - #{$gutter});\n // stylelint-disable-next-line declaration-block-no-duplicate-properties\n width: calc(#{$percent} - var(--mdc-layout-grid-gutter-#{$size}, #{$gutter}));\n\n @supports (display: grid) {\n width: auto;\n grid-column-end: span math.min($span, map.get(variables.$columns, $size));\n }\n}\n\n// Public mixins, meant for developer usage.\n@mixin layout-grid($size, $margin, $max-width: null) {\n @if not map.has-key(variables.$columns, $size) {\n @error \"Invalid style specified! Choose one of #{map.keys(variables.$columns)}\";\n }\n\n box-sizing: border-box;\n margin: 0 auto;\n padding: $margin;\n // stylelint-disable-next-line declaration-block-no-duplicate-properties\n padding: var(--mdc-layout-grid-margin-#{$size}, #{$margin});\n\n @if $max-width {\n max-width: $max-width;\n }\n}\n\n@mixin inner($size, $margin, $gutter) {\n @if not map.has-key(variables.$columns, $size) {\n @error \"Invalid style specified! Choose one of #{map.keys(variables.$columns)}\";\n }\n\n display: flex;\n flex-flow: row wrap;\n align-items: stretch;\n margin: -$gutter / 2;\n // stylelint-disable-next-line declaration-block-no-duplicate-properties\n margin: calc(var(--mdc-layout-grid-gutter-#{$size}, #{$gutter}) / 2 * -1);\n\n @supports (display: grid) {\n display: grid;\n margin: 0;\n grid-gap: $gutter;\n // stylelint-disable-next-line declaration-block-no-duplicate-properties\n grid-gap: var(--mdc-layout-grid-gutter-#{$size}, $gutter);\n grid-template-columns: repeat(\n map.get(variables.$columns, $size),\n minmax(0, 1fr)\n );\n }\n}\n\n@mixin cell($size, $default-span, $gutter) {\n @if not map.has-key(variables.$columns, $size) {\n @error \"Invalid style specified! Choose one of #{map.keys(variables.$columns)}\";\n }\n\n @include cell-span_($size, $default-span, $gutter);\n\n box-sizing: border-box;\n margin: $gutter / 2;\n // stylelint-disable-next-line declaration-block-no-duplicate-properties\n margin: calc(var(--mdc-layout-grid-gutter-#{$size}, #{$gutter}) / 2);\n\n @supports (display: grid) {\n margin: 0;\n }\n}\n\n@mixin cell-order($order) {\n order: $order;\n}\n\n@mixin cell-align($position) {\n @if $position == 'top' {\n align-self: flex-start;\n\n @supports (display: grid) {\n align-self: start;\n }\n }\n\n @if $position == 'middle' {\n align-self: center;\n }\n\n @if $position == 'bottom' {\n align-self: flex-end;\n\n @supports (display: grid) {\n align-self: end;\n }\n }\n\n @if $position == 'stretch' {\n align-self: stretch;\n }\n}\n\n@mixin fixed-column-width($size, $margin, $gutter, $column-width) {\n @if not map.has-key(variables.$columns, $size) {\n @error \"Invalid style specified! Choose one of #{map.keys(variables.$columns)}\";\n }\n\n $columnCount: map.get(variables.$columns, $size);\n $gutter-number: $columnCount - 1;\n $margin-number: 2;\n\n width: $column-width * $columnCount + $gutter * $gutter-number + $margin *\n $margin-number;\n // stylelint-disable-next-line declaration-block-no-duplicate-properties\n width: calc(\n var(--mdc-layout-grid-column-width-#{$size}, #{$column-width}) * #{$columnCount} +\n var(--mdc-layout-grid-gutter-#{$size}, #{$gutter}) * #{$gutter-number} +\n var(--mdc-layout-grid-margin-#{$size}, #{$margin}) * #{$margin-number}\n );\n}\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n@use '@material/theme/theme';\n@use '@material/theme/custom-properties';\n\n@mixin primary-indeterminate-translate-keyframes_ {\n @keyframes mdc-linear-progress-primary-indeterminate-translate {\n 0% {\n transform: translateX(0);\n }\n\n 20% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(0);\n }\n\n 59.15% {\n animation-timing-function: cubic-bezier(\n 0.302435,\n 0.381352,\n 0.55,\n 0.956352\n );\n\n $primary-half: custom-properties.create(\n --mdc-linear-progress-primary-half,\n 83.67142%\n );\n @include apply-translate_($primary-half);\n }\n\n 100% {\n $primary-full: custom-properties.create(\n --mdc-linear-progress-primary-full,\n 200.611057%\n );\n @include apply-translate_($primary-full);\n }\n }\n}\n\n@mixin primary-indeterminate-scale-keyframes_ {\n @keyframes mdc-linear-progress-primary-indeterminate-scale {\n 0% {\n transform: scaleX(0.08);\n }\n\n 36.65% {\n animation-timing-function: cubic-bezier(0.334731, 0.12482, 0.785844, 1);\n transform: scaleX(0.08);\n }\n\n 69.15% {\n animation-timing-function: cubic-bezier(0.06, 0.11, 0.6, 1);\n transform: scaleX(0.661479);\n }\n\n 100% {\n transform: scaleX(0.08);\n }\n }\n}\n\n@mixin secondary-indeterminate-translate-keyframes_ {\n @keyframes mdc-linear-progress-secondary-indeterminate-translate {\n 0% {\n animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);\n transform: translateX(0);\n }\n\n 25% {\n animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);\n $secondary-quarter: custom-properties.create(\n --mdc-linear-progress-secondary-quarter,\n 37.651913%\n );\n @include apply-translate_($secondary-quarter);\n }\n\n 48.35% {\n animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);\n $secondary-half: custom-properties.create(\n --mdc-linear-progress-secondary-half,\n 84.386165%\n );\n @include apply-translate_($secondary-half);\n }\n\n 100% {\n $secondary-full: custom-properties.create(\n --mdc-linear-progress-secondary-full,\n 160.277782%\n );\n @include apply-translate_($secondary-full);\n }\n }\n}\n\n@mixin secondary-indeterminate-scale-keyframes_ {\n @keyframes mdc-linear-progress-secondary-indeterminate-scale {\n 0% {\n animation-timing-function: cubic-bezier(\n 0.205028,\n 0.057051,\n 0.57661,\n 0.453971\n );\n transform: scaleX(0.08);\n }\n\n 19.15% {\n animation-timing-function: cubic-bezier(\n 0.152313,\n 0.196432,\n 0.648374,\n 1.004315\n );\n transform: scaleX(0.457104);\n }\n\n 44.15% {\n animation-timing-function: cubic-bezier(\n 0.257759,\n -0.003163,\n 0.211762,\n 1.38179\n );\n transform: scaleX(0.72796);\n }\n\n 100% {\n transform: scaleX(0.08);\n }\n }\n}\n\n@mixin buffering-keyframes_ {\n @keyframes mdc-linear-progress-buffering {\n from {\n // Normally the buffer dots start from the left and overflow to the right.\n // We rotate by 180deg so that the buffer dots start on the right when\n // in non-reversed mode and overflow to the left.\n transform: rotate(180deg) translateX(-10px);\n }\n }\n}\n\n@mixin primary-indeterminate-translate-reverse-keyframes_ {\n @keyframes mdc-linear-progress-primary-indeterminate-translate-reverse {\n 0% {\n transform: translateX(0);\n }\n\n 20% {\n animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);\n transform: translateX(0);\n }\n\n 59.15% {\n animation-timing-function: cubic-bezier(\n 0.302435,\n 0.381352,\n 0.55,\n 0.956352\n );\n $primary-half: custom-properties.create(\n --mdc-linear-progress-primary-half-neg,\n -83.67142%\n );\n @include apply-translate_($primary-half);\n }\n\n 100% {\n $primary-full: custom-properties.create(\n --mdc-linear-progress-primary-full-neg,\n -200.611057%\n );\n @include apply-translate_($primary-full);\n }\n }\n}\n\n@mixin secondary-indeterminate-translate-reverse-keyframes_ {\n @keyframes mdc-linear-progress-secondary-indeterminate-translate-reverse {\n 0% {\n animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);\n transform: translateX(0);\n }\n\n 25% {\n animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);\n $secondary-quarter: custom-properties.create(\n --mdc-linear-progress-secondary-quarter-neg,\n -37.651913%\n );\n @include apply-translate_($secondary-quarter);\n }\n\n 48.35% {\n animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);\n $secondary-half: custom-properties.create(\n --mdc-linear-progress-secondary-half-neg,\n -84.386165%\n );\n @include apply-translate_($secondary-half);\n }\n\n 100% {\n $secondary-full: custom-properties.create(\n --mdc-linear-progress-secondary-full-neg,\n -160.277782%\n );\n @include apply-translate_($secondary-full);\n }\n }\n}\n\n@mixin buffering-reverse-keyframes_ {\n @keyframes mdc-linear-progress-buffering-reverse {\n from {\n transform: translateX(-10px);\n }\n }\n}\n\n@mixin apply-translate_($value) {\n @include theme.property(\n transform,\n translateX(value),\n $replace: (value: $value)\n );\n}\n","// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n// stylelint-disable no-unknown-animations --\n// Animations keyframes are included in `keyframes.scss`.\n// stylelint-disable selector-class-pattern --\n// Selector '.mdc-*' should only be used in this project.\n\n@use 'sass:string';\n@use '@material/animation/functions' as animation-functions;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/rtl/rtl';\n@use '@material/theme/theme';\n@use '@material/theme/theme-color';\n@use './variables';\n@use './keyframes';\n\n//\n// Public\n//\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include feature-targeting.targets($feat-animation) {\n @include keyframes.primary-indeterminate-translate-keyframes_;\n @include keyframes.primary-indeterminate-scale-keyframes_;\n @include keyframes.secondary-indeterminate-translate-keyframes_;\n @include keyframes.secondary-indeterminate-scale-keyframes_;\n @include keyframes.buffering-keyframes_;\n @include keyframes.primary-indeterminate-translate-reverse-keyframes_;\n @include keyframes.secondary-indeterminate-translate-reverse-keyframes_;\n @include keyframes.buffering-reverse-keyframes_;\n }\n\n .mdc-linear-progress {\n @include feature-targeting.targets($feat-structure) {\n position: relative;\n width: 100%;\n height: variables.$height;\n transform: translateZ(0);\n // Create a border around the bar in Windows High Contrast Mode.\n outline: 1px solid transparent;\n overflow: hidden;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: animation-functions.exit-temporary(opacity, 250ms);\n }\n\n &__bar {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n width: 100%;\n height: 100%;\n animation: none;\n transform-origin: top left;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: animation-functions.exit-temporary(transform, 250ms);\n }\n }\n\n &__bar-inner {\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n position: absolute;\n width: 100%;\n animation: none;\n // border-top is used rather than background-color to ensure that the\n // bar is visible in Windows High Contrast Mode.\n border-top: variables.$height solid;\n }\n }\n\n &__buffer {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n position: absolute;\n width: 100%;\n height: 100%;\n }\n }\n\n &__buffer-dots {\n @include feature-targeting.targets($feat-structure) {\n background-repeat: repeat-x;\n background-size: 10px variables.$height;\n flex: auto;\n transform: rotate(180deg);\n }\n\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-linear-progress-buffering 250ms infinite linear;\n }\n }\n\n &__buffer-bar {\n @include feature-targeting.targets($feat-structure) {\n flex: 0 1 100%;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: animation-functions.exit-temporary(flex-basis, 250ms);\n }\n }\n\n &__primary-bar {\n @include feature-targeting.targets($feat-structure) {\n transform: scaleX(0);\n }\n }\n\n &__secondary-bar {\n @include feature-targeting.targets($feat-structure) {\n visibility: hidden;\n }\n }\n\n @include indeterminate_($query: $query);\n\n @include rtl.rtl() {\n // The rtl() mixin does not account for nested `dir` attributes. Set\n // `dir` attribute on root to take highest priority.\n &:not([dir='ltr']) {\n @include _rtl-styles($query: $query);\n }\n }\n\n &--closed {\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n }\n\n &--closed-animation-off {\n .mdc-linear-progress__buffer-dots {\n @include feature-targeting.targets($feat-animation) {\n animation: none;\n }\n }\n\n &.mdc-linear-progress--indeterminate {\n .mdc-linear-progress__bar,\n .mdc-linear-progress__bar .mdc-linear-progress__bar-inner {\n @include feature-targeting.targets($feat-animation) {\n animation: none;\n }\n }\n }\n }\n }\n\n @at-root {\n @include bar-color(primary, $query: $query);\n @include buffer-color(variables.$baseline-buffer-color, $query: $query);\n }\n}\n\n@mixin bar-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-linear-progress__bar-inner {\n @include feature-targeting.targets($feat-color) {\n // Border is used rather than background-color to ensure that the\n // bar is visible in Windows High Contrast Mode.\n @include theme.property(border-color, $color);\n }\n }\n}\n\n@mixin buffer-color($color, $query: feature-targeting.all()) {\n // We need to escape the '#' character as \"%23\" for SVG because '#' is a reserved character in URIs.\n $color-value-for-css: theme-color.prop-value($color);\n $color-value-for-svg: str-replace_(\n string.unquote('#{$color-value-for-css}'),\n '#',\n '%23'\n );\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-linear-progress__buffer-dots {\n @include feature-targeting.targets($feat-color) {\n // SVG is optimized for data URI (https://codepen.io/tigt/post/optimizing-svgs-in-data-uris)\n // stylelint-disable-next-line function-url-quotes\n background-image: url(\"data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' enable-background='new 0 0 5 2' xml:space='preserve' viewBox='0 0 5 2' preserveAspectRatio='none slice'%3E%3Ccircle cx='1' cy='1' r='1' fill='#{$color-value-for-svg}'/%3E%3C/svg%3E\");\n }\n }\n\n .mdc-linear-progress__buffer-bar {\n @include feature-targeting.targets($feat-color) {\n background-color: $color-value-for-css;\n }\n }\n}\n\n//\n// Private\n//\n\n@mixin indeterminate_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n &--indeterminate {\n .mdc-linear-progress__bar {\n @include feature-targeting.targets($feat-structure) {\n transition: none;\n }\n }\n\n .mdc-linear-progress__primary-bar {\n @include feature-targeting.targets($feat-structure) {\n left: -145.166611%;\n }\n }\n\n .mdc-linear-progress__secondary-bar {\n @include feature-targeting.targets($feat-structure) {\n left: -54.888891%;\n visibility: visible;\n }\n }\n\n &.mdc-linear-progress--animation-ready {\n .mdc-linear-progress__primary-bar {\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-linear-progress-primary-indeterminate-translate 2s\n infinite linear;\n }\n\n > .mdc-linear-progress__bar-inner {\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-linear-progress-primary-indeterminate-scale 2s\n infinite linear;\n }\n }\n }\n\n .mdc-linear-progress__secondary-bar {\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-linear-progress-secondary-indeterminate-translate 2s\n infinite linear;\n }\n\n > .mdc-linear-progress__bar-inner {\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-linear-progress-secondary-indeterminate-scale 2s\n infinite linear;\n }\n }\n }\n }\n }\n}\n\n@mixin _rtl-styles($query: $query) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n .mdc-linear-progress__bar {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n right: 0;\n /* @noflip */\n transform-origin: center right;\n }\n }\n\n &.mdc-linear-progress--animation-ready {\n .mdc-linear-progress__primary-bar {\n @include feature-targeting.targets($feat-animation) {\n animation-name: mdc-linear-progress-primary-indeterminate-translate-reverse;\n }\n }\n\n .mdc-linear-progress__secondary-bar {\n @include feature-targeting.targets($feat-animation) {\n animation-name: mdc-linear-progress-secondary-indeterminate-translate-reverse;\n }\n }\n }\n\n .mdc-linear-progress__buffer-dots {\n @include feature-targeting.targets($feat-animation) {\n animation: mdc-linear-progress-buffering-reverse 250ms infinite linear;\n }\n\n @include feature-targeting.targets($feat-structure) {\n transform: rotate(0);\n }\n }\n\n &.mdc-linear-progress--indeterminate {\n .mdc-linear-progress__primary-bar {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n right: -145.166611%;\n /* @noflip */\n left: auto;\n }\n }\n\n .mdc-linear-progress__secondary-bar {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n right: -54.888891%;\n /* @noflip */\n left: auto;\n }\n }\n }\n}\n\n// Based on https://css-tricks.com/snippets/sass/str-replace-function/\n@function str-replace_($string, $search, $replace) {\n $index: string.index($string, $search);\n\n @if $index {\n $head: string.slice($string, 1, $index - 1);\n $tail: str-replace_(\n string.slice($string, $index + string.length($search)),\n $search,\n $replace\n );\n\n @return $head + $replace + $tail;\n }\n\n @return $string;\n}\n","// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n$baseline-buffer-color: #e6e6e6 !default;\n$height: 4px;\n","// Copyright 2016 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n@use '@material/density/variables' as density-variables;\n@use '@material/theme/theme-color';\n\n$ripple-target: '.mdc-list-item__ripple';\n\n$divider-color-on-light-bg: rgba(0, 0, 0, 0.12) !default;\n$divider-color-on-dark-bg: rgba(255, 255, 255, 0.2) !default;\n$side-padding: 16px !default;\n$trailing-padding: 16px !default;\n$text-offset: 72px !default;\n$text-disabled-opacity: theme-color.text-emphasis(disabled) !default;\n$text-disabled-color: on-surface !default;\n$text-selected-color: primary !default;\n\n$single-line-height: 48px !default;\n$single-line-minimum-height: 24px !default;\n$single-line-maximum-height: $single-line-height !default;\n$single-line-density-scale: density-variables.$default-scale !default;\n$single-line-density-config: (\n height: (\n default: $single-line-height,\n maximum: $single-line-maximum-height,\n minimum: $single-line-minimum-height,\n ),\n) !default;\n\n$item-primary-text-baseline-height: 28px !default;\n$item-primary-text-baseline-height-with-graphic: 32px !default;\n$item-secondary-text-baseline-height: 20px !default;\n$dense-item-primary-text-baseline-height: 24px !default;\n\n$two-line-height: 64px !default;\n$two-line-graphic-height: 72px !default;\n$two-line-icon-top-margin: 16px !default;\n\n// TODO(b/156624966): this is used to support legacy usage of embedded graphics.\n$deprecated-graphic-config: (\n graphic-size: (\n width: 24px,\n height: 24px,\n ),\n leading-padding: 16px,\n text-offset: 72px,\n) !default;\n\n$textual-variant-config: (\n single-line-height: $single-line-height,\n graphic-size: (\n width: 24px,\n height: 24px,\n ),\n leading-padding: 16px,\n text-offset: 16px,\n) !default;\n\n$icon-variant-config: (\n single-line-height: 56px,\n graphic-size: (\n width: 24px,\n height: 24px,\n ),\n leading-padding: 16px,\n text-offset: 72px,\n) !default;\n\n$avatar-variant-config: (\n single-line-height: 56px,\n graphic-size: (\n width: 40px,\n height: 40px,\n ),\n leading-padding: 16px,\n text-offset: 72px,\n) !default;\n\n$thumbnail-variant-config: (\n single-line-height: 56px,\n graphic-size: (\n width: 40px,\n height: 40px,\n ),\n leading-padding: 16px,\n text-offset: 72px,\n) !default;\n\n$image-variant-config: (\n single-line-height: 72px,\n graphic-size: (\n width: 56px,\n height: 56px,\n ),\n leading-padding: 16px,\n text-offset: 88px,\n) !default;\n\n$video-variant-config: (\n single-line-height: 72px,\n graphic-size: (\n width: 100px,\n height: 56px,\n ),\n leading-padding: 0px,\n text-offset: 116px,\n) !default;\n","@use 'sass:list';\n@use 'sass:map';\n@use '@material/theme/theme';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/density/functions' as density-functions;\n@use '@material/dom/mixins' as dom-mixins;\n@use '@material/typography/typography';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/theme-color';\n@use './evolution-variables' as variables;\n\n@mixin without-ripple($query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-typography: feature-targeting.create-target($query, typography);\n\n //\n // Items\n //\n\n @include evolution-list-primary-text-ink-color(\n text-primary-on-background,\n $query\n );\n @include evolution-list-secondary-text-ink-color(\n text-secondary-on-background,\n $query\n );\n @include evolution-list-icon-fill-color(transparent, $query);\n @include evolution-list-icon-ink-color(text-icon-on-background, $query);\n @include evolution-list-meta-text-ink-color(text-hint-on-background, $query);\n @include evolution-list-disabled-opacity(\n variables.$content-disabled-opacity,\n $query\n );\n @include evolution-list-disabled-ink-color(\n variables.$content-disabled-color,\n $query\n );\n @include evolution-list-selected-ink-color(\n variables.$content-selected-color,\n $query\n );\n\n @include evolution-group-subheader-ink-color(\n text-primary-on-background,\n $query\n );\n\n @include _high-contrast-mode($query);\n\n .mdc-evolution-list {\n @include _evolution-list-base($query: $query);\n }\n\n .mdc-evolution-list-item {\n @include _evolution-item-base($query: $query);\n @include evolution-item-spacing(16px, $query: $query);\n\n @include _evolution-one-line-item-density(\n variables.$one-line-item-density-scale,\n $query: $query\n );\n @include _evolution-two-line-item-density(\n variables.$two-line-item-density-scale,\n $query: $query\n );\n @include _evolution-three-line-item-density(\n variables.$three-line-item-density-scale,\n $query: $query\n );\n\n @include evolution-one-line-item-start-alignment(center, $query: $query);\n @include evolution-two-line-item-start-alignment(\n $alignment: flex-start,\n $offset: 16px,\n $query: $query\n );\n @include evolution-three-line-item-start-alignment(\n $alignment: flex-start,\n $offset: 16px,\n $query: $query\n );\n\n @include evolution-one-line-item-end-alignment(center, $query: $query);\n @include evolution-two-line-item-end-alignment(center, $query: $query);\n @include evolution-three-line-item-end-alignment(\n $alignment: flex-start,\n $offset: 16px,\n $query: $query\n );\n\n @include feature-targeting.targets($feat-structure) {\n align-items: stretch;\n cursor: pointer;\n }\n\n // Reset mouse cursor for disabled and non-interactive items.\n &.mdc-evolution-list-item--disabled,\n &.mdc-evolution-list-item--non-interactive {\n @include feature-targeting.targets($feat-structure) {\n cursor: auto;\n }\n }\n\n // For components using aria-activedescendant, the focus pseudoclass is\n // never applied and use `.mdc-ripple-upgraded--background-focused` instead.\n &:not(.mdc-evolution-list-item--selected):focus::before,\n &.mdc-ripple-upgraded--background-focused::before {\n @include dom-mixins.transparent-border($query: $query);\n }\n\n &.mdc-evolution-list-item--selected::before {\n @include dom-mixins.transparent-border(\n $border-width: 3px,\n $border-style: double,\n $query: $query\n );\n }\n }\n\n // Override anchor tag styles for the use-case of a list being used for navigation\n // stylelint-disable selector-max-type,selector-no-qualifying-type\n a.mdc-evolution-list-item {\n @include feature-targeting.targets($feat-structure) {\n color: inherit;\n text-decoration: none;\n }\n }\n // stylelint-enable selector-max-type,selector-no-qualifying-type\n\n .mdc-evolution-list-item__start {\n @include feature-targeting.targets($feat-structure) {\n fill: currentColor;\n flex-shrink: 0;\n }\n }\n\n .mdc-evolution-list-item__end {\n @include feature-targeting.targets($feat-structure) {\n flex-shrink: 0;\n }\n }\n\n .mdc-evolution-list-item__content {\n @include typography.overflow-ellipsis($query);\n @include feature-targeting.targets($feat-structure) {\n align-self: center;\n flex: 1;\n }\n\n .mdc-evolution-list-item--with-two-lines &,\n .mdc-evolution-list-item--with-three-lines & {\n @include feature-targeting.targets($feat-structure) {\n align-self: stretch;\n }\n }\n\n // Disable interaction on label elements that may automatically\n // toggle corresponding checkbox / radio input.\n &[for] {\n @include feature-targeting.targets($feat-structure) {\n pointer-events: none;\n }\n }\n }\n\n .mdc-evolution-list-item__primary-text {\n @include typography.typography(subtitle1, $query);\n @include typography.overflow-ellipsis($query);\n\n .mdc-evolution-list-item--with-two-lines &,\n .mdc-evolution-list-item--with-three-lines & {\n @include typography.text-baseline(\n $top: 28px,\n $bottom: 20px,\n $query: $query\n );\n }\n }\n\n .mdc-evolution-list-item__secondary-text {\n @include typography.typography(body2, $query);\n // TODO (b/168048902): disable this for three-line (multi-line) lists.\n @include typography.overflow-ellipsis($query);\n @include typography.text-baseline(\n $top: 20px,\n $display: block,\n $query: $query\n );\n }\n\n .mdc-evolution-list-item__overline-text {\n // TODO (b/168043604): fully style overline.\n @include typography.overflow-ellipsis($query);\n\n .mdc-evolution-list-item--with-two-lines &,\n .mdc-evolution-list-item--with-three-lines & {\n @include typography.text-baseline(\n $top: 24px,\n $bottom: 20px,\n $query: $query\n );\n }\n }\n\n .mdc-evolution-list-item--with-leading-avatar {\n @include evolution-item-start-spacing(16px, $query: $query);\n @include evolution-item-start-size(40px, $query: $query);\n @include _evolution-two-line-item-primary-baseline(\n 32px,\n 20px,\n $query: $query\n );\n @include _evolution-two-line-item-meta-baseline($top: 32px, $query: $query);\n @include _evolution-one-line-item-tall-density(\n variables.$one-line-item-density-scale,\n $query: $query\n );\n @include _evolution-two-line-item-tall-density(\n variables.$two-line-item-density-scale,\n $query: $query\n );\n\n .mdc-evolution-list-item__start {\n @include feature-targeting.targets($feat-structure) {\n border-radius: 50%;\n }\n }\n }\n\n .mdc-evolution-list-item--with-leading-icon {\n @include evolution-item-start-size(24px, $query: $query);\n @include evolution-item-start-spacing(\n $leading: 16px,\n $trailing: 32px,\n $query: $query\n );\n @include _evolution-two-line-item-primary-baseline(\n 32px,\n 20px,\n $query: $query\n );\n @include _evolution-two-line-item-meta-baseline($top: 32px, $query: $query);\n @include _evolution-one-line-item-tall-density(\n variables.$one-line-item-density-scale,\n $query: $query\n );\n @include _evolution-two-line-item-tall-density(\n variables.$two-line-item-density-scale,\n $query: $query\n );\n }\n\n .mdc-evolution-list-item--with-leading-thumbnail {\n @include evolution-item-start-spacing(16px, $query: $query);\n @include evolution-item-start-size(40px, $query: $query);\n @include _evolution-two-line-item-primary-baseline(\n 32px,\n 20px,\n $query: $query\n );\n @include _evolution-two-line-item-meta-baseline($top: 32px, $query: $query);\n @include _evolution-one-line-item-tall-density(\n variables.$one-line-item-density-scale,\n $query: $query\n );\n @include _evolution-two-line-item-tall-density(\n variables.$two-line-item-density-scale,\n $query: $query\n );\n }\n\n .mdc-evolution-list-item--with-leading-image {\n @include evolution-item-start-spacing(16px, $query: $query);\n @include evolution-item-start-size(56px, $query: $query);\n @include _evolution-two-line-item-primary-baseline(\n 32px,\n 20px,\n $query: $query\n );\n @include _evolution-two-line-item-meta-baseline($top: 32px, $query: $query);\n @include _evolution-one-line-item-taller-density(\n variables.$one-line-item-density-scale,\n $query: $query\n );\n @include _evolution-two-line-item-tall-density(\n variables.$two-line-item-density-scale,\n $query: $query\n );\n }\n\n .mdc-evolution-list-item--with-leading-video {\n @include evolution-two-line-item-start-alignment(\n $alignment: flex-start,\n $offset: 8px,\n $query: $query\n );\n @include evolution-item-start-spacing(\n $leading: 0,\n $trailing: 16px,\n $query: $query\n );\n @include evolution-item-start-size(\n $width: 100px,\n $height: 56px,\n $query: $query\n );\n @include _evolution-two-line-item-primary-baseline(\n 32px,\n 20px,\n $query: $query\n );\n @include _evolution-two-line-item-meta-baseline($top: 32px, $query: $query);\n @include _evolution-one-line-item-taller-density(\n variables.$one-line-item-density-scale,\n $query: $query\n );\n @include _evolution-two-line-item-tall-density(\n variables.$two-line-item-density-scale,\n $query: $query\n );\n }\n\n .mdc-evolution-list-item--with-leading-checkbox {\n $leading: absorb-overflow(16px, $actual: 40px, $available: 24px);\n $trailing: absorb-overflow(32px, $actual: 40px, $available: 24px);\n $top: absorb-overflow(16px, $actual: 40px, $available: 24px);\n\n @include evolution-item-start-spacing($leading, $trailing, $query: $query);\n @include evolution-item-start-size(40px, $query: $query);\n @include evolution-two-line-item-start-alignment(\n $alignment: flex-start,\n $offset: $top,\n $query: $query\n );\n @include _evolution-two-line-item-primary-baseline(\n 32px,\n 20px,\n $query: $query\n );\n @include _evolution-two-line-item-meta-baseline($top: 32px, $query: $query);\n @include _evolution-one-line-item-tall-density(\n variables.$one-line-item-density-scale,\n $query: $query\n );\n @include _evolution-two-line-item-tall-density(\n variables.$two-line-item-density-scale,\n $query: $query\n );\n }\n\n .mdc-evolution-list-item--with-leading-radio {\n $leading: absorb-overflow(16px, $actual: 40px, $available: 24px);\n $trailing: absorb-overflow(32px, $actual: 40px, $available: 24px);\n $top: absorb-overflow(16px, $actual: 40px, $available: 24px);\n\n @include evolution-item-start-spacing($leading, $trailing, $query: $query);\n @include evolution-item-start-size(40px, $query: $query);\n @include evolution-two-line-item-start-alignment(\n $alignment: flex-start,\n $offset: $top,\n $query: $query\n );\n @include _evolution-two-line-item-primary-baseline(\n 32px,\n 20px,\n $query: $query\n );\n @include _evolution-two-line-item-meta-baseline($top: 32px, $query: $query);\n @include _evolution-one-line-item-tall-density(\n variables.$one-line-item-density-scale,\n $query: $query\n );\n @include _evolution-two-line-item-tall-density(\n variables.$two-line-item-density-scale,\n $query: $query\n );\n }\n\n .mdc-evolution-list-item--with-leading-switch {\n @include evolution-item-start-spacing(16px, $query: $query);\n @include evolution-item-start-size(\n $width: 36px,\n $height: 20px,\n $query: $query\n );\n @include evolution-two-line-item-start-alignment(\n $alignment: flex-start,\n $offset: 16px,\n $query: $query\n );\n @include _evolution-two-line-item-primary-baseline(\n 32px,\n 20px,\n $query: $query\n );\n @include _evolution-two-line-item-meta-baseline($top: 32px, $query: $query);\n @include _evolution-one-line-item-tall-density(\n variables.$one-line-item-density-scale,\n $query: $query\n );\n @include _evolution-two-line-item-tall-density(\n variables.$two-line-item-density-scale,\n $query: $query\n );\n }\n\n .mdc-evolution-list-item--with-trailing-icon {\n @include evolution-item-end-spacing(16px, $query: $query);\n @include evolution-item-end-size(24px, $query: $query);\n }\n\n .mdc-evolution-list-item--with-trailing-meta {\n @include evolution-two-line-item-end-alignment(flex-start, $query: $query);\n @include evolution-three-line-item-end-alignment(\n flex-start,\n $query: $query\n );\n @include evolution-item-end-spacing(\n $leading: 28px,\n $trailing: 16px,\n $query: $query\n );\n @include _evolution-two-line-item-end-baseline($top: 28px, $query: $query);\n @include _evolution-three-line-item-end-baseline(\n $top: 28px,\n $query: $query\n );\n\n .mdc-evolution-list-item__end {\n @include typography.typography(caption, $query);\n }\n }\n\n .mdc-evolution-list-item--with-trailing-checkbox {\n $leading: absorb-overflow(32px, $actual: 40px, $available: 24px);\n $trailing: absorb-overflow(16px, $actual: 40px, $available: 24px);\n $top: absorb-overflow(16px, $actual: 40px, $available: 24px);\n\n @include evolution-item-end-spacing($leading, $trailing, $query: $query);\n @include evolution-item-end-size(40px, $query: $query);\n @include evolution-three-line-item-end-alignment(\n $alignment: flex-start,\n $offset: $top,\n $query: $query\n );\n }\n\n .mdc-evolution-list-item--with-trailing-radio {\n $leading: absorb-overflow(32px, $actual: 40px, $available: 24px);\n $trailing: absorb-overflow(16px, $actual: 40px, $available: 24px);\n $top: absorb-overflow(16px, $actual: 40px, $available: 24px);\n\n @include evolution-item-end-spacing($leading, $trailing, $query: $query);\n @include evolution-item-end-size(40px, $query: $query);\n @include evolution-three-line-item-end-alignment(\n $alignment: flex-start,\n $offset: $top,\n $query: $query\n );\n }\n\n .mdc-evolution-list-item--with-trailing-switch {\n @include evolution-item-end-spacing(16px, $query: $query);\n @include evolution-item-end-size(\n $width: 36px,\n $height: 20px,\n $query: $query\n );\n @include evolution-three-line-item-end-alignment(\n $alignment: flex-start,\n $offset: 16px,\n $query: $query\n );\n }\n\n //\n // Grouping\n //\n\n .mdc-evolution-list-group {\n @include feature-targeting.targets($feat-structure) {\n // Cancel top/bottom padding on individual lists within group\n .mdc-list {\n padding: 0;\n }\n }\n }\n\n .mdc-evolution-list-group__subheader {\n $mdc-list-subheader-virtual-height: 3rem;\n $mdc-list-subheader-leading: map.get(\n map.get(typography.$styles, body1),\n line-height\n );\n $mdc-list-subheader-margin: calc(\n (#{$mdc-list-subheader-virtual-height} - #{$mdc-list-subheader-leading}) /\n 2\n );\n\n @include typography.typography(subtitle1, $query);\n @include feature-targeting.targets($feat-structure) {\n margin: $mdc-list-subheader-margin variables.$side-padding;\n }\n }\n\n //\n // Dividers\n //\n\n $divider-color: if(\n theme-color.tone(theme-color.$background) == 'dark',\n variables.$divider-color-on-dark-bg,\n variables.$divider-color-on-light-bg\n );\n\n @include evolution-divider-color($divider-color, $query: $query);\n\n .mdc-evolution-list-divider {\n @include feature-targeting.targets($feat-structure) {\n height: 1px;\n padding: 0;\n\n // Allows the use of padding to specify leading and trailing insets\n // independently.\n background-clip: content-box;\n }\n\n @include evolution-padded-divider-leading-offset(16px, $query: $query);\n @include evolution-inset-divider-leading-offset(16px, $query: $query);\n @include evolution-inset-divider-trailing-offset(16px, $query: $query);\n }\n\n .mdc-evolution-list-divider--with-leading-icon {\n @include evolution-inset-divider-leading-offset(72px, $query: $query);\n }\n\n .mdc-evolution-list-divider--with-leading-image {\n @include evolution-inset-divider-leading-offset(88px, $query: $query);\n }\n\n .mdc-evolution-list-divider--with-leading-thumbnail {\n @include evolution-inset-divider-leading-offset(72px, $query: $query);\n }\n\n .mdc-evolution-list-divider--with-leading-video {\n @include evolution-padded-divider-leading-offset(0px, $query: $query);\n @include evolution-inset-divider-leading-offset(116px, $query: $query);\n }\n\n .mdc-evolution-list-divider--with-leading-avatar {\n @include evolution-inset-divider-leading-offset(72px, $query: $query);\n }\n\n .mdc-evolution-list-divider--with-leading-checkbox {\n @include evolution-inset-divider-leading-offset(72px, $query: $query);\n }\n\n .mdc-evolution-list-divider--with-leading-switch {\n @include evolution-inset-divider-leading-offset(84px, $query: $query);\n }\n\n .mdc-evolution-list-divider--with-leading-radio {\n @include evolution-inset-divider-leading-offset(72px, $query: $query);\n }\n}\n\n@mixin with-ripple($query: feature-targeting.all()) {\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n :not(.mdc-evolution-list-item--disabled).mdc-evolution-list-item {\n @include _evolution-item-interactive-ripple($query);\n }\n\n .mdc-evolution-list-item--disabled {\n @include ripple.surface(\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple.radius-bounded(\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states-base-color(\n theme-color.prop-value(on-surface),\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states-focus-opacity(\n ripple-theme.states-opacity(primary, focus),\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n\n #{variables.$ripple-target} {\n @include ripple.target-common($query: $query);\n }\n }\n}\n\n///\n/// Adjusts an offset (i.e., margin) to accomodate contents that are larger than\n/// the space allocated by the specification.\n///\n/// For instance, the specification provides 24x24dp for a checkbox with a 16dp\n/// margin. However, checkboxes are actually 40x40dp. To ensure that the\n/// checkbox is positioned correctly, the margin is reduced by 8dp to reflect\n/// that the margin is already \"baked into\" the checkbox.\n///\n/// Concretely, 40dp - 24dp = 16dp. Assuming that the control is symmetrical,\n/// half of the overflow (8dp) is on the leading side and half on the trailing\n/// side. Therefore, the leading and trailing margins are reduced by 8dp.\n///\n/// Note: this might be more useful if it's added into the leading/trailing\n/// margin mixins as a parameter.\n///\n@function absorb-overflow($offset, $actual, $available, $symmetric: true) {\n @if $actual <= $available {\n @return $offset;\n }\n $overflow: $actual - $available;\n @return $offset - $overflow / if($symmetric, 2, 1);\n}\n\n@mixin evolution-one-line-item-height(\n $height,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-item--with-one-line {\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n }\n}\n\n@mixin evolution-two-line-item-height(\n $height,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-item--with-two-lines {\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n }\n}\n@mixin evolution-three-line-item-height(\n $height,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-item--with-three-lines {\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n }\n}\n\n@mixin evolution-item-spacing(\n $leading,\n $trailing: $leading,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(padding, $leading, $trailing);\n }\n}\n\n@mixin evolution-one-line-item-start-alignment(\n $alignment,\n $offset: 0,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-item--with-one-line {\n .mdc-evolution-list-item__start {\n @include feature-targeting.targets($feat-structure) {\n align-self: $alignment;\n margin-top: $offset;\n }\n }\n }\n}\n\n@mixin evolution-two-line-item-start-alignment(\n $alignment,\n $offset: 0,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-item--with-two-lines {\n .mdc-evolution-list-item__start {\n @include feature-targeting.targets($feat-structure) {\n align-self: $alignment;\n margin-top: $offset;\n }\n }\n }\n}\n\n@mixin evolution-three-line-item-start-alignment(\n $alignment,\n $offset: 0,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-item--with-three-lines {\n .mdc-evolution-list-item__start {\n @include feature-targeting.targets($feat-structure) {\n align-self: $alignment;\n margin-top: $offset;\n }\n }\n }\n}\n\n@mixin evolution-one-line-item-end-alignment(\n $alignment,\n $offset: 0,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-item--with-one-line {\n .mdc-evolution-list-item__end {\n @include feature-targeting.targets($feat-structure) {\n align-self: $alignment;\n margin-top: $offset;\n }\n }\n }\n}\n\n@mixin evolution-two-line-item-end-alignment(\n $alignment,\n $offset: 0,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-item--with-two-lines {\n .mdc-evolution-list-item__end {\n @include feature-targeting.targets($feat-structure) {\n align-self: $alignment;\n margin-top: $offset;\n }\n }\n }\n}\n\n@mixin evolution-three-line-item-end-alignment(\n $alignment,\n $offset: 0,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-item--with-three-lines {\n .mdc-evolution-list-item__end {\n @include feature-targeting.targets($feat-structure) {\n align-self: $alignment;\n margin-top: $offset;\n }\n }\n }\n}\n\n@mixin evolution-item-start-spacing(\n $leading,\n $trailing: $leading,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n @include feature-targeting.targets($feat-structure) {\n // Extra specificity needed to override default customizations.\n &.mdc-evolution-list-item {\n // We rely on auto to avoid clobbering the opposite padding.\n @include rtl-mixins.reflexive-property(padding, 0, auto);\n }\n\n .mdc-evolution-list-item__start {\n @include rtl-mixins.reflexive-property(margin, $leading, $trailing);\n }\n }\n}\n\n@mixin evolution-item-end-spacing(\n $leading,\n $trailing: $leading,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n @include feature-targeting.targets($feat-structure) {\n // Extra specificity needed to override default customizations.\n &.mdc-evolution-list-item {\n // We rely on auto to avoid clobbering the opposite padding.\n @include rtl-mixins.reflexive-property(padding, auto, 0);\n }\n\n .mdc-evolution-list-item__end {\n @include rtl-mixins.reflexive-property(margin, $leading, $trailing);\n }\n }\n}\n\n@mixin evolution-item-start-size(\n $width,\n $height: $width,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n @include feature-targeting.targets($feat-structure) {\n .mdc-evolution-list-item__start {\n width: $width;\n height: $height;\n }\n }\n}\n\n@mixin evolution-item-end-size(\n $width,\n $height: $width,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n @include feature-targeting.targets($feat-structure) {\n .mdc-evolution-list-item__end {\n width: $width;\n height: $height;\n }\n }\n}\n\n@mixin evolution-list-primary-text-ink-color(\n $color,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-evolution-list-item__primary-text {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n\n@mixin evolution-list-secondary-text-ink-color(\n $color,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-evolution-list-item__secondary-text {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n\n@mixin evolution-list-meta-text-ink-color(\n $color,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-evolution-list-item--with-trailing-meta {\n .mdc-evolution-list-item__end {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n }\n}\n\n@mixin evolution-list-icon-ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-evolution-list-item--with-leading-icon .mdc-evolution-list-item__start,\n .mdc-evolution-list-item--with-trailing-icon .mdc-evolution-list-item__end {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n\n@mixin evolution-list-icon-fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-evolution-list-item--with-leading-icon .mdc-evolution-list-item__start,\n .mdc-evolution-list-item--with-trailing-icon .mdc-evolution-list-item__end {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n }\n}\n\n@mixin evolution-list-selected-ink-color(\n $color,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-evolution-list-item--selected,\n .mdc-evolution-list-item--activated {\n @include evolution-list-primary-text-ink-color($color, $query);\n @include _evolution-item-icon-ink-color(\n $color,\n $leading-only: true,\n $query: $query\n );\n }\n}\n\n@mixin evolution-list-disabled-ink-color(\n $color,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-evolution-list-item--disabled {\n @include evolution-list-primary-text-ink-color($color, $query);\n @include evolution-list-secondary-text-ink-color($color, $query);\n @include _evolution-item-icon-ink-color($color, $query: $query);\n @include _evolution-item-meta-text-ink-color($color, $query);\n }\n}\n\n@mixin evolution-list-disabled-opacity(\n $opacity,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-evolution-list-item--disabled {\n .mdc-evolution-list-item__start,\n .mdc-evolution-list-item__content,\n .mdc-evolution-list-item__end {\n @include feature-targeting.targets($feat-color) {\n opacity: $opacity;\n }\n }\n }\n}\n\n@mixin evolution-group-subheader-ink-color(\n $color,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-list-group__subheader {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n\n@mixin evolution-divider-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-evolution-list-divider {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n }\n}\n\n@mixin evolution-inset-divider-leading-offset(\n $offset,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-divider--with-leading-inset {\n @include feature-targeting.targets($feat-structure) {\n // We rely on auto to avoid clobbering the opposite padding.\n @include rtl-mixins.reflexive-property(padding, $offset, auto);\n }\n }\n}\n\n@mixin evolution-padded-divider-leading-offset(\n $offset,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-divider--with-leading-padding {\n @include feature-targeting.targets($feat-structure) {\n // We rely on auto to avoid clobbering the opposite padding.\n @include rtl-mixins.reflexive-property(padding, $offset, auto);\n }\n }\n}\n\n@mixin evolution-inset-divider-trailing-offset(\n $offset,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n &.mdc-evolution-list-divider--with-trailing-inset {\n @include feature-targeting.targets($feat-structure) {\n // We rely on auto to avoid clobbering the opposite padding.\n @include rtl-mixins.reflexive-property(padding, auto, $offset);\n }\n }\n}\n\n// The public density mixins apply the appropriate density styles regardless of\n// the item's start contents.\n@mixin evolution-one-line-item-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n @include _evolution-one-line-item-density($density-scale, $query: $query);\n\n &.mdc-evolution-list-item--with-leading-icon,\n &.mdc-evolution-list-item--with-leading-thumbnail,\n &.mdc-evolution-list-item--with-leading-checkbox,\n &.mdc-evolution-list-item--with-leading-radio,\n &.mdc-evolution-list-item--with-leading-switch {\n @include _evolution-one-line-item-tall-density(\n $density-scale,\n $query: $query\n );\n }\n\n &.mdc-evolution-list-item--with-leading-image,\n &.mdc-evolution-list-item--with-leading-video {\n @include _evolution-one-line-item-taller-density(\n $density-scale,\n $query: $query\n );\n }\n}\n\n@mixin evolution-two-line-item-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n @include _evolution-two-line-item-density($density-scale, $query: $query);\n\n &.mdc-evolution-list-item--with-leading-icon,\n &.mdc-evolution-list-item--with-leading-thumbnail,\n &.mdc-evolution-list-item--with-leading-checkbox,\n &.mdc-evolution-list-item--with-leading-radio,\n &.mdc-evolution-list-item--with-leading-switch,\n &.mdc-evolution-list-item--with-leading-image,\n &.mdc-evolution-list-item--with-leading-video {\n @include _evolution-two-line-item-tall-density(\n $density-scale,\n $query: $query\n );\n }\n}\n\n@mixin evolution-three-line-item-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n @include _evolution-three-line-item-density($density-scale, $query: $query);\n}\n\n//\n// Private\n//\n\n// The private density mixins allow density properties to be overridden\n// individually to avoid increasing specificity.\n@mixin _evolution-one-line-item-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: variables.$one-line-item-density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include evolution-one-line-item-height($height, $query: $query);\n}\n\n@mixin _evolution-one-line-item-tall-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: variables.$one-line-item-tall-density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include evolution-one-line-item-height($height, $query: $query);\n}\n\n@mixin _evolution-one-line-item-taller-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: variables.$one-line-item-taller-density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include evolution-one-line-item-height($height, $query: $query);\n}\n\n@mixin _evolution-two-line-item-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: variables.$two-line-item-density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include evolution-two-line-item-height($height, $query: $query);\n}\n\n@mixin _evolution-two-line-item-tall-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: variables.$two-line-item-tall-density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include evolution-two-line-item-height($height, $query: $query);\n}\n\n@mixin _evolution-three-line-item-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: variables.$three-line-item-density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include evolution-three-line-item-height($height, $query: $query);\n}\n\n@mixin _evolution-list-base($query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-typography: feature-targeting.create-target($query, typography);\n\n @include typography.typography(subtitle1, $query);\n @include feature-targeting.targets($feat-typography) {\n // According to the mocks and stickersheet, the line-height is\n // adjusted to 24px for text content, same as for body1.\n /* @alternate */\n line-height: map.get(map.get(typography.$styles, body1), line-height);\n }\n @include feature-targeting.targets($feat-structure) {\n margin: 0;\n padding: 8px 0;\n list-style-type: none;\n\n &:focus {\n outline: none;\n }\n }\n}\n\n@mixin _evolution-item-base($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n position: relative;\n align-items: center;\n justify-content: flex-start;\n overflow: hidden;\n padding: 0;\n\n &:focus {\n outline: none;\n }\n }\n}\n\n@mixin _evolution-item-interactive-ripple($query: feature-targeting.all()) {\n @include ripple.surface(\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple.radius-bounded(\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states(\n theme-color.prop-value(on-surface),\n false,\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states-activated(\n primary,\n false,\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n @include ripple-theme.states-selected(\n primary,\n false,\n $ripple-target: variables.$ripple-target,\n $query: $query\n );\n\n #{variables.$ripple-target} {\n @include ripple.target-common($query: $query);\n }\n}\n\n@mixin _evolution-two-line-item-primary-baseline(\n $top,\n $bottom,\n $query: feature-targeting.all()\n) {\n &.mdc-evolution-list-item--with-two-lines {\n .mdc-evolution-list-item__primary-text {\n @include typography.text-baseline(\n $top: $top,\n $bottom: $bottom,\n $query: $query\n );\n }\n }\n}\n\n@mixin _evolution-two-line-item-end-baseline(\n $top,\n $query: feature-targeting.all()\n) {\n &.mdc-evolution-list-item--with-two-lines {\n .mdc-evolution-list-item__end {\n @include typography.text-baseline(\n $display: block,\n $top: $top,\n $query: $query\n );\n }\n }\n}\n\n@mixin _evolution-three-line-item-end-baseline(\n $top,\n $query: feature-targeting.all()\n) {\n &.mdc-evolution-list-item--with-three-lines {\n .mdc-evolution-list-item__end {\n @include typography.text-baseline(\n $display: block,\n $top: $top,\n $query: $query\n );\n }\n }\n}\n\n@mixin _evolution-two-line-item-meta-baseline(\n $top,\n $query: feature-targeting.all()\n) {\n &.mdc-evolution-list-item--with-two-lines {\n &.mdc-evolution-list-item--with-trailing-meta {\n .mdc-evolution-list-item__end {\n @include typography.text-baseline(\n $display: block,\n $top: $top,\n $query: $query\n );\n }\n }\n }\n}\n\n@mixin _evolution-item-meta-text-ink-color(\n $color,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &.mdc-evolution-list-item--with-trailing-meta {\n .mdc-evolution-list-item__end {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n }\n}\n\n@mixin _evolution-item-icon-ink-color(\n $color,\n $leading-only: false,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &.mdc-evolution-list-item--with-leading-icon {\n .mdc-evolution-list-item__start {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n }\n\n @if (not $leading-only) {\n &.mdc-evolution-list-item--with-trailing-icon {\n .mdc-evolution-list-item__end {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n }\n }\n}\n\n@mixin _high-contrast-mode($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-color: feature-targeting.create-target($query, color);\n\n @include dom-mixins.ie-high-contrast-mode {\n .mdc-evolution-list-divider::after {\n @include feature-targeting.targets($feat-structure) {\n content: '';\n display: block;\n border-bottom-width: 1px;\n border-bottom-style: solid;\n }\n\n @include feature-targeting.targets($feat-color) {\n // Color ensures border is shown, but will be overridden by the browser.\n @include theme.property(border-bottom-color, white);\n }\n }\n }\n}\n","@use '@material/theme/theme-color';\n@use '@material/density/variables' as density-variables;\n\n$ripple-target: '.mdc-evolution-list-item__ripple';\n$divider-color-on-light-bg: rgba(0, 0, 0, 0.12) !default;\n$divider-color-on-dark-bg: rgba(255, 255, 255, 0.2) !default;\n$content-disabled-opacity: theme-color.text-emphasis(disabled) !default;\n$content-disabled-color: on-surface !default;\n$content-selected-color: primary !default;\n$side-padding: 16px !default;\n\n$one-line-item-density-scale: density-variables.$default-scale !default;\n$two-line-item-density-scale: density-variables.$default-scale !default;\n$three-line-item-density-scale: density-variables.$default-scale !default;\n$one-line-item-density-config: (\n height: (\n default: 48px,\n maximum: 48px,\n minimum: 24px,\n ),\n) !default;\n$one-line-item-tall-density-config: (\n height: (\n default: 56px,\n maximum: 56px,\n minimum: 40px,\n ),\n) !default;\n$one-line-item-taller-density-config: (\n height: (\n default: 72px,\n maximum: 72px,\n minimum: 56px,\n ),\n) !default;\n$two-line-item-density-config: (\n height: (\n default: 64px,\n maximum: 64px,\n minimum: 48px,\n ),\n) !default;\n$two-line-item-tall-density-config: (\n height: (\n default: 72px,\n maximum: 72px,\n minimum: 56px,\n ),\n) !default;\n$three-line-item-density-config: (\n height: (\n default: 88px,\n maximum: 88px,\n minimum: 56px,\n ),\n) !default;\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:math';\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/list/mixins' as list-mixins;\n@use '@material/list/variables' as list-variables;\n@use '@material/ripple/ripple';\n@use '@material/theme/theme';\n@use '@material/theme/custom-properties';\n@use './menu-custom-properties';\n@use './variables';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n // prettier-ignore\n @include elevation-mixins.overlay-common($query); // COPYBARA_COMMENT_THIS_LINE\n\n // Customize the menu-surface and contained list to match the mdc-menu styles.\n .mdc-menu {\n @include list-mixins.item-meta-ink-color(variables.$ink-color, $query);\n @include list-mixins.item-graphic-ink-color(variables.$ink-color, $query);\n @include min-width(variables.$min-width, $query: $query);\n // Include mdc-list selector to ensure list-inside-menu overrides default list styles\n .mdc-list {\n @include list-mixins.item-primary-text-ink-color(\n variables.$ink-color,\n $query\n );\n @include elevation-mixins.overlay-surface-position($query: $query);\n @include elevation-mixins.overlay-dimensions(100%, $query: $query);\n }\n\n .mdc-list-divider {\n @include feature-targeting.targets($feat-structure) {\n margin: 8px 0;\n }\n }\n\n .mdc-list-item {\n @include feature-targeting.targets($feat-structure) {\n user-select: none;\n }\n }\n\n .mdc-list-item--disabled {\n @include feature-targeting.targets($feat-structure) {\n cursor: auto;\n }\n }\n\n //stylelint-disable selector-no-qualifying-type\n a.mdc-list-item .mdc-list-item__text,\n a.mdc-list-item .mdc-list-item__graphic {\n @include feature-targeting.targets($feat-structure) {\n pointer-events: none;\n }\n }\n // stylelint-enable selector-no-qualifying-type\n }\n\n // postcss-bem-linter: define menu\n .mdc-menu__selection-group {\n @include feature-targeting.targets($feat-structure) {\n padding: 0;\n fill: currentColor;\n }\n\n .mdc-list-item {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n padding,\n 56px,\n list-variables.$side-padding\n );\n }\n }\n\n // Extra specificity required to override `display` property on `mdc-list-item__graphic`.\n .mdc-menu__selection-group-icon {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(left, 16px);\n\n display: none;\n position: absolute;\n // IE11 requires the icon to be vertically centered due to its absolute positioning\n top: 50%;\n transform: translateY(-50%);\n }\n }\n }\n // postcss-bem-linter: end\n\n // stylelint-disable-next-line plugin/selector-bem-pattern\n .mdc-menu-item--selected .mdc-menu__selection-group-icon {\n @include feature-targeting.targets($feat-structure) {\n display: inline;\n }\n }\n}\n\n@mixin width($width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @if math.is-unitless($width) {\n width: $width * variables.$width-base;\n } @else {\n width: $width;\n }\n }\n}\n\n/// Sets the min-width of the menu.\n/// @param {Number} $min-width - the desired min-width.\n@mixin min-width($min-width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n $min-width-custom-property: custom-properties.create(\n menu-custom-properties.$min-width,\n $min-width\n );\n @include theme.property(min-width, $min-width-custom-property);\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n$fade-in-duration: 0.03s !default;\n$fade-out-duration: 0.075s !default;\n$scale-duration: 0.12s !default;\n$min-distance-from-edge: 32px !default;\n$z-index: 8 !default; // One above mdc-dialog\n$shape-radius: medium !default;\n","//\n// Copyright 2016 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:map';\n@use '@material/animation/animation';\n@use '@material/dom/dom';\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/touch-target/mixins' as touch-target-mixins;\n@use '@material/touch-target/variables' as touch-target-variables;\n@use './radio-theme';\n\n$ripple-target: '.mdc-radio__ripple';\n\n///\n/// Radio core styles.\n///\n@mixin core-styles($query: feature-targeting.all()) {\n @include without-ripple($query);\n @include ripple($query);\n}\n\n// This API is intended for use by frameworks that may want to separate the ripple-related styles from the other\n// radio styles. It is recommended that most users use `mdc-radio-core-styles` instead.\n@mixin without-ripple($query: feature-targeting.all()) {\n // postcss-bem-linter: define radio\n\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include touch-target-mixins.wrapper($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-radio {\n @include radio-theme.unchecked-stroke-color(\n radio-theme.$unchecked-color,\n $query: $query\n );\n @include radio-theme.checked-stroke-color(\n radio-theme.$baseline-theme-color,\n $query: $query\n );\n @include radio-theme.ink-color(\n radio-theme.$baseline-theme-color,\n $query: $query\n );\n @include radio-theme.disabled-unchecked-stroke-color(\n radio-theme.$disabled-circle-color,\n $query: $query\n );\n @include radio-theme.disabled-checked-stroke-color(\n radio-theme.$disabled-circle-color,\n $query: $query\n );\n @include radio-theme.disabled-ink-color(\n radio-theme.$disabled-circle-color,\n $query: $query\n );\n @include radio-theme.focus-indicator-color(\n radio-theme.$baseline-theme-color,\n $query: $query\n );\n @include radio-theme.density(radio-theme.$density-scale, $query: $query);\n\n @include dom.ie-high-contrast-mode {\n @include radio-theme.disabled-unchecked-stroke-color(\n GrayText,\n $query: $query\n );\n @include radio-theme.disabled-checked-stroke-color(\n GrayText,\n $query: $query\n );\n @include radio-theme.disabled-ink-color(GrayText, $query: $query);\n }\n\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n position: relative;\n flex: 0 0 auto;\n box-sizing: content-box;\n width: radio-theme.$icon-size;\n height: radio-theme.$icon-size;\n cursor: pointer;\n /* @alternate */\n will-change: opacity, transform, border-color, color;\n }\n\n // Container for radio circles and ripple.\n &__background {\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n position: relative;\n box-sizing: border-box;\n width: radio-theme.$icon-size;\n height: radio-theme.$icon-size;\n }\n\n &::before {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n transform: scale(0, 0);\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n content: '';\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: exit(opacity), exit(transform);\n }\n }\n }\n\n &__outer-circle {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n top: 0;\n left: 0;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n border-width: 2px;\n border-style: solid;\n border-radius: 50%;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: exit(border-color);\n }\n }\n\n &__inner-circle {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n top: 0;\n left: 0;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n transform: scale(0, 0);\n border-width: 10px;\n border-style: solid;\n border-radius: 50%;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: exit(transform), exit(border-color);\n }\n }\n\n &__native-control {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n margin: 0;\n padding: 0;\n opacity: 0;\n cursor: inherit;\n z-index: 1;\n }\n }\n\n &--touch {\n @include touch-target-mixins.margin(\n $component-height: radio-theme.$ripple-size,\n $component-width: radio-theme.$ripple-size,\n $query: $query\n );\n @include radio-theme.touch-target(\n $size: touch-target-variables.$height,\n $query: $query\n );\n }\n }\n\n .mdc-radio__native-control:checked,\n .mdc-radio__native-control:disabled {\n + .mdc-radio__background {\n @include feature-targeting.targets($feat-animation) {\n transition: enter(opacity), enter(transform);\n }\n\n .mdc-radio__outer-circle {\n @include feature-targeting.targets($feat-animation) {\n transition: enter(border-color);\n }\n }\n\n .mdc-radio__inner-circle {\n @include feature-targeting.targets($feat-animation) {\n transition: enter(transform), enter(border-color);\n }\n }\n }\n }\n\n .mdc-radio--disabled {\n @include feature-targeting.targets($feat-structure) {\n cursor: default;\n pointer-events: none;\n }\n }\n\n .mdc-radio__native-control:checked {\n + .mdc-radio__background {\n .mdc-radio__inner-circle {\n @include feature-targeting.targets($feat-structure) {\n transform: scale(0.5);\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: enter(transform), enter(border-color);\n }\n }\n }\n }\n\n .mdc-radio__native-control:disabled,\n [aria-disabled='true'] .mdc-radio__native-control {\n + .mdc-radio__background {\n @include feature-targeting.targets($feat-structure) {\n cursor: default;\n }\n }\n }\n\n .mdc-radio__native-control:focus {\n + .mdc-radio__background::before {\n @include feature-targeting.targets($feat-structure) {\n transform: scale(1);\n opacity: map.get(ripple-theme.$dark-ink-opacities, focus);\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: enter(opacity), enter(transform);\n }\n }\n }\n\n // postcss-bem-linter: end\n}\n\n// This API is intended for use by frameworks that may want to separate the ripple-related styles from the other\n// radio styles. It is recommended that most users use `mdc-radio-core-styles` instead.\n@mixin ripple($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-radio {\n @include ripple.surface($query: $query, $ripple-target: $ripple-target);\n @include ripple.radius-unbounded(\n $query: $query,\n $ripple-target: $ripple-target\n );\n @include ripple-theme.states(\n $color: radio-theme.$baseline-theme-color,\n $query: $query,\n $ripple-target: $ripple-target\n );\n\n &.mdc-ripple-upgraded--background-focused {\n .mdc-radio__background::before {\n @include feature-targeting.targets($feat-structure) {\n content: none;\n }\n }\n }\n }\n\n #{$ripple-target} {\n @include ripple.target-common($query: $query);\n }\n}\n\n@function enter($name) {\n @return animation.enter($name, radio-theme.$transition-duration);\n}\n\n@function exit($name) {\n @return animation.exit-temporary($name, radio-theme.$transition-duration);\n}\n","//\n// Copyright 2016 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:map';\n@use '@material/density/functions' as density-functions;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/theme';\n@use '@material/density/variables' as density-variables;\n@use '@material/theme/theme-color';\n\n$ripple-size: 40px !default;\n$icon-size: 20px !default;\n$transition-duration: 120ms !default;\n$ripple-opacity: 0.14 !default;\n$baseline-theme-color: secondary !default;\n$unchecked-color: rgba(theme-color.prop-value(on-surface), 0.54) !default;\n$disabled-circle-color: rgba(theme-color.prop-value(on-surface), 0.38) !default;\n\n$minimum-size: 28px !default;\n$maximum-size: $ripple-size !default;\n$density-scale: density-variables.$default-scale !default;\n$density-config: (\n size: (\n minimum: $minimum-size,\n default: $ripple-size,\n maximum: $maximum-size,\n ),\n) !default;\n\n///\n/// Sets the stroke color of an unchecked, enabled radio button.\n/// @param {Color} $color - The desired stroke color.\n///\n@mixin unchecked-stroke-color($color, $query: feature-targeting.all()) {\n @include _if-enabled-unchecked {\n @include _stroke-color($color, $query: $query);\n }\n}\n\n///\n/// Sets the stroke color of a checked, enabled radio button.\n/// @param {Color} $color - The desired stroke color.\n///\n@mixin checked-stroke-color($color, $query: feature-targeting.all()) {\n @include _if-enabled-checked {\n @include _stroke-color($color, $query: $query);\n }\n}\n\n///\n/// Sets the ink color of an enabled radio button.\n/// @param {Color} $color - The desired ink color.\n///\n@mixin ink-color($color, $query: feature-targeting.all()) {\n @include _if-enabled {\n @include _ink-color($color, $query: $query);\n }\n}\n\n///\n/// Sets the stroke color of an unchecked, disabled radio button.\n/// @param {Color} $color - The desired stroke color.\n///\n@mixin disabled-unchecked-stroke-color(\n $color,\n $query: feature-targeting.all()\n) {\n @include _if-disabled-unchecked {\n @include _stroke-color($color, $query: $query);\n }\n}\n\n///\n/// Sets the stroke color of a checked, disabled radio button.\n/// @param {Color} $color - The desired stroke color.\n///\n@mixin disabled-checked-stroke-color($color, $query: feature-targeting.all()) {\n @include if-disabled-checked_ {\n @include _stroke-color($color, $query: $query);\n }\n}\n\n///\n/// Sets the ink color of a disabled radio button.\n/// @param {Color} $color - The desired ink color\n///\n@mixin disabled-ink-color($color, $query: feature-targeting.all()) {\n @include if-disabled_ {\n @include _ink-color($color, $query: $query);\n }\n}\n\n@mixin focus-indicator-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-radio__background::before {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n }\n}\n\n///\n/// Sets radio touch target size which can be more than the ripple size. Param `$ripple-size` is required for custom\n/// ripple size.\n///\n/// @param {Number} $size Size of touch target (Native input) in `px`.\n/// @param {Number} $ripple-size Size of ripple in `px`. Required only for custom ripple size.\n///\n@mixin touch-target(\n $size: $ripple-size,\n $ripple-size: $ripple-size,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $offset: ($ripple-size - $size) / 2;\n\n .mdc-radio__native-control {\n @include feature-targeting.targets($feat-structure) {\n top: $offset;\n right: $offset;\n left: $offset;\n width: $size;\n height: $size;\n }\n }\n}\n\n///\n/// Sets density scale for radio.\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values\n/// `-3`, `-2`, `-1`, `0`.\n///\n@mixin density($density-scale, $query: feature-targeting.all()) {\n $size: density-functions.prop-value(\n $density-config: $density-config,\n $density-scale: $density-scale,\n $property-name: size,\n );\n\n @include ripple-size($size, $query: $query);\n // Sets touch target size same as ripple size.\n @include touch-target($size: $size, $ripple-size: $size, $query: $query);\n\n @if $density-scale != 0 {\n @include touch-target-reset_($query: $query);\n }\n}\n\n///\n/// Sets radio ripple size.\n///\n/// @param {Number} $size - Ripple size in `px`.\n///\n@mixin ripple-size($size, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $padding: ($size - $icon-size) / 2;\n\n @include feature-targeting.targets($feat-structure) {\n padding: $padding;\n }\n\n .mdc-radio__background::before {\n @include feature-targeting.targets($feat-structure) {\n top: -$padding;\n left: -$padding;\n width: $size;\n height: $size;\n }\n }\n}\n\n///\n/// Resets touch target-related styles. This is called from the density mixin to\n/// automatically remove the increased touch target, since dense components\n/// don't have the same default a11y requirements.\n/// @access private\n///\n@mixin touch-target-reset_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n margin: 0;\n }\n}\n\n///\n/// Helps select the radio background only when its native control is in the\n/// enabled state.\n/// @access private\n///\n@mixin _if-enabled {\n .mdc-radio__native-control:enabled + {\n @content;\n }\n}\n\n///\n/// Helps select the radio background only when its native control is in the\n/// enabled & unchecked state.\n/// @access private\n///\n@mixin _if-enabled-unchecked {\n .mdc-radio__native-control:enabled:not(:checked) + {\n @content;\n }\n}\n\n///\n/// Helps select the radio background only when its native control is in the\n/// enabled & checked state.\n/// @access private\n///\n@mixin _if-enabled-checked {\n .mdc-radio__native-control:enabled:checked + {\n @content;\n }\n}\n\n///\n/// Helps select the radio background only when its native control is in the\n/// disabled state.\n/// @access private\n///\n@mixin if-disabled_ {\n [aria-disabled='true'] .mdc-radio__native-control,\n .mdc-radio__native-control:disabled {\n + {\n @content;\n }\n }\n}\n\n///\n/// Helps select the radio background only when its native control is in the\n/// disabled & unchecked state.\n/// @access private\n///\n@mixin _if-disabled-unchecked {\n [aria-disabled='true'] .mdc-radio__native-control,\n .mdc-radio__native-control:disabled {\n &:not(:checked) + {\n @content;\n }\n }\n}\n\n///\n/// Helps select the radio background only when its native control is in the\n/// disabled & checked state.\n/// @access private\n///\n@mixin if-disabled-checked_ {\n [aria-disabled='true'] .mdc-radio__native-control,\n .mdc-radio__native-control:disabled {\n &:checked + {\n @content;\n }\n }\n}\n\n///\n/// Sets the ink color for radio. This is wrapped in a mixin\n/// that qualifies state such as `_if-enabled`\n/// @access private\n///\n@mixin _ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-radio__background .mdc-radio__inner-circle {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-color, $color);\n }\n }\n}\n\n///\n/// Sets the stroke color for radio. This is wrapped in a mixin\n/// that qualifies state such as `_if-enabled`\n/// @access private\n///\n@mixin _stroke-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-radio__background .mdc-radio__outer-circle {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-color, $color);\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Core: Define complete styles to render component, including base and theme styles\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/feature-targeting/feature-targeting';\n@use './segmented-button-theme';\n\n@mixin core-styles($query: feature-targeting.all()) {\n .mdc-segmented-button {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n // Removes spacing between segments\n font-size: 0;\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Theme: Variables, functions, and mixins required to theme component segment\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/theme/theme-color';\n@use '@material/theme/custom-properties';\n@use '@material/theme/theme';\n\n$on-surface: theme-color.$on-surface;\n$surface: theme-color.$surface;\n$primary: theme-color.$primary;\n\n$unselected-ink-color: rgba($on-surface, 0.6);\n$outline-color: rgba($on-surface, 0.12);\n$unselected-container-fill-color: rgba($surface, 1);\n$selected-ink-color: rgba($primary, 1);\n$selected-container-fill-color: rgba($primary, 0.08);\n\n$height: 36px;\n$min-width: 48px;\n$horizontal-padding: 12px;\n$border-width: 1px;\n$border-radius: 4px;\n$icon-width: 24px;\n$icon-font-size: 18px;\n$label-padding: 6px;\n$touch-target-height: 48px;\n\n/// Sets the border color of the segment\n/// @param {String} $color - Color of segment outline\n@mixin outline-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $property: custom-properties.create(\n --mdc-segmented-button-outline-color,\n $color\n );\n\n .mdc-segmented-button__segment {\n @include feature-targeting.targets($feat-color) {\n @include theme.property('border-color', $property);\n }\n }\n}\n\n/// Sets the text and icon color within the segment when it is not selected\n/// @param {String} $color - Color of text and icon in segment\n@mixin unselected-ink-color($color, $query: feature-targeting.all()) {\n .mdc-segmented-button__segment {\n $property: custom-properties.create(\n --mdc-segmented-button-unselected-ink-color,\n $color\n );\n @include _ink-color($property, $query);\n }\n}\n\n/// Sets the background fill color of the segment when it is not selected\n/// @param {String} $color - Color of segment background\n@mixin unselected-container-fill-color(\n $color,\n $query: feature-targeting.all()\n) {\n .mdc-segmented-button__segment {\n $property: custom-properties.create(\n --mdc-segmented-button-unselected-container-fill-color,\n $color\n );\n @include _container-fill-color($property, $query);\n }\n}\n\n/// Sets the text and icon color within the segment when it is selected\n/// @param {String} $color - Color of text and icon in segment\n@mixin selected-ink-color($color, $query: feature-targeting.all()) {\n .mdc-segmented-button__segment--selected {\n $property: custom-properties.create(\n --mdc-segmented-button-selected-ink-color,\n $color\n );\n @include _ink-color($property, $query);\n }\n}\n\n/// Sets the background fill color of the segment when it is not selected\n/// @param {String} $color - Color of segment background\n@mixin selected-container-fill-color($color, $query: feature-targeting.all()) {\n .mdc-segmented-button__segment--selected {\n $property: custom-properties.create(\n --mdc-segmented-button-selected-container-fill-color,\n $color\n );\n @include _container-fill-color($property, $query);\n }\n}\n\n/// Sets the text and icon color\n/// @param {Map} $property - Custom property of text and icon color\n@mixin _ink-color($property, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property('color', $property);\n }\n}\n\n/// Sets the background fill color\n/// @param {Map} $property - Custom property of background color\n@mixin _container-fill-color($property, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @include theme.property('background-color', $property);\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Core: Define complete styles to render component segment, including base and theme styles\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/typography/typography';\n@use '@material/touch-target/touch-target';\n@use '@material/elevation/elevation';\n@use '@material/elevation/elevation-theme';\n@use './segment-theme';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include touch-target.wrapper($query);\n @include elevation.overlay-common($query);\n\n @include _unselected($query);\n @include _selected($query);\n\n .mdc-segmented-button__segment {\n @include base($query);\n\n &:hover {\n @include feature-targeting.targets($feat-structure) {\n cursor: pointer;\n }\n }\n\n // Removes ripple's focus outline\n &:focus {\n @include feature-targeting.targets($feat-structure) {\n outline-width: 0;\n }\n }\n\n &:first-child {\n @include feature-targeting.targets($feat-structure) {\n border-radius: segment-theme.$border-radius 0 0\n segment-theme.$border-radius;\n }\n }\n\n &:last-child {\n @include feature-targeting.targets($feat-structure) {\n border-right-width: segment-theme.$border-width;\n border-radius: 0 segment-theme.$border-radius\n segment-theme.$border-radius 0;\n }\n }\n\n .mdc-segmented-button__segment__touch {\n @include touch-target.touch-target($query: $query);\n }\n\n .mdc-segmented-button__segment--touch {\n @include touch-target.margin(\n $component-height: segment-theme.$touch-target-height,\n $query: $query\n );\n }\n }\n\n // maintains visual design when inside a touch-target-wrapper\n // This could also be accomplished with --first/--last classes\n .mdc-touch-target-wrapper {\n .mdc-segmented-button__segment {\n border-radius: 0;\n border-right-width: 0;\n }\n\n &:first-child .mdc-segmented-button__segment {\n @include feature-targeting.targets($feat-structure) {\n border-radius: segment-theme.$border-radius 0 0\n segment-theme.$border-radius;\n }\n }\n\n &:last-child .mdc-segmented-button__segment {\n @include feature-targeting.targets($feat-structure) {\n border-right-width: segment-theme.$border-width;\n border-radius: 0 segment-theme.$border-radius\n segment-theme.$border-radius 0;\n }\n }\n }\n\n .mdc-segmented-button__icon {\n @include icon($query);\n }\n\n .mdc-segmented-button__icon + .mdc-segmented-button__label {\n @include label($query);\n }\n}\n\n@mixin base($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // elevation mixins contain ripple effect to segment boundaries\n @include elevation-theme.overlay-surface-position($query: $query);\n @include elevation-theme.overlay-dimensions(100%, $query: $query);\n @include typography.typography(button, $query);\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n vertical-align: top;\n align-items: center;\n height: segment-theme.$height;\n min-width: segment-theme.$min-width;\n padding: 0 segment-theme.$horizontal-padding;\n border-width: segment-theme.$border-width 0 segment-theme.$border-width\n segment-theme.$border-width;\n }\n}\n\n@mixin _unselected($query: feature-targeting.all()) {\n @include segment-theme.outline-color(segment-theme.$outline-color, $query);\n @include segment-theme.unselected-ink-color(\n segment-theme.$unselected-ink-color,\n $query\n );\n @include segment-theme.unselected-container-fill-color(\n segment-theme.$unselected-container-fill-color,\n $query\n );\n}\n\n@mixin _selected($query: feature-targeting.all()) {\n @include segment-theme.selected-ink-color(\n segment-theme.$selected-ink-color,\n $query\n );\n @include segment-theme.selected-container-fill-color(\n segment-theme.$selected-container-fill-color,\n $query\n );\n}\n\n@mixin icon($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-typography: feature-targeting.create-target($query, typography);\n\n @include feature-targeting.targets($feat-structure) {\n width: segment-theme.$icon-width;\n }\n @include feature-targeting.targets($feat-typography) {\n font-size: segment-theme.$icon-font-size;\n }\n}\n\n@mixin label($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n padding-left: segment-theme.$label-padding;\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use './segment-theme';\n\n$ripple-target: '.mdc-segmented-button__ripple';\n\n@mixin ripple($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-segmented-button__segment {\n @include ripple.surface($query: $query, $ripple-target: $ripple-target);\n @include ripple.radius-bounded(\n $query: $query,\n $ripple-target: $ripple-target\n );\n @include ripple-theme.states(\n segment-theme.$selected-ink-color,\n true,\n $query: $query,\n $ripple-target: $ripple-target\n );\n @include feature-targeting.targets($feat-structure) {\n overflow: hidden;\n }\n\n #{$ripple-target} {\n @include ripple.target-common($query: $query);\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/animation/animation';\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/theme/theme-color';\n@use '@material/typography/typography';\n@use './slider-theme';\n\n// Thumb variables.\n$_thumb-ripple-size: 48px;\n$_thumb-size: 20px;\n$_value-indicator-caret-width: 6px;\n\n// Track variables.\n$_track-active-height: 6px;\n$_track-inactive-height: 4px;\n\n/// Core styles for slider component.\n@mixin core-styles($query: feature-targeting.all()) {\n @include ripple($query: $query);\n @include without-ripple($query: $query);\n}\n\n// This API is intended for use by frameworks that may want to separate the\n// ripple-related styles from the other slider styles.\n// It is recommended that most users use `core-styles` instead.\n@mixin without-ripple($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-slider {\n @include _track($query: $query);\n @include _thumb($query: $query);\n @include _tick-marks($query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n cursor: pointer;\n height: $_thumb-ripple-size;\n margin: 0 ($_thumb-ripple-size / 2);\n position: relative;\n touch-action: pan-y;\n }\n\n &.mdc-slider--disabled {\n @include _disabled($query: $query);\n }\n\n &--discrete {\n .mdc-slider__thumb,\n .mdc-slider__track--active_fill {\n @include feature-targeting.targets($feat-animation) {\n transition: transform 80ms ease;\n }\n }\n\n @media (prefers-reduced-motion) {\n .mdc-slider__thumb,\n .mdc-slider__track--active_fill {\n @include feature-targeting.targets($feat-animation) {\n transition: none;\n }\n }\n }\n }\n }\n\n .mdc-slider__input {\n @include feature-targeting.targets($feat-structure) {\n cursor: pointer;\n left: 0;\n margin: 0;\n height: 100%;\n opacity: 0;\n pointer-events: none;\n position: absolute;\n top: 0;\n width: 100%;\n }\n }\n}\n\n// This API is intended for use by frameworks that may want to separate the\n// ripple-related styles from the other slider styles.\n// It is recommended that most users use `core-styles` instead.\n@mixin ripple($query: feature-targeting.all()) {\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-slider__thumb {\n @include ripple.surface($query: $query);\n @include ripple.radius-unbounded($query: $query);\n @include ripple-theme.states($color: slider-theme.$color, $query: $query);\n }\n}\n\n@mixin _track($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-slider__track {\n @include feature-targeting.targets($feat-structure) {\n height: $_track-inactive-height;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n width: 100%;\n }\n }\n\n .mdc-slider__track--active,\n .mdc-slider__track--inactive {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n height: 100%;\n position: absolute;\n width: 100%;\n }\n }\n\n .mdc-slider__track--active {\n @include feature-targeting.targets($feat-structure) {\n // Set border-radius on the outer `track--active` element, and apply\n // transform: scale(...) to the inner `track--active_fill` element,\n // such that the track grows/shrinks as needed, but the border-radius\n // is not affected by the scaling.\n border-radius: 3px;\n height: $_track-active-height;\n overflow: hidden;\n top: ($_track-inactive-height - $_track-active-height) / 2;\n }\n }\n\n .mdc-slider__track--active_fill {\n @include feature-targeting.targets($feat-structure) {\n // Use border rather than background-color to fill thumb, for HCM.\n border: $_track-active-height solid;\n box-sizing: border-box;\n height: 100%;\n width: 100%;\n position: relative;\n /* @noflip */\n transform-origin: left;\n\n @include rtl-mixins.rtl {\n /* @noflip */\n transform-origin: right;\n }\n }\n }\n\n .mdc-slider__track--inactive {\n @include feature-targeting.targets($feat-structure) {\n border-radius: 2px;\n height: $_track-inactive-height;\n left: 0;\n outline: 1px solid transparent; // For HCM.\n top: 0;\n }\n }\n\n @include slider-theme.track-active-color(\n $color-or-map: (\n default: slider-theme.$color,\n disabled: slider-theme.$disabled-color,\n ),\n $query: $query\n );\n @include slider-theme.track-inactive-color(\n $color-or-map: (\n default: slider-theme.$color,\n disabled: slider-theme.$disabled-color,\n ),\n $query: $query\n );\n}\n\n@mixin _thumb($query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include _value-indicator($query: $query);\n\n .mdc-slider__thumb {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n height: $_thumb-ripple-size;\n left: -$_thumb-ripple-size / 2;\n outline: none;\n position: absolute;\n user-select: none;\n width: $_thumb-ripple-size;\n }\n\n &--top {\n @include feature-targeting.targets($feat-structure) {\n z-index: 1;\n }\n }\n\n &--top .mdc-slider__thumb-knob {\n @include feature-targeting.targets($feat-structure) {\n border: 1px solid;\n box-sizing: content-box;\n }\n\n @include feature-targeting.targets($feat-color) {\n border-color: #fff;\n }\n }\n }\n\n .mdc-slider__thumb-knob {\n @include elevation-mixins.elevation($z-value: 1, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n // Use border rather than background-color to fill thumb, for HCM.\n border: $_thumb-size / 2 solid;\n border-radius: 50%;\n box-sizing: border-box;\n height: $_thumb-size;\n /* @noflip */\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n width: $_thumb-size;\n }\n }\n\n @include slider-theme.thumb-color(\n $color-or-map: (\n default: slider-theme.$color,\n disabled: slider-theme.$disabled-color,\n ),\n $query: $query\n );\n @include slider-theme.thumb-ripple-color(\n $color: slider-theme.$color,\n $query: $query\n );\n}\n\n@mixin _tick-marks($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-slider__tick-marks {\n @include feature-targeting.targets($feat-structure) {\n align-items: center;\n box-sizing: border-box;\n display: flex;\n height: 100%;\n justify-content: space-between;\n padding: 0 1px;\n position: absolute;\n width: 100%;\n }\n }\n\n .mdc-slider__tick-mark--active,\n .mdc-slider__tick-mark--inactive {\n @include feature-targeting.targets($feat-structure) {\n border-radius: 50%;\n height: 2px;\n width: 2px;\n }\n }\n\n @include slider-theme.tick-mark-active-color(\n $color-or-map: (\n default: slider-theme.$tick-mark-active-color,\n disabled: on-primary,\n ),\n $query: $query\n );\n @include slider-theme.tick-mark-inactive-color(\n $color-or-map: (\n default: slider-theme.$tick-mark-inactive-color,\n disabled: slider-theme.$disabled-color,\n ),\n $query: $query\n );\n}\n\n@mixin _value-indicator($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-slider__value-indicator-container {\n @include feature-targeting.targets($feat-structure) {\n bottom: $_thumb-ripple-size / 2 + $_thumb-size / 2 +\n $_value-indicator-caret-width + 4px;\n left: 50%;\n pointer-events: none;\n position: absolute;\n transform: translateX(-50%);\n }\n }\n\n .mdc-slider__value-indicator {\n @include feature-targeting.targets($feat-animation) {\n transition: animation.exit-permanent(transform, 100ms);\n }\n\n @include feature-targeting.targets($feat-structure) {\n align-items: center;\n border-radius: 4px;\n display: flex;\n height: 32px;\n outline: 1px solid transparent; // For HCM.\n padding: 0 12px;\n transform: scale(0);\n transform-origin: bottom;\n }\n\n // Caret: https://css-tricks.com/snippets/css/css-triangle/\n &::before {\n @include feature-targeting.targets($feat-structure) {\n border-left: $_value-indicator-caret-width solid transparent;\n border-right: $_value-indicator-caret-width solid transparent;\n border-top: $_value-indicator-caret-width solid;\n bottom: -$_value-indicator-caret-width + 1;\n content: '';\n height: 0;\n left: 50%;\n position: absolute;\n transform: translateX(-50%);\n width: 0;\n }\n }\n }\n\n .mdc-slider__thumb--with-indicator {\n .mdc-slider__value-indicator-container {\n @include feature-targeting.targets($feat-structure) {\n pointer-events: auto;\n }\n }\n\n .mdc-slider__value-indicator {\n @include feature-targeting.targets($feat-animation) {\n transition: animation.enter(transform, 100ms);\n }\n\n @include feature-targeting.targets($feat-structure) {\n transform: scale(1);\n }\n }\n }\n\n @media (prefers-reduced-motion) {\n .mdc-slider__value-indicator,\n .mdc-slider__thumb--with-indicator .mdc-slider__value-indicator {\n @include feature-targeting.targets($feat-animation) {\n transition: none;\n }\n }\n }\n\n .mdc-slider__value-indicator-text {\n @include typography.typography(subtitle2, $query);\n }\n\n @include slider-theme.value-indicator-color(\n $color: slider-theme.$value-indicator-color,\n $opacity: slider-theme.$value-indicator-opacity,\n $query: $query\n );\n @include slider-theme.value-indicator-text-color(\n $color: slider-theme.$value-indicator-text-color,\n $query: $query\n );\n}\n\n// Styles for slider in disabled state.\n@mixin _disabled($query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-color) {\n opacity: 0.38;\n }\n\n @include feature-targeting.targets($feat-structure) {\n cursor: auto;\n }\n\n .mdc-slider__thumb {\n @include feature-targeting.targets($feat-structure) {\n pointer-events: none;\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple-theme';\n@use '@material/theme/state';\n@use '@material/theme/theme';\n\n/// Default color for slider (track, thumb, ripple).\n$color: primary;\n$disabled-color: on-surface;\n\n// Thumb variables.\n$value-indicator-color: #000;\n$value-indicator-opacity: 0.6;\n$value-indicator-text-color: on-primary;\n\n// Track variables.\n$track-inactive-opacity: 0.24;\n$tick-mark-active-color: on-primary;\n$tick-mark-inactive-color: primary;\n$tick-mark-opacity: 0.6;\n\n/// Customizes active track color, using a Color or state Map.\n/// - To set only the default color, provide a single Color.\n/// - To set one or more state colors, provide a state Map with optional keys.\n/// - Supported state Map keys: `default`, `disabled`.\n///\n/// @example\n/// @include track-active-color(blue);\n/// @include track-active-color((disabled: gray));\n///\n/// @param {Color | Map} $color-or-map - The label's color or a state Map\n@mixin track-active-color($color-or-map, $query: feature-targeting.all()) {\n @include _set-track-active-color(\n state.get-default-state($color-or-map),\n $query\n );\n\n $_disabled-color: state.get-disabled-state($color-or-map);\n @if $_disabled-color {\n &.mdc-slider--disabled {\n @include _set-track-active-color($_disabled-color, $query);\n }\n }\n}\n\n@mixin _set-track-active-color($color, $query) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-slider__track--active_fill {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-color, $color);\n }\n }\n}\n\n/// Customizes inactive track color, using a Color or state Map.\n/// - To set only the default color, provide a single Color.\n/// - To set one or more state colors, provide a state Map with optional keys.\n/// - Supported state Map keys: `default`, `disabled`.\n///\n/// @example\n/// @include track-inactive-color(blue);\n/// @include track-inactive-color((disabled: gray));\n///\n/// @param {Color | Map} $color-or-map - The label's color or a state Map\n@mixin track-inactive-color(\n $color-or-map,\n $opacity: $track-inactive-opacity,\n $query: feature-targeting.all()\n) {\n @include _set-track-inactive-color(\n state.get-default-state($color-or-map),\n $opacity,\n $query\n );\n\n $_disabled-color: state.get-disabled-state($color-or-map);\n @if $_disabled-color {\n &.mdc-slider--disabled {\n @include _set-track-inactive-color($_disabled-color, $opacity, $query);\n }\n }\n}\n\n@mixin _set-track-inactive-color($color, $opacity, $query) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-slider__track--inactive {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n\n opacity: $opacity;\n }\n }\n}\n\n/// Customizes thumb color, using a Color or state Map.\n/// - To set only the default color, provide a single Color.\n/// - To set one or more state colors, provide a state Map with optional keys.\n/// - Supported state Map keys: `default`, `disabled`.\n///\n/// @example\n/// @include thumb-color(blue);\n/// @include thumb-color((disabled: gray));\n///\n/// @param {Color | Map} $color-or-map - The label's color or a state Map\n@mixin thumb-color($color-or-map, $query: feature-targeting.all()) {\n @include _set-thumb-color(state.get-default-state($color-or-map), $query);\n\n $_disabled-color: state.get-disabled-state($color-or-map);\n @if $_disabled-color {\n &.mdc-slider--disabled {\n @include _set-thumb-color($_disabled-color, $query);\n }\n }\n}\n\n@mixin _set-thumb-color($color, $query) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-slider__thumb-knob {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n @include theme.property(border-color, $color);\n }\n }\n}\n\n///\n/// Customizes thumb ripple color.\n/// @param {Color | String} $color Either a valid color value or a key from\n/// `$theme-variables.property-values`.\n///\n@mixin thumb-ripple-color($color, $query: feature-targeting.all()) {\n .mdc-slider__thumb {\n @include ripple-theme.states($color: $color, $query: $query);\n }\n}\n\n/// Customizes color of active tick marks, using a Color or state Map.\n/// - To set only the default color, provide a single Color.\n/// - To set one or more state colors, provide a state Map with optional keys.\n/// - Supported state Map keys: `default`, `disabled`.\n///\n/// @example\n/// @include tick-mark-active-color(blue);\n/// @include tick-mark-active-color((disabled: gray));\n///\n/// @param {Color | Map} $color-or-map - The label's color or a state Map\n@mixin tick-mark-active-color(\n $color-or-map,\n $opacity: $tick-mark-opacity,\n $query: feature-targeting.all()\n) {\n @include _set-tick-mark-active-color(\n state.get-default-state($color-or-map),\n $opacity,\n $query\n );\n\n $_disabled-color: state.get-disabled-state($color-or-map);\n @if $_disabled-color {\n &.mdc-slider--disabled {\n @include _set-tick-mark-active-color($_disabled-color, $opacity, $query);\n }\n }\n}\n\n@mixin _set-tick-mark-active-color($color, $opacity, $query) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-slider__tick-mark--active {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n\n opacity: $opacity;\n }\n }\n}\n\n/// Customizes color of inactive tick marks, using a Color or state Map.\n/// - To set only the default color, provide a single Color.\n/// - To set one or more state colors, provide a state Map with optional keys.\n/// - Supported state Map keys: `default`, `disabled`.\n///\n/// @example\n/// @include tick-mark-inactive-color(blue);\n/// @include tick-mark-inactive-color((disabled: gray));\n///\n/// @param {Color | Map} $color-or-map - The label's color or a state Map\n@mixin tick-mark-inactive-color(\n $color-or-map,\n $opacity: $tick-mark-opacity,\n $query: feature-targeting.all()\n) {\n @include _set-tick-mark-inactive-color(\n state.get-default-state($color-or-map),\n $opacity,\n $query\n );\n\n $_disabled-color: state.get-disabled-state($color-or-map);\n @if $_disabled-color {\n &.mdc-slider--disabled {\n @include _set-tick-mark-inactive-color(\n $_disabled-color,\n $opacity,\n $query\n );\n }\n }\n}\n\n@mixin _set-tick-mark-inactive-color($color, $opacity, $query) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-slider__tick-mark--inactive {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n\n opacity: $opacity;\n }\n }\n}\n\n///\n/// Customizes color and opacity of the value indicator.\n/// @param {Color | String} $color Either a valid color value or a key from\n/// `$theme-variables.property-values`.\n/// @param {number} $opacity\n///\n@mixin value-indicator-color(\n $color,\n $opacity,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-slider__value-indicator {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n\n opacity: $opacity;\n }\n }\n\n // Caret.\n .mdc-slider__value-indicator::before {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-top-color, $color);\n }\n }\n}\n\n///\n/// Customizes color of the value indicator text.\n/// @param {Color | String} $color Either a valid color value or a key from\n/// `$theme-variables.property-values`.\n///\n@mixin value-indicator-text-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-slider__value-indicator {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/animation/functions' as animation-functions;\n@use '@material/button/button-theme';\n@use '@material/icon-button/mixins' as icon-button-mixins;\n@use '@material/ripple/ripple-theme';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/dom/mixins' as dom-mixins;\n@use '@material/typography/typography';\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/theme/theme';\n@use './variables';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n // postcss-bem-linter: define snackbar\n .mdc-snackbar {\n @include z-index(variables.$z-index, $query: $query);\n @include viewport-margin(variables.$viewport-margin-narrow, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n display: none;\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n\n // Ignore mouse events on the root layout element.\n pointer-events: none;\n\n // For some reason, iOS Safari displays a tap highlight on the entire snackbar element.\n // Mobile Safari only supports `rgba` values for this property; named values like\n // `transparent` are ignored. From Apple's docs:\n // > This property obeys the alpha value, if specified.\n // > If you don’t specify an alpha value, Safari on iOS applies a default alpha value to the color.\n // > To disable tap highlighting, set the alpha value to 0 (invisible).\n // > If you set the alpha value to 1.0 (opaque), the element is not visible when tapped.\n // See https://github.com/ben-eb/postcss-colormin/issues/1\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n }\n }\n\n @include fill-color(variables.$fill-color, $query: $query);\n @include label-ink-color(variables.$label-ink-color, $query: $query);\n @include min-width(variables.$min-width, $query: $query);\n @include max-width(variables.$max-width, $query: $query);\n @include elevation(variables.$elevation, $query: $query);\n @include shape-radius(variables.$shape-radius, $query: $query);\n\n .mdc-snackbar--opening,\n .mdc-snackbar--open,\n .mdc-snackbar--closing {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n }\n }\n\n .mdc-snackbar--open .mdc-snackbar__label,\n .mdc-snackbar--open .mdc-snackbar__actions {\n @include feature-targeting.targets($feat-structure) {\n visibility: visible;\n }\n }\n\n .mdc-snackbar--leading {\n @include position-leading($query: $query);\n }\n\n .mdc-snackbar--stacked {\n @include layout-stacked($query: $query);\n }\n\n .mdc-snackbar__surface {\n // 1px border around the snackbar surface for high contrast mode.\n &::before {\n @include dom-mixins.transparent-border($query: $query);\n }\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(padding, 0, variables.$padding);\n\n display: flex;\n align-items: center;\n justify-content: flex-start;\n box-sizing: border-box;\n transform: scale(0.8);\n opacity: 0;\n }\n\n .mdc-snackbar--open & {\n @include feature-targeting.targets($feat-structure) {\n transform: scale(1);\n opacity: 1;\n pointer-events: auto; // Allow mouse events on surface element while snackbar is open\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: animation-functions.enter(\n opacity,\n variables.$enter-duration\n ),\n animation-functions.enter(transform, variables.$enter-duration);\n }\n }\n\n .mdc-snackbar--closing & {\n @include feature-targeting.targets($feat-structure) {\n transform: scale(1);\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: animation-functions.exit-permanent(\n opacity,\n variables.$exit-duration\n );\n }\n }\n }\n\n .mdc-snackbar__label {\n @include typography.typography(variables.$label-type-scale, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(padding, 16px, variables.$padding);\n\n width: 100%;\n flex-grow: 1;\n box-sizing: border-box;\n margin: 0;\n visibility: hidden;\n\n // 14px top/bottom padding needed to make the height 48px.\n padding-top: 14px;\n padding-bottom: 14px;\n }\n }\n\n // Used to prevent visual jank when announcing label text to screen readers.\n // See the `announce()` function in util.js for details.\n .mdc-snackbar__label::before {\n @include feature-targeting.targets($feat-structure) {\n display: inline;\n content: attr(data-mdc-snackbar-label-text);\n }\n }\n\n .mdc-snackbar__actions {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n box-sizing: border-box;\n visibility: hidden;\n }\n }\n\n .mdc-snackbar__action {\n @include button-theme.ink-color(\n variables.$action-ink-color,\n $query: $query\n );\n @include ripple-theme.states(variables.$action-ink-color, $query: $query);\n }\n\n .mdc-snackbar__dismiss {\n @include icon-button-mixins.ink-color(\n variables.$dismiss-ink-color,\n $query: $query\n );\n }\n\n // Two selectors are needed to increase specificity above `.material-icons`.\n // stylelint-disable-next-line selector-class-pattern\n .mdc-snackbar__dismiss.mdc-snackbar__dismiss {\n @include icon-button-mixins.icon-size(\n variables.$dismiss-icon-size,\n $query: $query\n );\n }\n\n .mdc-snackbar__action + .mdc-snackbar__dismiss {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(margin, variables.$padding, 0);\n }\n }\n // postcss-bem-linter: end\n}\n\n@mixin fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-snackbar__surface {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n }\n}\n\n@mixin label-ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-snackbar__label {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n\n@mixin shape-radius(\n $radius,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n .mdc-snackbar__surface {\n @include shape-mixins.radius($radius, $rtl-reflexive, $query: $query);\n }\n}\n\n@mixin min-width(\n $min-width,\n $mobile-breakpoint: variables.$mobile-breakpoint,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-snackbar__surface {\n @include feature-targeting.targets($feat-structure) {\n min-width: $min-width;\n\n // The first media query ensures that snackbars are always 100% width on mobile devices, as required by the spec.\n // The second media query prevents snackbars from being wider than the viewport for large min-width values.\n @media (max-width: $mobile-breakpoint), (max-width: $min-width) {\n min-width: 100%;\n }\n }\n }\n}\n\n@mixin max-width($max-width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-snackbar__surface {\n @include feature-targeting.targets($feat-structure) {\n max-width: $max-width;\n }\n }\n}\n\n@mixin elevation($z-index, $query: feature-targeting.all()) {\n .mdc-snackbar__surface {\n @include elevation-mixins.elevation($z-index, $query: $query);\n }\n}\n\n@mixin viewport-margin($margin, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n margin: $margin;\n }\n}\n\n@mixin z-index($z-index, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n z-index: $z-index;\n }\n}\n\n@mixin position-leading($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n justify-content: flex-start;\n }\n}\n\n@mixin layout-stacked($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-snackbar__label {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(padding, 16px, 8px);\n padding-bottom: 12px;\n }\n }\n\n .mdc-snackbar__surface {\n @include feature-targeting.targets($feat-structure) {\n flex-direction: column;\n align-items: flex-start;\n }\n }\n\n .mdc-snackbar__actions {\n @include feature-targeting.targets($feat-structure) {\n align-self: flex-end;\n margin-bottom: variables.$padding;\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use 'sass:color';\n@use '@material/theme/theme-color';\n\n$fill-color: color.mix(\n theme-color.prop-value(on-surface),\n theme-color.prop-value(surface),\n 80%\n) !default;\n$label-ink-color: rgba(\n theme-color.prop-value(surface),\n theme-color.text-emphasis(high)\n) !default;\n$action-ink-color: #bb86fc !default;\n$dismiss-ink-color: rgba(\n theme-color.prop-value(surface),\n theme-color.text-emphasis(high)\n) !default;\n\n$label-type-scale: body2 !default;\n$dismiss-icon-size: 18px !default;\n$min-width: 344px !default;\n$max-width: 672px !default;\n$mobile-breakpoint: 480px !default;\n$viewport-margin-narrow: 8px !default;\n$viewport-margin-wide: 24px !default;\n$padding: 8px !default;\n\n$elevation: 6 !default;\n$shape-radius: small !default; // Key from shape.$category-keywords or CSS length value (e.g., 4px)\n$z-index: 8 !default; // One above mdc-dialog\n\n// These variables need to be kept in sync with the values in constants.js.\n$enter-duration: 150ms !default;\n$exit-duration: 75ms !default;\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/density/functions' as density-functions;\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/theme/theme';\n@use './functions';\n@use './variables';\n\n//\n// Public\n//\n\n@mixin core-styles($query: feature-targeting.all()) {\n @include without-ripple($query);\n @include ripple($query);\n}\n\n// This API is intended for use by frameworks that may want to separate the ripple-related styles from the other\n// switch styles. It is recommended that most users use `mdc-switch-core-styles` instead.\n@mixin without-ripple($query: feature-targeting.all()) {\n // postcss-bem-linter: define switch\n\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include density(variables.$density-scale, $query: $query);\n\n .mdc-switch {\n @include feature-targeting.targets($feat-structure) {\n @include base_;\n }\n\n @include toggled-on-track-color(variables.$baseline-theme-color, $query);\n @include toggled-on-thumb-color(variables.$baseline-theme-color, $query);\n @include toggled-off-track-color(\n variables.$toggled-off-track-color,\n $query\n );\n @include toggled-off-thumb-color(\n variables.$toggled-off-thumb-color,\n $query\n );\n }\n\n .mdc-switch__native-control {\n @include feature-targeting.targets($feat-structure) {\n @include native-control_;\n }\n @include feature-targeting.targets($feat-animation) {\n transition: functions.transition(transform);\n }\n }\n\n .mdc-switch__track {\n @include track_($query);\n }\n\n .mdc-switch__thumb-underlay {\n @include thumb-underlay_($query);\n }\n\n .mdc-switch__thumb {\n @include thumb_($query);\n }\n\n .mdc-switch--checked {\n @include feature-targeting.targets($feat-structure) {\n .mdc-switch__track {\n @include track-checked_;\n }\n\n .mdc-switch__thumb-underlay {\n @include thumb-underlay-checked_;\n }\n\n .mdc-switch__native-control {\n @include native-control-checked_;\n }\n }\n }\n\n .mdc-switch--disabled {\n @include feature-targeting.targets($feat-structure) {\n @include disabled-base_;\n\n .mdc-switch__thumb {\n @include thumb-disabled_;\n }\n\n .mdc-switch__native-control {\n @include native-control-disabled_;\n }\n }\n }\n\n // postcss-bem-linter: end\n}\n\n// This API is intended for use by frameworks that may want to separate the ripple-related styles from the other\n// switch styles. It is recommended that most users use `mdc-switch-core-styles` instead.\n@mixin ripple($query: feature-targeting.all()) {\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-switch {\n @include toggled-off-ripple-color(\n variables.$toggled-off-ripple-color,\n $query\n );\n }\n\n .mdc-switch__thumb-underlay {\n @include ripple.surface($query);\n @include ripple.radius-unbounded(100%, $query);\n @include ripple-theme.states(\n variables.$baseline-theme-color,\n false,\n $query\n );\n }\n}\n\n@mixin toggled-on-color($color, $query: feature-targeting.all()) {\n @include toggled-on-track-color($color, $query);\n @include toggled-on-thumb-color($color, $query);\n @include toggled-on-ripple-color($color, $query);\n}\n\n@mixin toggled-off-color($color, $query: feature-targeting.all()) {\n @include toggled-off-track-color($color, $query);\n @include toggled-off-thumb-color($color, $query);\n @include toggled-off-ripple-color($color, $query);\n}\n\n@mixin toggled-on-track-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &.mdc-switch--checked .mdc-switch__track {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n }\n}\n\n@mixin toggled-on-thumb-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &.mdc-switch--checked .mdc-switch__thumb {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n @include theme.property(border-color, $color);\n }\n }\n}\n\n@mixin toggled-on-ripple-color($color, $query: feature-targeting.all()) {\n &.mdc-switch--checked .mdc-switch__thumb-underlay {\n @include ripple-theme.states($color, false, $query);\n }\n}\n\n@mixin toggled-off-track-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &:not(.mdc-switch--checked) .mdc-switch__track {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n }\n}\n\n@mixin toggled-off-thumb-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &:not(.mdc-switch--checked) .mdc-switch__thumb {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n @include theme.property(border-color, $color);\n }\n }\n}\n\n@mixin toggled-off-ripple-color($color, $query: feature-targeting.all()) {\n &:not(.mdc-switch--checked) .mdc-switch__thumb-underlay {\n @include ripple-theme.states($color, false, $query);\n }\n}\n\n///\n/// Sets density scale for switch.\n///\n/// @param {Number | String} $density-scale - Density scale value for component.\n/// Supported density scale values are `-5`, `-4`, `-3`, `-2`, `-1`,\n/// `0` (default).\n///\n@mixin density($density-scale, $query: feature-targeting.all()) {\n $size: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: size,\n );\n\n @include ripple-size($size, $query: $query);\n}\n\n@mixin ripple-size($ripple-size, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // Position for the tap target that contains the thumb to align the thumb\n // correctly offset from the track.\n $tap-target-initial-position: -$ripple-size / 2 + variables.$thumb-diameter /\n 2;\n // Value to cover the whole switch area (including the ripple) with the\n // native control.\n $native-control-width: variables.$track-width +\n ($ripple-size - variables.$thumb-diameter);\n\n .mdc-switch__thumb-underlay {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(\n left,\n $tap-target-initial-position\n );\n\n // Ensures the knob is centered on the track.\n top: -(($ripple-size - variables.$track-height) / 2);\n width: $ripple-size;\n height: $ripple-size;\n }\n }\n\n .mdc-switch__native-control {\n @include feature-targeting.targets($feat-structure) {\n width: $native-control-width;\n height: $ripple-size;\n }\n }\n}\n\n///\n/// Customizes ripple opacities surrounding the thumb in `hover`, `focus`, or `press` states\n/// The customizations apply to both on and off switches to ensure symmetry\n/// @param {map} $opacity-map - map specifying custom opacity of zero or more states\n///\n@mixin ripple-states-opacity(\n $opacity-map: (),\n $query: feature-targeting.all()\n) {\n // Ensure sufficient specificity to override base state opacities\n &.mdc-switch .mdc-switch__thumb-underlay {\n @include ripple-theme.states-opacities($opacity-map, $query: $query);\n }\n}\n\n//\n// Private\n//\n\n// Structure\n@mixin base_ {\n display: inline-block;\n position: relative;\n outline: none;\n user-select: none;\n}\n\n@mixin track_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n box-sizing: border-box;\n width: variables.$track-width;\n height: variables.$track-height;\n border: 1px solid transparent;\n border-radius: variables.$track-height / 2;\n opacity: 0.38;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: functions.transition(opacity),\n functions.transition(background-color), functions.transition(border-color);\n }\n}\n\n@mixin thumb-underlay_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-color: feature-targeting.create-target($query, color);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n position: absolute;\n align-items: center;\n justify-content: center;\n transform: translateX(0);\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: functions.transition(transform),\n functions.transition(background-color), functions.transition(border-color);\n }\n}\n\n@mixin native-control_ {\n @include rtl-mixins.reflexive-position(left, 0);\n\n position: absolute;\n top: 0;\n margin: 0;\n opacity: 0;\n cursor: pointer;\n pointer-events: auto;\n}\n\n@mixin thumb_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-color: feature-targeting.create-target($query, color);\n\n @include elevation-mixins.elevation($z-value: 2, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n box-sizing: border-box;\n width: variables.$thumb-diameter;\n height: variables.$thumb-diameter;\n border: variables.$thumb-diameter / 2 solid;\n border-radius: 50%;\n // Allow events to go through to the native control, necessary for IE and Edge.\n pointer-events: none;\n z-index: 1;\n }\n}\n\n// Checked state\n\n@mixin track-checked_ {\n opacity: 0.54;\n}\n\n@mixin thumb-underlay-checked_ {\n transform: translateX(variables.$thumb-active-margin);\n\n @include rtl-mixins.rtl {\n transform: translateX(-(variables.$thumb-active-margin));\n }\n}\n\n@mixin native-control-checked_ {\n // Translate the native control the opposite direction so that the tap target stays the same.\n transform: translateX(-(variables.$thumb-active-margin));\n\n @include rtl-mixins.rtl {\n transform: translateX(variables.$thumb-active-margin);\n }\n}\n\n// Disabled state\n\n@mixin disabled-base_ {\n opacity: 0.38;\n pointer-events: none;\n}\n\n@mixin thumb-disabled_ {\n border-width: 1px; // In high contrast mode, only show outline of knob.\n}\n\n@mixin native-control-disabled_ {\n cursor: default;\n pointer-events: none;\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/density/variables' as density-variables;\n\n$track-width: 36px !default;\n$track-height: 14px !default;\n$thumb-diameter: 20px !default;\n$ripple-size: 48px !default;\n\n$minimum-size: 28px !default;\n$maximum-size: $ripple-size !default;\n$density-scale: density-variables.$default-scale !default;\n$density-config: (\n size: (\n minimum: $minimum-size,\n default: $maximum-size,\n maximum: $maximum-size,\n ),\n) !default;\n\n$thumb-active-margin: $track-width - $thumb-diameter !default;\n\n$toggled-off-thumb-color: surface !default;\n$toggled-off-track-color: on-surface !default;\n$toggled-off-ripple-color: #9e9e9e !default;\n$disabled-thumb-color: surface !default;\n$disabled-track-color: on-surface !default;\n\n$baseline-theme-color: secondary !default;\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/theme/theme';\n@use '@material/typography/typography';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/tab-indicator/mixins' as tab-indicator-mixins;\n@use './variables';\n\n// Public mixins\n\n@mixin core-styles($query: feature-targeting.all()) {\n @include without-ripple($query);\n @include ripple($query);\n}\n\n// This API is intended for use by frameworks that may want to separate the ripple-related styles\n// from the other tah styles. It is recommended that most users use `mdc-tab-core-styles` instead.\n@mixin without-ripple($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n // postcss-bem-linter: define tab\n\n .mdc-tab {\n @include base_($query);\n }\n\n .mdc-tab--min-width {\n @include feature-targeting.targets($feat-structure) {\n flex: 0 1 auto;\n }\n }\n\n .mdc-tab__content {\n @include content_($query);\n }\n\n .mdc-tab__text-label {\n @include feature-targeting.targets($feat-animation) {\n transition: 150ms color linear;\n }\n\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n // Setting line-height here overrides the line-height from the typography\n // mixin above. The line-height needs to be overridden so that the spacing\n // between the text label and the icon as well as the text label and the\n // bottom of the tab remain the same.\n line-height: 1;\n z-index: 2;\n }\n }\n\n .mdc-tab__icon {\n @include feature-targeting.targets($feat-animation) {\n transition: 150ms color linear;\n }\n\n @include feature-targeting.targets($feat-structure) {\n width: variables.$icon-size;\n height: variables.$icon-size;\n font-size: variables.$icon-size;\n z-index: 2;\n }\n }\n\n .mdc-tab--stacked {\n @include stacked_($query);\n }\n\n .mdc-tab--active {\n @include active_($query);\n }\n\n .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon + .mdc-tab__text-label {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(padding, left, 8px);\n }\n }\n\n // postcss-bem-linter: end\n}\n\n// This API is intended for use by frameworks that may want to separate the ripple-related styles\n// from the other tah styles. It is recommended that most users use `mdc-tab-core-styles` instead.\n@mixin ripple($query: feature-targeting.all()) {\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n @include ripple_($query);\n}\n\n@mixin horizontal-padding($padding, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n padding-right: $padding;\n padding-left: $padding;\n }\n}\n\n@mixin text-label-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-tab__text-label {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n\n@mixin icon-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-tab__icon {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n\n fill: currentColor;\n }\n }\n}\n\n@mixin states-color($color, $query: feature-targeting.all()) {\n @include ripple-theme.states(\n $color,\n $query: $query,\n $ripple-target: variables.$ripple-target\n );\n}\n\n@mixin ink-color($color, $query: feature-targeting.all()) {\n @include icon-color($color, $query);\n @include states-color($color, $query);\n @include text-label-color($color, $query);\n}\n\n@mixin active-text-label-color($color, $query: feature-targeting.all()) {\n &.mdc-tab--active {\n @include text-label-color($color, $query);\n }\n}\n\n@mixin active-icon-color($color, $query: feature-targeting.all()) {\n &.mdc-tab--active {\n @include icon-color($color, $query);\n }\n}\n\n@mixin active-states-color($color, $query: feature-targeting.all()) {\n &.mdc-tab--active {\n @include states-color($color, $query);\n }\n}\n\n@mixin parent-positioning($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n position: relative;\n }\n}\n\n@mixin fixed-width($width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n flex: 0 1 $width;\n }\n}\n\n///\n/// Sets tab height\n///\n/// @param {Number} $height Height value in `px`.\n///\n@mixin height($height, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n}\n\n///\n/// Sets tab text transform\n///\n/// @param {String} $transform The text-transform property to apply.\n///\n@mixin text-transform($transform, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n text-transform: $transform;\n }\n}\n\n///\n/// Sets tab min-width.\n///\n/// @param {Number} $min-width Minimum width value in `px`.\n///\n@mixin min-width($min-width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n min-width: $min-width;\n }\n}\n\n//\n// Private\n//\n\n@mixin base_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include typography.typography(button, $query);\n @include text-label-color(variables.$text-label-color-default, $query);\n @include icon-color(variables.$icon-color-default, $query);\n @include horizontal-padding(variables.$horizontal-padding, $query);\n @include min-width(variables.$min-width, $query);\n @include tab-indicator-mixins.surface($query);\n\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n flex: 1 0 auto;\n justify-content: center;\n box-sizing: border-box;\n // Explicitly setting margin to 0 is to override safari default margin for button elements.\n margin: 0;\n padding-top: 0;\n padding-bottom: 0;\n border: none;\n outline: none;\n background: none;\n text-align: center;\n white-space: nowrap;\n cursor: pointer;\n -webkit-appearance: none;\n z-index: 1;\n\n // Firefox still draws a dotted border around focused buttons unless specifically overridden.\n &::-moz-focus-inner {\n padding: 0;\n border: 0;\n }\n }\n}\n\n@mixin ripple_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-tab {\n @include ripple.surface(\n $query,\n $ripple-target: variables.$ripple-target,\n $include-will-change: false\n );\n @include ripple.radius-bounded(\n $query: $query,\n $ripple-target: variables.$ripple-target\n );\n @include ripple-theme.states(\n $color: primary,\n $query: $query,\n $ripple-target: variables.$ripple-target\n );\n }\n\n #{variables.$ripple-target} {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n overflow: hidden;\n // TODO(b/151931961): Remove the following line once resolved\n will-change: transform, opacity;\n }\n }\n}\n\n@mixin content_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include tab-indicator-mixins.surface($query);\n\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n align-items: center;\n justify-content: center;\n height: inherit;\n pointer-events: none;\n }\n}\n\n@mixin stacked_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n .mdc-tab__content {\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n\n .mdc-tab__text-label {\n padding-top: 6px;\n padding-bottom: 4px;\n }\n }\n}\n\n@mixin active_($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include text-label-color(variables.$text-label-color-active, $query);\n @include icon-color(variables.$icon-color-active, $query);\n\n .mdc-tab__text-label,\n .mdc-tab__icon {\n @include feature-targeting.targets($feat-animation) {\n transition-delay: 100ms;\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use '@material/theme/theme-color';\n\n$icon-size: 24px !default;\n$height: 48px !default;\n$stacked-height: 72px !default;\n$min-width: 90px !default;\n$horizontal-padding: 24px !default;\n$text-label-opacity: 0.6 !default;\n$icon-opacity: 0.54 !default;\n$text-label-color-default: rgba(\n theme-color.prop-value(on-surface),\n $text-label-opacity\n) !default;\n$icon-color-default: rgba(\n theme-color.prop-value(on-surface),\n $icon-opacity\n) !default;\n$text-label-color-active: primary !default;\n$icon-color-active: primary !default;\n$ripple-target: '.mdc-tab__ripple';\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/animation/variables';\n@use '@material/theme/theme';\n@use '@material/feature-targeting/feature-targeting';\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n // postcss-bem-linter: define tab-indicator\n\n .mdc-tab-indicator {\n @include base_($query);\n }\n\n .mdc-tab-indicator__content {\n @include feature-targeting.targets($feat-structure) {\n transform-origin: left;\n opacity: 0;\n }\n }\n\n .mdc-tab-indicator__content--underline {\n @include feature-targeting.targets($feat-structure) {\n align-self: flex-end;\n box-sizing: border-box;\n width: 100%;\n border-top-style: solid;\n }\n }\n\n .mdc-tab-indicator__content--icon {\n @include feature-targeting.targets($feat-structure) {\n align-self: center;\n margin: 0 auto;\n }\n }\n\n .mdc-tab-indicator--active .mdc-tab-indicator__content {\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n }\n\n // Slide by default\n .mdc-tab-indicator .mdc-tab-indicator__content {\n @include feature-targeting.targets($feat-animation) {\n transition: 250ms transform variables.$standard-curve-timing-function;\n }\n }\n\n // --no-transition is applied in cases where styles need to be applied immediately to set up a transition\n .mdc-tab-indicator--no-transition .mdc-tab-indicator__content {\n @include feature-targeting.targets($feat-animation) {\n transition: none;\n }\n }\n\n .mdc-tab-indicator--fade .mdc-tab-indicator__content {\n @include feature-targeting.targets($feat-animation) {\n transition: 150ms opacity linear;\n }\n }\n\n // postcss-bem-linter: ignore\n .mdc-tab-indicator--active.mdc-tab-indicator--fade\n .mdc-tab-indicator__content {\n @include feature-targeting.targets($feat-animation) {\n transition-delay: 100ms;\n }\n }\n\n // postcss-bem-linter: end\n}\n\n@mixin surface($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n position: relative;\n }\n}\n\n@mixin underline-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-tab-indicator__content--underline {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(border-color, $color);\n }\n }\n}\n\n@mixin underline-height($height, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-tab-indicator__content--underline {\n @include feature-targeting.targets($feat-structure) {\n border-top-width: $height;\n }\n }\n}\n\n@mixin underline-top-corner-radius($radius, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-tab-indicator__content--underline {\n @include feature-targeting.targets($feat-structure) {\n border-top-left-radius: $radius;\n border-top-right-radius: $radius;\n }\n }\n}\n\n@mixin icon-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-tab-indicator__content--icon {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n\n@mixin icon-height($height, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-tab-indicator__content--icon {\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n font-size: $height;\n }\n }\n}\n\n//\n// Private\n//\n\n@mixin base_($query) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include underline-color(primary, $query);\n @include icon-color(secondary, $query);\n @include underline-height(2px, $query);\n @include icon-height(34px, $query);\n\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n position: absolute;\n top: 0;\n left: 0;\n justify-content: center;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: 1;\n }\n}\n","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n@use './mixins';\n@include mixins.core-styles;\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/animation/variables' as animation-variables;\n@use '@material/density/functions' as density-functions;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/tab-scroller/mixins' as tab-scroller-mixins;\n@use '@material/tab/mixins' as tab-mixins;\n@use './variables';\n\n@mixin core-styles($query: feature-targeting.all()) {\n // postcss-bem-linter: define tab-bar\n .mdc-tab-bar {\n @include width(100%, $query);\n }\n\n @include density(variables.$density-scale, $query: $query);\n @include stacked-density(variables.$stacked-density-scale, $query: $query);\n // postcss-bem-linter: end\n}\n\n@mixin width($width, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n width: $width;\n }\n}\n\n///\n/// Sets density scale to default tab bar variant. Use `mdc-tab-bar-stacked-density()` mixin for stacked tab bar\n/// variant.\n///\n/// @param {Number} $density-scale Density scale value. Supported density scales `-4`, `-3`, `-2`, `-1` and `0`.\n///\n@mixin density($density-scale, $query: feature-targeting.all()) {\n $height: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n .mdc-tab {\n @include tab-mixins.height($height, $query: $query);\n }\n}\n\n///\n/// Sets density scale to stacked tab bar variant.\n///\n/// @param {Number} $density-scale Density scale value. Supported density scales `-4`, `-3`, `-2`, `-1` and `0`.\n///\n@mixin stacked-density($density-scale, $query: feature-targeting.all()) {\n $height: density-functions.prop-value(\n $density-config: variables.$stacked-density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n .mdc-tab--stacked {\n @include tab-mixins.height($height, $query: $query);\n }\n}\n\n///\n/// Sets the CSS transition for the tab scrolling animation. This mixin is a proxy to `mdc-tab-scroller-transition`\n/// mixin.\n///\n/// @param {Number | String} $duration-ms - Duration (in ms) of the animation.\n/// @param {String} $timing-function - Optionally overrides the default animation timing function.\n///\n@mixin tab-scroller-transition(\n $duration-ms,\n $timing-function: animation-variables.$standard-curve-timing-function,\n $query: feature-targeting.all()\n) {\n .mdc-tab-scroller {\n @include tab-scroller-mixins.transition(\n $duration-ms,\n $timing-function: $timing-function,\n $query: $query\n );\n }\n}\n","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n@use './mixins';\n@include mixins.core-styles;\n","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n@use './mixins';\n@include mixins.core-styles;\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/animation/variables' as animation-variables;\n@use '@material/tab/mixins' as tab-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use './variables';\n\n///\n/// Sets the CSS transition for the tab scrolling animation.\n///\n/// @param {Number | String} $duration-ms - Duration (in ms) of the animation.\n/// @param {String} $timing-function - Optionally overrides the default animation timing function.\n///\n@mixin transition(\n $duration-ms,\n $timing-function: animation-variables.$standard-curve-timing-function,\n $query: feature-targeting.all()\n) {\n $feat-animation: feature-targeting.create-target($query, animation);\n\n &.mdc-tab-scroller--animating .mdc-tab-scroller__scroll-content {\n @include feature-targeting.targets($feat-animation) {\n transition: $duration-ms transform $timing-function;\n }\n }\n}\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n // postcss-bem-linter: define tab-scroller\n .mdc-tab-scroller {\n @include transition(\n $duration-ms: variables.$transition-duration,\n $query: $query\n );\n\n @include feature-targeting.targets($feat-structure) {\n overflow-y: hidden;\n }\n }\n\n // Selector for test element used to feature-detect horizontal scrollbar height\n .mdc-tab-scroller__test {\n @include feature-targeting.targets($feat-structure) {\n position: absolute;\n top: -9999px;\n width: 100px;\n height: 100px;\n overflow-x: scroll;\n }\n }\n\n .mdc-tab-scroller__scroll-area {\n @include feature-targeting.targets($feat-structure) {\n -webkit-overflow-scrolling: touch;\n display: flex;\n overflow-x: hidden;\n }\n }\n\n .mdc-tab-scroller__scroll-area,\n .mdc-tab-scroller__test {\n @include feature-targeting.targets($feat-structure) {\n &::-webkit-scrollbar {\n display: none;\n }\n }\n }\n\n // This modifier class will be added in JS after computing the OS scrollbar size in order to hide the scrollbar.\n .mdc-tab-scroller__scroll-area--scroll {\n @include feature-targeting.targets($feat-structure) {\n overflow-x: scroll;\n }\n }\n\n .mdc-tab-scroller__scroll-content {\n @include scroll-content_($query);\n }\n\n .mdc-tab-scroller--align-start .mdc-tab-scroller__scroll-content {\n @include feature-targeting.targets($feat-structure) {\n justify-content: flex-start;\n }\n }\n\n .mdc-tab-scroller--align-end .mdc-tab-scroller__scroll-content {\n @include feature-targeting.targets($feat-structure) {\n justify-content: flex-end;\n }\n }\n\n .mdc-tab-scroller--align-center .mdc-tab-scroller__scroll-content {\n @include feature-targeting.targets($feat-structure) {\n justify-content: center;\n }\n }\n\n .mdc-tab-scroller--animating {\n .mdc-tab-scroller__scroll-area {\n @include feature-targeting.targets($feat-animation) {\n -webkit-overflow-scrolling: auto;\n }\n }\n }\n\n // postcss-bem-linter: end\n}\n\n//\n// Private\n//\n\n@mixin scroll-content_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include tab-mixins.parent-positioning($query);\n\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n flex: 1 0 auto;\n transform: none;\n }\n\n @include feature-targeting.targets($feat-animation) {\n will-change: transform;\n }\n}\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern --\n// TODO: document why this disable is neccessary\n\n@use 'sass:list';\n@use 'sass:meta';\n@use '@material/density/functions' as density-functions;\n@use '@material/floating-label/mixins' as floating-label-mixins;\n@use '@material/floating-label/variables' as floating-label-variables;\n@use '@material/line-ripple/mixins' as line-ripple-mixins;\n@use '@material/notched-outline/mixins' as notched-outline-mixins;\n@use '@material/notched-outline/variables' as notched-outline-variables;\n@use '@material/ripple/ripple';\n@use '@material/ripple/ripple-theme';\n@use '@material/theme/custom-properties';\n@use '@material/theme/theme';\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/shape/functions' as shape-functions;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/typography/typography';\n@use 'helper-text/mixins' as helper-text-mixins;\n@use 'character-counter/mixins' as character-counter-mixins;\n@use 'icon/mixins' as icon-mixins;\n@use 'icon/variables' as icon-variables;\n@use './variables';\n@use './functions';\n@use '@material/rtl/mixins' as rtl-mixins;\n\n@mixin core-styles($query: feature-targeting.all()) {\n @include ripple($query);\n @include without-ripple($query);\n @include helper-text-mixins.helper-text-core-styles($query);\n @include character-counter-mixins.character-counter-core-styles($query);\n @include icon-mixins.icon-core-styles($query);\n}\n\n@mixin without-ripple($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // Baseline\n // postcss-bem-linter: define text-field\n .mdc-text-field {\n @include _base($query);\n }\n\n .mdc-text-field__input {\n @include _input($query);\n\n @include placeholder-selector_ {\n @include _input-placeholder($query);\n }\n\n // Always show placeholder for text fields that has no\n // label and show only on focused state when label is present.\n .mdc-text-field--no-label &,\n .mdc-text-field--focused & {\n @include placeholder-selector_ {\n @include _input-placeholder-visible($query);\n }\n }\n }\n\n .mdc-text-field__affix {\n @include _affix($query: $query);\n\n .mdc-text-field--label-floating &,\n .mdc-text-field--no-label & {\n @include _affix-visible($query: $query);\n }\n\n // Safari only\n @supports (-webkit-hyphens: none) {\n .mdc-text-field--outlined & {\n @include _centered-affix-safari-support($query: $query);\n }\n }\n }\n\n .mdc-text-field__affix--prefix {\n @include _prefix($query: $query);\n\n .mdc-text-field--end-aligned & {\n @include _prefix-end-aligned($query: $query);\n }\n }\n\n .mdc-text-field__affix--suffix {\n @include _suffix($query: $query);\n\n .mdc-text-field--end-aligned & {\n @include _suffix-end-aligned($query: $query);\n }\n }\n\n // Variants\n\n .mdc-text-field--filled {\n @include _filled($query);\n\n &.mdc-text-field--no-label {\n @include _filled-no-label($query);\n }\n }\n\n .mdc-text-field--outlined {\n @include outlined_($query);\n\n .mdc-notched-outline {\n @include _outlined-notched-outline($query);\n }\n }\n\n // Other Variations\n\n .mdc-text-field--textarea {\n @include textarea_($query);\n\n .mdc-text-field__input {\n @include _textarea-input($query);\n }\n\n &.mdc-text-field--filled {\n @include _textarea-filled($query);\n\n .mdc-text-field__input {\n @include _textarea-filled-input($query);\n }\n\n &.mdc-text-field--no-label {\n .mdc-text-field__input {\n @include _textarea-filled-no-label-input($query);\n }\n }\n }\n\n &.mdc-text-field--outlined {\n @include _textarea-outlined($query);\n\n .mdc-text-field__input {\n @include _textarea-outlined-input($query);\n }\n\n .mdc-floating-label {\n @include _textarea-outlined-floating-label($query);\n }\n }\n\n &.mdc-text-field--with-internal-counter {\n .mdc-text-field__input {\n @include _textarea-input-with-internal-counter($query);\n }\n\n .mdc-text-field-character-counter {\n @include _textarea-internal-counter($query);\n }\n }\n }\n\n // Resizer element does not need to be under mdc-text-field--textarea, that\n // just adds specificity\n .mdc-text-field__resizer {\n @include _textarea-resizer($query);\n\n .mdc-text-field--filled & {\n @include _textarea-filled-resizer($query);\n\n .mdc-text-field__input,\n .mdc-text-field-character-counter {\n @include _textarea-filled-resizer-children($query);\n }\n }\n\n .mdc-text-field--outlined & {\n @include _textarea-outlined-resizer($query);\n\n .mdc-text-field__input,\n .mdc-text-field-character-counter {\n @include _textarea-outlined-resizer-children($query);\n }\n }\n }\n\n .mdc-text-field--with-leading-icon {\n @include _padding-horizontal-with-leading-icon($query);\n\n &.mdc-text-field--filled {\n @include with-leading-icon_($query);\n }\n\n &.mdc-text-field--outlined {\n @include outlined-with-leading-icon_($query);\n }\n }\n\n .mdc-text-field--with-trailing-icon {\n @include _padding-horizontal-with-trailing-icon($query);\n\n &.mdc-text-field--filled {\n @include _with-trailing-icon($query);\n }\n\n &.mdc-text-field--outlined {\n @include _outlined-with-trailing-icon($query);\n }\n }\n\n .mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon {\n @include _padding-horizontal-with-both-icons($query);\n\n &.mdc-text-field--filled {\n @include _with-leading-and-trailing-icon($query);\n }\n }\n\n // postcss-bem-linter: define text-field-helper-text\n // stylelint-disable plugin/selector-bem-pattern --\n // TODO: document why this disable is neccessary\n .mdc-text-field-helper-line {\n @include feature-targeting.targets($feat-structure) {\n display: flex;\n justify-content: space-between;\n box-sizing: border-box;\n }\n\n .mdc-text-field + & {\n @include feature-targeting.targets($feat-structure) {\n padding-right: variables.$helper-line-padding;\n padding-left: variables.$helper-line-padding;\n }\n }\n }\n // stylelint-enable plugin/selector-bem-pattern\n // postcss-bem-linter: end\n\n // mdc-form-field tweaks to align text field label correctly\n // stylelint-disable selector-max-type --\n // TODO: document why this disable is neccessary\n .mdc-form-field > .mdc-text-field + label {\n @include feature-targeting.targets($feat-structure) {\n align-self: flex-start;\n }\n }\n // stylelint-enable selector-max-type\n\n // States\n .mdc-text-field--focused {\n @include focused_($query);\n\n &.mdc-text-field--outlined {\n @include _focused-outlined($query);\n\n &.mdc-text-field--textarea {\n @include _focused-outlined-textarea($query);\n }\n }\n }\n\n .mdc-text-field--invalid {\n @include invalid_($query);\n }\n\n .mdc-text-field--disabled {\n @include disabled_($query);\n\n &.mdc-text-field--filled {\n @include _disabled-filled($query);\n }\n\n .mdc-text-field__input {\n @include _disabled-input($query);\n }\n }\n\n .mdc-text-field--end-aligned {\n @include end-aligned_($query);\n }\n\n .mdc-text-field--ltr-text {\n @include _ltr-text($query);\n\n &.mdc-text-field--end-aligned {\n @include _ltr-text-end-aligned($query);\n }\n }\n}\n\n// This API is intended for use by frameworks that may want to separate the ripple-related styles\n// from the other text field styles. It is recommended that most users use `mdc-text-field-core-styles` instead.\n@mixin ripple($query: feature-targeting.all()) {\n @include ripple.common($query); // COPYBARA_COMMENT_THIS_LINE\n\n .mdc-text-field--filled {\n @include ripple.surface(\n $query: $query,\n $ripple-target: variables.$ripple-target\n );\n @include ripple.radius-bounded(\n $query: $query,\n $ripple-target: variables.$ripple-target\n );\n }\n\n #{variables.$ripple-target} {\n @include ripple.target-common($query: $query);\n }\n}\n\n///\n/// Sets density scale for default text field variant.\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values `-4`,\n/// `-3`, `-2`, `-1`, `0`. Default is `0`.\n/// @param {Number} $minimum-height-for-filled-label Sets the minimum height for\n/// filled textfields at which to allow floating labels.\n///\n@mixin density(\n $density-scale,\n $minimum-height-for-filled-label: variables.$minimum-height-for-filled-label,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include height(\n $height,\n $minimum-height-for-filled-label: $minimum-height-for-filled-label,\n $query: $query\n );\n // TODO(b/151839219): resize icons and adjust label position\n // @if $density-scale < 0 {\n // @include icon-mixins.size(icon-variables.$dense-icon-size);\n // }\n}\n\n///\n/// Sets density scale for outlined text field (Excluding outlined text field with leading icon).\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values `-4`,\n/// `-3`, `-2`, `-1`, `0`. Default is `0`.\n///\n@mixin outlined-density($density-scale, $query: feature-targeting.all()) {\n $height: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include outlined-height($height, $query: $query);\n // TODO(b/151839219): resize icons and adjust label position\n // @if $density-scale < 0 {\n // @include icon-mixins.size(icon-variables.$dense-icon-size);\n // }\n}\n\n///\n/// Sets density scale for outlined text field with leading icon.\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values `-4`,\n/// `-3`, `-2`, `-1`, `0`. Default is `0`.\n///\n@mixin outlined-with-leading-icon-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n $height: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n @include outlined-with-leading-icon-height($height, $query: $query);\n // TODO(b/151839219): resize icons and adjust label position\n // @if $density-scale < 0 {\n // @include icon-mixins.size(icon-variables.$dense-icon-size);\n // }\n}\n\n///\n/// Sets density scale for filled textarea.\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values `-4`,\n/// `-3`, `-2`, `-1`, `0`. Default is `0`.\n///\n@mixin filled-textarea-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $textfield-height: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n $no-label-margin-top: density-functions.prop-value(\n $density-config: variables.$textarea-filled-no-label-density-config,\n $density-scale: $density-scale / 2,\n $property-name: margin-top,\n );\n $no-label-margin-bottom: density-functions.prop-value(\n $density-config: variables.$textarea-filled-no-label-density-config,\n $density-scale: $density-scale / 2,\n $property-name: margin-bottom,\n );\n\n // Textarea mixins require two modifier classes since two are used internally\n // for styles (textarea and filled). An extra class is added for the public\n // mixin so that only a single public class is needed for specificity.\n &.mdc-text-field--filled {\n .mdc-text-field__resizer {\n @include feature-targeting.targets($feat-structure) {\n min-height: $textfield-height;\n }\n }\n\n @if $density-scale >= -1 {\n $keyframe-suffix: text-field-filled-#{$density-scale};\n $label-top: density-functions.prop-value(\n $density-config: variables.$textarea-filled-label-density-config,\n $density-scale: $density-scale / 2,\n $property-name: top,\n );\n\n // Adjust the floating position and animation/keyframes of the floating\n // label by the new position of the resting label\n $label-top-difference: variables.$textarea-outlined-label-top -\n $label-top;\n\n // Floating label position\n @include floating-label-mixins.float-position(\n variables.$textarea-filled-label-position-y - $label-top-difference,\n $query: $query\n );\n\n // Floating label animation\n @include floating-label-mixins.shake-animation(\n $keyframe-suffix,\n $query: $query\n );\n @at-root {\n @include floating-label-mixins.shake-keyframes(\n $keyframe-suffix,\n variables.$textarea-filled-label-position-y - $label-top-difference,\n 0%,\n $query: $query\n );\n }\n\n // Resting label position\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n top: $label-top;\n }\n }\n\n $margin-bottom: density-functions.prop-value(\n $density-config: variables.$textarea-filled-density-config,\n $density-scale: $density-scale,\n $property-name: margin-bottom,\n );\n\n .mdc-text-field__input {\n @include feature-targeting.targets($feat-structure) {\n margin-bottom: $margin-bottom;\n }\n }\n } @else {\n // The textarea is too dense to show a floating label\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n display: none;\n }\n }\n\n .mdc-text-field__input {\n @include feature-targeting.targets($feat-structure) {\n margin-top: $no-label-margin-top;\n margin-bottom: $no-label-margin-bottom;\n }\n }\n }\n\n &.mdc-text-field--no-label {\n .mdc-text-field__input {\n @include feature-targeting.targets($feat-structure) {\n margin-top: $no-label-margin-top;\n margin-bottom: $no-label-margin-bottom;\n }\n }\n }\n\n &.mdc-text-field--with-internal-counter {\n .mdc-text-field__input {\n // Space between textarea and internal counter should not be affected\n @include _textarea-input-with-internal-counter($query);\n }\n }\n }\n}\n\n///\n/// Sets density scale for outlined textarea.\n///\n/// @param {Number | String} $density-scale - Density scale value for component. Supported density scale values `-4`,\n/// `-3`, `-2`, `-1`, `0`. Default is `0`.\n///\n@mixin outlined-textarea-density(\n $density-scale,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $keyframe-suffix: text-field-outlined-#{$density-scale};\n $label-top: density-functions.prop-value(\n $density-config: variables.$textarea-outlined-label-density-config,\n $density-scale: $density-scale / 2,\n $property-name: top,\n );\n $textfield-height: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n $margin-top: density-functions.prop-value(\n $density-config: variables.$textarea-outlined-density-config,\n $density-scale: $density-scale / 2,\n $property-name: margin-top,\n );\n $margin-bottom: density-functions.prop-value(\n $density-config: variables.$textarea-outlined-density-config,\n $density-scale: $density-scale / 2,\n $property-name: margin-bottom,\n );\n\n // Textarea mixins require two modifier classes since two are used internally\n // for styles (textarea and outlined). An extra class is added for the public\n // mixin so that only a single public class is needed for specificity.\n &.mdc-text-field--outlined {\n // Adjust the floating position and animation/keyframes of the floating\n // label by the new position of the resting label\n $label-top-difference: variables.$textarea-outlined-label-top - $label-top;\n\n // Floating label position\n @include notched-outline-mixins.floating-label-float-position-absolute(\n variables.$textarea-outlined-label-position-y - $label-top-difference,\n $query: $query\n );\n\n // Floating label animation\n @include floating-label-mixins.shake-animation(\n $keyframe-suffix,\n $query: $query\n );\n @at-root {\n @include floating-label-mixins.shake-keyframes(\n $keyframe-suffix,\n variables.$textarea-outlined-label-position-y - $label-top-difference,\n 0%,\n $query: $query\n );\n }\n\n // Resting label position\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n top: $label-top;\n }\n }\n\n .mdc-text-field__resizer {\n @include feature-targeting.targets($feat-structure) {\n min-height: $textfield-height;\n }\n }\n\n .mdc-text-field__input {\n @include feature-targeting.targets($feat-structure) {\n margin-top: $margin-top;\n margin-bottom: $margin-bottom;\n }\n }\n\n &.mdc-text-field--with-internal-counter {\n .mdc-text-field__input {\n // Space between textarea and internal counter should not be affected\n @include _textarea-input-with-internal-counter($query);\n }\n }\n }\n}\n\n///\n/// Sets the minimum number of rows for a textarea a textarea may be resized to.\n///\n/// For IE11 this mixin can be used instead of the rows attribute.\n///\n/// @param {Number} $rows - The minimum number of rows for a textarea.\n/// @param {Number} $line-height - The line-height of the textarea.\n///\n@mixin textarea-min-rows(\n $rows,\n $line-height: variables.$textarea-line-height,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-text-field__input {\n @include feature-targeting.targets($feat-structure) {\n min-height: $rows * $line-height;\n }\n }\n}\n\n///\n/// Sets height of default text field variant.\n///\n/// @param {Number} $height\n/// @param {Number} $minimum-height-for-filled-label Sets the minimum height for\n/// filled textfields at which to allow floating labels.\n/// @access public\n///\n@mixin height(\n $height,\n $minimum-height-for-filled-label: variables.$minimum-height-for-filled-label,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n\n @if $height < $minimum-height-for-filled-label {\n @include _filled-no-label($query: $query);\n }\n}\n\n///\n/// Sets height of outlined text field variant (Excluding outlined text field with leading icon).\n///\n/// @param {Number} $height\n/// @param {String} $keyframe-suffix - Optional suffix to use for generated\n/// floating label keyframes\n/// @access public\n///\n@mixin outlined-height(\n $height,\n $keyframe-suffix: text-field-outlined-#{$height},\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $positionY: variables.get-outlined-label-position-y($height);\n\n // Floating label position\n @include notched-outline-mixins.floating-label-float-position-absolute(\n $positionY,\n $query: $query\n );\n\n // Floating label animation\n @include floating-label-mixins.shake-animation(\n $keyframe-suffix,\n $query: $query\n );\n @at-root {\n @include floating-label-mixins.shake-keyframes(\n $keyframe-suffix,\n $positionY,\n $query: $query\n );\n }\n\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n}\n\n///\n/// Sets height of outlined text field with leading icon variant.\n///\n/// @param {Number} $height\n/// @param {String} $keyframe-suffix - Optional suffix to use for generated\n/// floating label keyframes\n/// @access public\n///\n@mixin outlined-with-leading-icon-height(\n $height,\n $keyframe-suffix: null,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // This extra specificity is needed because textfield applies the below mixin\n // already to two selectors (outlined + with-leading-icon). To override\n // them with a new label position and animation, another selector is needed.\n &.mdc-text-field--outlined {\n @include _outlined-with-leading-icon-floating-label-position-animation(\n $height,\n $keyframe-suffix,\n $query\n );\n }\n\n @include feature-targeting.targets($feat-structure) {\n height: $height;\n }\n}\n\n// Mixin that sets the floating label position and animations for a given height.\n// This mixin is separate to allow outlined-with-leading-icon-height() to\n// provide greater specificity over the default mixin that adds styles for\n// outlined with leading icons.\n@mixin _outlined-with-leading-icon-floating-label-position-animation(\n $height,\n $keyframe-suffix: text-field-outlined-with-leading-icon-#{$height},\n $query: feature-targeting.all()\n) {\n $positionY: variables.get-outlined-label-position-y($height);\n\n // Floating label position\n @include notched-outline-mixins.floating-label-float-position-absolute(\n $positionY,\n variables.$outlined-with-leading-icon-label-position-x,\n $query: $query\n );\n\n // Floating label animation\n @include floating-label-mixins.shake-animation(\n $keyframe-suffix,\n $query: $query\n );\n @at-root {\n @include floating-label-mixins.shake-keyframes(\n $keyframe-suffix,\n $positionY,\n variables.$outlined-with-leading-icon-label-position-x,\n $query: $query\n );\n }\n\n $keyframe-suffix-rtl: #{$keyframe-suffix}-rtl;\n @include rtl-mixins.rtl {\n @include floating-label-mixins.shake-animation(\n $keyframe-suffix,\n $query: $query\n );\n }\n @at-root {\n @include floating-label-mixins.shake-keyframes(\n $keyframe-suffix-rtl,\n $positionY,\n -(variables.$outlined-with-leading-icon-label-position-x),\n $query: $query\n );\n }\n}\n\n///\n/// Sets shape radius of default text field variant.\n///\n/// @param {Number} $radius Shape radius value in `px` or in percentage.\n/// @param {Number} $text-field-height Height of default text field variant. Required only when `$radius` is in\n/// percentage unit and if text field has custom height. Defaults to `variables.$height`.\n/// @param {Boolean} $rtl-reflexive Set to true to flip shape radius in RTL context. Defaults to `false`.\n///\n@mixin shape-radius(\n $radius,\n $density-scale: variables.$density-scale,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n @if meta.type-of($radius) == 'list' and list.length($radius) > 2 {\n @error \"mdc-textfield: Invalid radius #{$radius}. Only top-left and top-right corners may be customized.\";\n }\n\n $height: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n $masked-radius: shape-functions.mask-radius($radius, 1 1 0 0);\n\n @include shape-mixins.radius(\n $masked-radius,\n $rtl-reflexive,\n $component-height: $height,\n $query: $query\n );\n}\n\n@mixin textarea-shape-radius(\n $radius,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n @include notched-outline-mixins.shape-radius(\n $radius,\n $rtl-reflexive,\n $query: $query\n );\n}\n\n///\n/// Customizes the color of the text entered into an enabled text field.\n/// @param {Color} $color - The desired input text color.\n///\n@mixin ink-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include ink-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the color of the entered text in a disabled text field.\n/// @param {Color} $color - The desired input text color.\n///\n@mixin disabled-ink-color($color, $query: feature-targeting.all()) {\n @include if-disabled_ {\n @include ink-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the color of the placeholder in an enabled text field.\n/// @param {Color} $color - The desired placeholder text color.\n///\n@mixin placeholder-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include placeholder-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the color of the placeholder in a disabled text field.\n/// @param {Color} $color - The desired placeholder text color.\n///\n@mixin disabled-placeholder-color($color, $query: feature-targeting.all()) {\n @include if-disabled_ {\n @include placeholder-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the background color of the text field or textarea when enabled.\n/// @param {Color} $color - The desired background color.\n///\n@mixin fill-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include fill-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the background color of the text field or textarea when disabled.\n/// @param {Color} $color - The desired background color.\n///\n@mixin disabled-fill-color($color, $query: feature-targeting.all()) {\n @include if-disabled_ {\n @include fill-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the text field bottom line color for the filled variant.\n/// @param {Color} $color - The desired bottom line color.\n///\n@mixin bottom-line-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include bottom-line-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the disabled text field bottom line color for the filled variant.\n/// @param {Color} $color - The desired bottom line color.\n///\n@mixin disabled-bottom-line-color($color, $query: feature-targeting.all()) {\n @include if-disabled_ {\n @include bottom-line-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the hover text field bottom line color for the filled variant.\n/// @param {Color} $color - The desired bottom line color.\n///\n@mixin hover-bottom-line-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include hover-bottom-line-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the color of the default line ripple of the text field.\n/// @param {Color} $color - The desired line ripple color.\n///\n@mixin line-ripple-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include line-ripple-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the text color of the label in an enabled text field.\n/// @param {Color} $color - The desired label text color.\n///\n@mixin label-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include label-ink-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the text color of the label in a disabled text field.\n/// @param {Color} $color - The desired label text color.\n///\n@mixin disabled-label-color($color, $query: feature-targeting.all()) {\n @include if-disabled_ {\n @include label-ink-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the border color of the outlined text field or textarea.\n/// @param {Color} $color - The desired outline border color.\n///\n@mixin outline-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include notched-outline-mixins.color($color, $query: $query);\n }\n}\n\n///\n/// Customizes the outline border color when the text field or textarea is hovered.\n/// @param {Color} $color - The desired outline border color.\n///\n@mixin hover-outline-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include hover-outline-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the outline border color when the text field or textarea is focused.\n/// @param {Color} $color - The desired outline border color.\n///\n@mixin focused-outline-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include focused-outline-color_($color, $query: $query);\n }\n}\n\n///\n/// Customizes the outline border color when the text field or textarea is disabled.\n/// @param {Color} $color - The desired outline border color.\n///\n@mixin disabled-outline-color($color, $query: feature-targeting.all()) {\n @include if-disabled_ {\n @include notched-outline-mixins.color($color, $query: $query);\n }\n}\n\n///\n/// Customizes the caret color of the text field or textarea.\n/// @param {Color} $color - The desired caret color.\n///\n@mixin caret-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-text-field__input {\n @include feature-targeting.targets($feat-color) {\n @include theme.prop(caret-color, $color);\n }\n }\n}\n\n///\n/// Customizes the color of the prefix text for an enabled text field.\n/// @param {Color} $color - The desired prefix text color.\n///\n@mixin prefix-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include _prefix-color($color, $query: $query);\n }\n}\n\n///\n/// Customizes the color of the prefix text for a disabled text field.\n/// @param {Color} $color - The desired prefix text color.\n///\n@mixin disabled-prefix-color($color, $query: feature-targeting.all()) {\n @include if-disabled_ {\n @include _prefix-color($color, $query: $query);\n }\n}\n\n///\n/// Customizes the color of the suffix text for an enabled text field.\n/// @param {Color} $color - The desired suffix text color.\n///\n@mixin suffix-color($color, $query: feature-targeting.all()) {\n @include if-enabled_ {\n @include _suffix-color($color, $query: $query);\n }\n}\n\n///\n/// Customizes the color of the suffix text for a disabled text field.\n/// @param {Color} $color - The desired suffix text color.\n///\n@mixin disabled-suffix-color($color, $query: feature-targeting.all()) {\n @include if-disabled_ {\n @include _suffix-color($color, $query: $query);\n }\n}\n\n///\n/// Sets shape radius of outlined text field variant.\n///\n/// @param {Number} $radius Shape radius value in `px` or in percentage.\n/// @param {Number} $text-field-height Height of outlined text field variant. Required only when `$radius` is in\n/// percentage unit and if text field has custom height. Defaults to `variables.$height`.\n/// @param {Boolean} $rtl-reflexive Set to true to flip shape radius in RTL context. Defaults to `false`.\n///\n@mixin outline-shape-radius(\n $radius,\n $density-scale: variables.$density-scale,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $height: density-functions.prop-value(\n $density-config: variables.$density-config,\n $density-scale: $density-scale,\n $property-name: height,\n );\n\n .mdc-notched-outline {\n @include notched-outline-mixins.shape-radius(\n $radius,\n $rtl-reflexive,\n $component-height: $height,\n $query: $query\n );\n }\n\n $resolved-radius: shape-functions.resolve-radius(\n $radius,\n $component-height: $height\n );\n $unpacked-radius: shape-functions.unpack-radius($resolved-radius);\n $top-left-radius: list.nth($unpacked-radius, 1);\n $top-left-is-custom-prop: custom-properties.is-custom-prop($top-left-radius);\n $top-left-radius-px: $top-left-radius;\n @if ($top-left-is-custom-prop) {\n $top-left-radius-px: custom-properties.get-fallback($top-left-radius);\n }\n $top-right-radius: list.nth($unpacked-radius, 2);\n $top-right-is-custom-prop: custom-properties.is-custom-prop(\n $top-right-radius\n );\n\n @if (\n $top-left-is-custom-prop or\n $top-right-is-custom-prop or\n $top-left-radius-px >\n notched-outline-variables.$leading-width\n ) {\n // The horizontal padding only needs to be overriden from the base padding\n // if the radius is a custom property, or if the top-left radius is a value\n // that is large than that default notched outline's leading width.\n @include _outline-shape-radius-horizontal-padding(\n $top-left-radius,\n $top-right-radius,\n $query: $query\n );\n\n + .mdc-text-field-helper-line {\n @include _outline-shape-radius-horizontal-padding(\n $top-left-radius,\n $top-right-radius,\n $query: $query\n );\n }\n\n // Ensure that leading/trailing icon padding is overriden. Even if the\n // top left/right isn't a custom property or the leading isn't larger, we\n // still need to override. The above left/right padding rules have more\n // specificty than the original leading/trailing icon rules, so we need to\n // re-apply them.\n // Additionally, if the top left/right radii _are_ custom properties, we\n // should use those instead.\n\n &.mdc-text-field--with-leading-icon {\n @if ($top-right-is-custom-prop) {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n padding-left: 0;\n }\n @include _apply-outline-shape-padding(\n padding-right,\n $top-right-radius,\n $query: $query\n );\n\n @include rtl-mixins.rtl {\n @include _apply-outline-shape-padding(\n padding-left,\n $top-right-radius,\n $query: $query\n );\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n padding-right: 0;\n }\n }\n } @else {\n @include _padding-horizontal-with-leading-icon($query);\n }\n }\n\n &.mdc-text-field--with-trailing-icon {\n @if (\n $top-left-is-custom-prop or\n $top-left-radius-px >\n notched-outline-variables.$leading-width\n ) {\n @include _apply-outline-shape-padding(\n padding-left,\n $top-left-radius,\n $add-label-padding: true,\n $query: $query\n );\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n padding-right: 0;\n }\n\n @include rtl-mixins.rtl {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n padding-left: 0;\n }\n @include _apply-outline-shape-padding(\n padding-right,\n $top-left-radius,\n $add-label-padding: true,\n $query: $query\n );\n }\n } @else {\n @include _padding-horizontal-with-trailing-icon($query);\n }\n }\n\n &.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon {\n @include _padding-horizontal-with-both-icons($query);\n }\n }\n}\n\n@mixin _outline-shape-radius-horizontal-padding(\n $top-left-radius,\n $top-right-radius,\n $query: feature-targeting.all()\n) {\n @include _apply-outline-shape-padding(\n padding-left,\n $top-left-radius,\n $add-label-padding: true,\n $query: $query\n );\n @include _apply-outline-shape-padding(\n padding-right,\n $top-right-radius,\n $query: $query\n );\n\n $top-left-is-custom-prop: custom-properties.is-custom-prop($top-left-radius);\n $top-left-radius-px: $top-left-radius;\n @if ($top-left-is-custom-prop) {\n $top-left-radius-px: custom-properties.get-fallback($top-left-radius);\n }\n $top-right-is-custom-prop: custom-properties.is-custom-prop(\n $top-right-radius\n );\n $top-right-radius-px: $top-right-radius;\n @if ($top-right-is-custom-prop) {\n $top-right-radius-px: custom-properties.get-fallback($top-right-radius);\n }\n\n @if (\n (\n $top-left-is-custom-prop and\n $top-right-is-custom-prop and not\n custom-properties.are-equal($top-left-radius, $top-right-radius)\n ) or\n $top-left-radius-px !=\n $top-right-radius-px\n ) {\n // Normally base horizontal padding doesn't need RTL, but if the values\n // are different or they are two different custom properties, they need to\n // be reversed.\n @include rtl-mixins.rtl {\n @include _apply-outline-shape-padding(\n padding-right,\n $top-left-radius,\n $add-label-padding: true,\n $query: $query\n );\n @include _apply-outline-shape-padding(\n padding-left,\n $top-right-radius,\n $query: $query\n );\n }\n }\n}\n\n@mixin _apply-outline-shape-padding(\n $property,\n $padding,\n $add-label-padding: false,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $padding-is-custom-prop: custom-properties.is-custom-prop($padding);\n $padding-px: $padding;\n @if ($padding-is-custom-prop) {\n $padding-px: custom-properties.get-fallback($padding);\n }\n\n @include feature-targeting.targets($feat-structure) {\n // The shape should only change the padding if the radius becomes greater\n // than the default padding. That means we need to add more padding.\n @if ($padding-px > variables.$padding-horizontal) {\n // Set a px value if it's greater. This is either the only value (if\n // we're given an exact value), or an IE11 fallback if we're given a\n // custom property and the fallback value is greater than the padding.\n $value: $padding-px;\n @if ($add-label-padding) {\n // If this is for the top-left leading, add the notched outline padding\n // to keep it aligned with the label\n $value: $padding-px + notched-outline-variables.$padding;\n }\n\n /* @noflip */\n #{$property}: $value;\n @if ($padding-is-custom-prop) {\n // Add an alternate GSS tag b/c this was an IE11 fallback and we're\n // going to add another property with the var() value\n /* @alternate */\n }\n }\n @if ($padding-is-custom-prop) {\n // If it's a custom property, always add it since the value may change\n // to be greater than the padding at runtime, even if the fallback is\n // not currently greater than the default padding.\n $value: custom-properties.create-var($padding);\n @if ($add-label-padding) {\n $value: calc(#{$value} + #{notched-outline-variables.$padding});\n }\n\n @supports (top: max(0%)) {\n // A max() function makes this runtime dynamic. The padding will be\n // whichever is greater: the default horizontal padding, or the calculated\n // custom property plus extra padding.\n /* @noflip */\n #{$property}: max(#{variables.$padding-horizontal}, #{$value});\n }\n }\n }\n}\n\n///\n/// Sets the CSS transition for the floating label's 'float' animation.\n///\n/// @param {Number} $duration-ms - Duration (in ms) of the animation.\n/// @param {String} $timing-function - Optionally overrides the default animation timing function.\n///\n@mixin floating-label-float-transition(\n $duration-ms,\n $timing-function: null,\n $query: feature-targeting.all()\n) {\n .mdc-floating-label {\n @include floating-label-mixins.float-transition(\n $duration-ms,\n $timing-function,\n $query: $query\n );\n }\n}\n\n// Private mixins\n\n// Base shared styles\n@mixin _base($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // Shape\n @include shape-radius(variables.$shape-radius, $query: $query);\n\n // Colors\n @include label-color(variables.$label, $query: $query);\n @include ink-color(variables.$ink-color, $query: $query);\n @include placeholder-color(variables.$placeholder-ink-color, $query: $query);\n @include caret-color(primary, $query: $query);\n @include helper-text-mixins.helper-text-color(\n variables.$helper-text-color,\n $query: $query\n );\n @include character-counter-mixins.character-counter-color(\n variables.$helper-text-color,\n $query: $query\n );\n @include icon-mixins.leading-icon-color(\n variables.$icon-color,\n $query: $query\n );\n @include icon-mixins.trailing-icon-color(\n variables.$icon-color,\n $query: $query\n );\n @include prefix-color(variables.$affix-color, $query: $query);\n @include suffix-color(variables.$affix-color, $query: $query);\n\n // Floating Label\n @include floating-label_($query);\n\n @include feature-targeting.targets($feat-structure) {\n // display and align-items are necessary to make the text field participate\n // in baseline alignment, even though some variants are 'centered'. Those\n // variants should use the _baseline-center-aligned() mixin\n display: inline-flex;\n align-items: baseline;\n padding: 0 variables.$padding-horizontal;\n position: relative;\n box-sizing: border-box;\n overflow: hidden;\n /* @alternate */\n will-change: opacity, transform, color;\n }\n}\n\n// This mixin adds styles to visually center the text within the text field.\n// Sibling text will align to the baseline and appear centered next to the\n// text field.\n@mixin _baseline-center-aligned($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n // In order for a flexbox container to participate in baseline alignment,\n // it follows these rules to determine where its baseline is:\n // https://www.w3.org/TR/css-flexbox-1/#flex-baselines\n //\n // In order to avoid leading icons 'controlling' the baseline (since they\n // are the first child), flexbox will generate a baseline from any child\n // flex items that participate in baseline alignment.\n //\n // Icons are set to \"align-self: center\", while all other children are\n // aligned to baseline. The next problem is deciding which child is\n // used to determine the baseline.\n //\n // According to spec, the item with the largest distance between its\n // baseline and the edge of the cross axis is placed flush with that edge,\n // making it the baseline of the container.\n // https://www.w3.org/TR/css-flexbox-1/#baseline-participation\n //\n // For the filled variant, the pseudo ::before strut is the 'largest'\n // child since the input has a height of 28px and the strut is 40px. We\n // can emulate center alignment and force the baseline to use the input\n // text by making the input the full height of the container and removing\n // the baseline strut.\n\n // IE11 does not respect this, and makes the leading icon (if present) the\n // baseline. This is a gap with IE11 that we have accepted.\n .mdc-text-field__input {\n height: 100%;\n }\n }\n}\n\n@mixin _padding-horizontal-with-leading-icon($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n padding,\n 0,\n variables.$padding-horizontal\n );\n }\n}\n\n@mixin _padding-horizontal-with-trailing-icon($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n padding,\n variables.$padding-horizontal,\n 0\n );\n }\n}\n\n@mixin _padding-horizontal-with-both-icons($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: 0;\n }\n}\n\n@mixin floating-label_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n top: 50%;\n transform: translateY(-50%);\n pointer-events: none;\n }\n }\n}\n\n// Filled\n\n@mixin _filled($query: feature-targeting.all()) {\n // Text Field intentionally omits press ripple, so each state needs to be specified individually.\n @include ripple-theme.states-base-color(\n variables.$ink-color,\n $query: $query,\n $ripple-target: variables.$ripple-target\n );\n @include ripple-theme.states-hover-opacity(\n ripple-theme.states-opacity(variables.$ink-color, hover),\n $query: $query,\n $ripple-target: variables.$ripple-target\n );\n @include ripple-theme.states-focus-opacity(\n ripple-theme.states-opacity(variables.$ink-color, focus),\n $query: $query,\n $ripple-target: variables.$ripple-target\n );\n\n @include height(variables.$height, $query: $query);\n @include typography.baseline-top(\n variables.$filled-baseline-top,\n $query: $query\n );\n @include fill-color(variables.$background, $query: $query);\n @include bottom-line-color(variables.$bottom-line-idle, $query: $query);\n @include hover-bottom-line-color(\n variables.$bottom-line-hover,\n $query: $query\n );\n @include line-ripple-color_(primary, $query: $query);\n @include _filled-floating-label($query);\n}\n\n@mixin _filled-floating-label($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(left, variables.$label-offset);\n }\n }\n\n @include floating-label-mixins.float-position(\n variables.$label-position-y,\n $query: $query\n );\n}\n\n// Filled variant with no label. This variant centers the text elements and\n// hides the label and is used with there is explicitly no label provided or\n// when the height of the text field is too small for a label to be allowed.\n@mixin _filled-no-label($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include _baseline-center-aligned($query);\n @include feature-targeting.targets($feat-structure) {\n .mdc-floating-label {\n display: none;\n }\n\n &::before {\n // Remove baseline-top strut\n display: none;\n }\n }\n\n // Safari only\n @supports (-webkit-hyphens: none) {\n .mdc-text-field__affix {\n @include _centered-affix-safari-support($query: $query);\n }\n }\n}\n\n// Outlined\n\n@mixin outlined_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include outlined-height(\n $height: variables.$height,\n $keyframe-suffix: text-field-outlined,\n $query: $query\n );\n @include _baseline-center-aligned($query: $query);\n @include outline-color(variables.$outlined-idle-border, $query: $query);\n @include hover-outline-color(\n variables.$outlined-hover-border,\n $query: $query\n );\n @include focused-outline-color(primary, $query: $query);\n @include outline-shape-radius(variables.$shape-radius, $query: $query);\n @include notched-outline-mixins.notch-offset(\n notched-outline-variables.$border-width,\n $query: $query\n );\n @include ripple-theme.states-base-color(\n transparent,\n $query: $query,\n $ripple-target: variables.$ripple-target\n );\n @include _outlined-floating-label($query);\n\n @include feature-targeting.targets($feat-structure) {\n overflow: visible;\n }\n\n .mdc-text-field__input {\n @include feature-targeting.targets($feat-structure) {\n // TODO(b/154349735): Investigate the neccessity of these styles\n display: flex;\n border: none !important; // FF adds unwanted border in HC mode on windows.\n background-color: transparent;\n }\n }\n}\n\n@mixin _outlined-floating-label($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(\n left,\n notched-outline-variables.$padding\n );\n }\n }\n}\n\n@mixin _outlined-notched-outline($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n // Force the outline to appear \"above\" the textfield elements, even though\n // it is absolutely positioned and comes before the input in the DOM. This\n // is primarily for the textarea scrollbar and resize elements, which may\n // clip with with outline border.\n z-index: 1;\n }\n}\n\n// States\n\n@mixin disabled_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include ink-color_(variables.$disabled-ink-color, $query: $query);\n @include placeholder-color_(\n variables.$disabled-placeholder-ink-color,\n $query: $query\n );\n @include label-ink-color_(variables.$disabled-label-color, $query: $query);\n @include helper-text-mixins.helper-text-color_(\n variables.$disabled-helper-text-color,\n $query: $query\n );\n @include character-counter-mixins.character-counter-color_(\n variables.$disabled-helper-text-color,\n $query: $query\n );\n @include icon-mixins.leading-icon-color_(\n variables.$disabled-icon,\n $query: $query\n );\n @include icon-mixins.trailing-icon-color_(\n variables.$disabled-icon,\n $query: $query\n );\n @include _prefix-color(variables.$disabled-affix-color, $query: $query);\n @include _suffix-color(variables.$disabled-affix-color, $query: $query);\n\n // Mixins that are ok to include since they target variant-specific elements\n @include bottom-line-color_(variables.$disabled-border, $query: $query);\n @include notched-outline-mixins.color(\n variables.$outlined-disabled-border,\n $query: $query\n );\n\n @media screen and (-ms-high-contrast: active) {\n @include placeholder-color_(GrayText, $query: $query);\n @include label-ink-color_(GrayText, $query: $query);\n @include helper-text-mixins.helper-text-color_(GrayText, $query: $query);\n @include character-counter-mixins.character-counter-color_(\n GrayText,\n $query: $query\n );\n @include icon-mixins.leading-icon-color_(GrayText, $query: $query);\n @include icon-mixins.trailing-icon-color_(GrayText, $query: $query);\n @include _prefix-color(GrayText, $query: $query);\n @include _suffix-color(GrayText, $query: $query);\n\n // Mixins that are ok to include since they target variant-specific elements\n @include bottom-line-color_(GrayText, $query: $query);\n @include notched-outline-mixins.color(GrayText, $query: $query);\n }\n\n @include feature-targeting.targets($feat-structure) {\n pointer-events: none;\n }\n\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n cursor: default;\n }\n }\n}\n\n@mixin _disabled-input($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n // disabled inputs should still allow users to interact with them to select\n // text and scroll for textareas\n pointer-events: auto;\n }\n}\n\n@mixin _disabled-filled($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include fill-color_(variables.$disabled-background, $query: $query);\n\n #{variables.$ripple-target} {\n @include feature-targeting.targets($feat-structure) {\n // prevent ripple from displaying on hover when some interactible\n // elements like input and resize handles are hovered\n display: none;\n }\n }\n}\n\n@mixin invalid_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include hover-bottom-line-color(variables.$error, $query: $query);\n @include line-ripple-color(variables.$error, $query: $query);\n @include label-color(variables.$error, $query: $query);\n @include helper-text-mixins.helper-text-validation-color(\n variables.$error,\n $query: $query\n );\n @include caret-color(variables.$error, $query: $query);\n @include icon-mixins.trailing-icon-color(variables.$error, $query: $query);\n\n // Mixins that are ok to include since they target variant-specific elements\n @include bottom-line-color(variables.$error, $query: $query);\n @include outline-color(variables.$error, $query: $query);\n @include hover-outline-color(variables.$error, $query: $query);\n @include focused-outline-color(variables.$error, $query: $query);\n\n + .mdc-text-field-helper-line .mdc-text-field-helper-text--validation-msg {\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n }\n}\n\n@mixin focused_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include label-color(variables.$focused-label-color, $query: $query);\n\n // Mixins that are ok to include since they target variant-specific elements\n @include notched-outline-mixins.stroke-width(\n variables.$outlined-stroke-width,\n $query: $query\n );\n\n + .mdc-text-field-helper-line\n .mdc-text-field-helper-text:not(.mdc-text-field-helper-text--validation-msg) {\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n }\n}\n\n@mixin _focused-outlined($query: feature-targeting.all()) {\n @include notched-outline-mixins.notch-offset(\n variables.$outlined-stroke-width,\n $query: $query\n );\n}\n\n@mixin _focused-outlined-textarea($query: feature-targeting.all()) {\n @include notched-outline-mixins.notch-offset(0, $query: $query);\n}\n\n// Icons\n\n@mixin with-leading-icon_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n $icon-padding: icon-variables.$leading-icon-padding-left +\n icon-variables.$icon-size + icon-variables.$leading-icon-padding-right;\n\n .mdc-floating-label {\n @include _truncate-floating-label-max-width($icon-padding, $query: $query);\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(left, $icon-padding);\n }\n }\n\n $truncation: $icon-padding + variables.$padding-horizontal;\n\n .mdc-floating-label--float-above {\n @include _truncate-floating-label-floated-max-width(\n $truncation,\n $query: $query\n );\n }\n}\n\n@mixin _with-trailing-icon($query: feature-targeting.all()) {\n $truncation: icon-variables.$trailing-icon-padding-left +\n icon-variables.$icon-size + icon-variables.$trailing-icon-padding-right +\n variables.$label-offset;\n\n .mdc-floating-label {\n @include _truncate-floating-label-max-width($truncation, $query: $query);\n }\n\n .mdc-floating-label--float-above {\n @include _truncate-floating-label-floated-max-width(\n $truncation,\n $query: $query\n );\n }\n}\n\n@mixin _with-leading-and-trailing-icon($query: feature-targeting.all()) {\n $leading-icon: icon-variables.$leading-icon-padding-left +\n icon-variables.$icon-size + icon-variables.$leading-icon-padding-right;\n $trailing-icon: icon-variables.$trailing-icon-padding-left +\n icon-variables.$icon-size + icon-variables.$trailing-icon-padding-right;\n $truncation: $leading-icon + $trailing-icon;\n\n .mdc-floating-label {\n @include _truncate-floating-label-max-width($truncation, $query: $query);\n }\n\n .mdc-floating-label--float-above {\n @include _truncate-floating-label-floated-max-width(\n $truncation,\n $query: $query\n );\n }\n}\n\n@mixin outlined-with-leading-icon_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // Resting label position\n $icon-padding: icon-variables.$leading-icon-padding-left +\n icon-variables.$icon-size + icon-variables.$leading-icon-padding-right;\n $left-spacing: $icon-padding - notched-outline-variables.$leading-width;\n\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(left, $left-spacing);\n }\n }\n\n // Notch width\n $notch-truncation: $icon-padding + notched-outline-variables.$leading-width;\n @include _truncate-notched-outline-max-width(\n $notch-truncation,\n $query: $query\n );\n\n // Floating label position and animation\n @include _outlined-with-leading-icon-floating-label-position-animation(\n $height: variables.$height,\n $keyframe-suffix: text-field-outlined-leading-icon,\n $query: $query\n );\n}\n\n///\n/// Applied to the outlined text field with a trailing icon\n///\n@mixin _outlined-with-trailing-icon($query: feature-targeting.all()) {\n // Resting label position\n $icon-padding: icon-variables.$trailing-icon-padding-left +\n icon-variables.$icon-size + icon-variables.$trailing-icon-padding-right;\n // Notch width\n $notch-truncation: $icon-padding + notched-outline-variables.$leading-width;\n\n @include _truncate-notched-outline-max-width(\n $notch-truncation,\n $query: $query\n );\n}\n\n///\n/// Truncates the max-width of the notched outline by the given amount\n///\n/// @param {Number} $truncation - Amount to truncate the notched outline max-width\n///\n@mixin _truncate-notched-outline-max-width(\n $truncation,\n $query: feature-targeting.all()\n) {\n @include notched-outline-mixins.notch-max-width(\n calc(100% - #{$truncation}),\n $query: $query\n );\n}\n\n///\n/// Truncates the max-width of the floating label by the given amount\n///\n/// @param {Number} $truncation - Amount to truncate the floating label max-width\n///\n@mixin _truncate-floating-label-max-width(\n $truncation,\n $query: feature-targeting.all()\n) {\n @include floating-label-mixins.max-width(\n calc(100% - #{$truncation}),\n $query: $query\n );\n}\n\n///\n/// Truncates the max-width of the floating label by the given amount while scaling by the given scale value\n///\n/// @param {Number} $truncation - Amount to truncate the floating label max-width\n///\n@mixin _truncate-floating-label-floated-max-width(\n $truncation,\n $query: feature-targeting.all()\n) {\n $scale: floating-label-variables.$float-scale;\n @include floating-label-mixins.max-width(\n calc(100% / #{$scale} - #{$truncation} / #{$scale}),\n $query: $query\n );\n}\n\n// Textarea\n\n@mixin textarea_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include _textarea-floating-label($query);\n\n @include feature-targeting.targets($feat-structure) {\n flex-direction: column;\n align-items: center;\n width: auto;\n height: auto;\n padding: 0; // see below for explanation\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: none;\n }\n}\n\n@mixin _textarea-resizer($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n align-self: stretch;\n display: inline-flex;\n flex-direction: column;\n flex-grow: 1;\n max-height: 100%;\n max-width: 100%;\n min-height: variables.$height;\n // stylelint-disable declaration-block-no-duplicate-properties --\n // TODO: document why this disable is neccessary\n\n // 'stretch' is the preferred rule here. It will allow the textarea to grow\n // to the min/max width of the container, but if an explicit width is set,\n // it cannot be resized horizontally.\n // Stretch is still a working draft. Chrome and Firefox have it implemented\n // with 'available' prefixes. fit-content is another good target for\n // Safari since it works in almost all use cases except when an explicit\n // width is set (the user can make the textarea smaller than the container).\n // None of this matters for IE11, which doesn't support resize.\n min-width: fit-content;\n /* @alternate */\n min-width: -moz-available;\n /* @alternate */\n min-width: -webkit-fill-available;\n // stylelint-enable declaration-block-no-duplicate-properties\n overflow: hidden;\n resize: both;\n }\n}\n\n@mixin _textarea-filled-resizer($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n // Shift the resizer element up by a margin amount to make space for the\n // resize handle. For filled elements, the resize handle directly touches\n // the bottom line and is hard to see.\n // Using a margin affects the width and positioning of the overall component\n // and underlying textarea, which is why a transform is used instead.\n $y: -1 * variables.$textarea-input-handle-margin;\n\n @include feature-targeting.targets($feat-structure) {\n transform: translateY($y);\n }\n}\n\n@mixin _textarea-filled-resizer-children($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n // See above. After shifting the resize wrapper element, all of its children\n // should be shifted in the opposite direction (down) to compensate.\n $y: variables.$textarea-input-handle-margin;\n\n @include feature-targeting.targets($feat-structure) {\n transform: translateY($y);\n }\n}\n\n@mixin _textarea-outlined-resizer($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n // Shift the resizer element left/up by a margin amount to make space for the\n // resize handle. For outlined elements, the resize handle directly touches\n // the outline and is hard to see.\n // Using a margin affects the width and positioning of the overall component\n // and underlying textarea, which is why a transform is used instead.\n $x: -1 * variables.$textarea-input-handle-margin;\n $y: -1 * variables.$textarea-input-handle-margin;\n\n @include feature-targeting.targets($feat-structure) {\n transform: translateX($x) translateY($y);\n\n @include rtl-mixins.rtl {\n // Flip the horizontal shifting direction for RTL\n transform: translateX(-1 * $x) translateY($y);\n }\n }\n}\n\n@mixin _textarea-outlined-resizer-children($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n // See above. After shifting the resize wrapper element, all of its children\n // should be shifted in the opposite direction (right and down) to compensate.\n $x: variables.$textarea-input-handle-margin;\n $y: variables.$textarea-input-handle-margin;\n\n @include feature-targeting.targets($feat-structure) {\n transform: translateX($x) translateY($y);\n\n @include rtl-mixins.rtl {\n // Flip the horizontal shifting direction for RTL\n transform: translateX(-1 * $x) translateY($y);\n }\n }\n}\n\n@mixin _textarea-floating-label($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // Resting label position\n .mdc-floating-label {\n @include feature-targeting.targets($feat-structure) {\n top: variables.$textarea-label-top;\n }\n\n // Resets center aligning the floating label.\n &:not(.mdc-floating-label--float-above) {\n @include feature-targeting.targets($feat-structure) {\n transform: none;\n }\n }\n }\n}\n\n@mixin _textarea-input($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-typography: feature-targeting.create-target($query, typography);\n\n @include feature-targeting.targets($feat-structure) {\n flex-grow: 1;\n height: auto;\n min-height: variables.$textarea-line-height;\n overflow-x: hidden; // https://bugzilla.mozilla.org/show_bug.cgi?id=33654\n overflow-y: auto;\n box-sizing: border-box;\n resize: none;\n // Textarea has horizontal padding instead of the container. This allows the\n // resize handle to extend to the edge of the container.\n padding: 0 variables.$padding-horizontal;\n }\n\n @include feature-targeting.targets($feat-typography) {\n line-height: variables.$textarea-line-height;\n }\n}\n\n@mixin _textarea-internal-counter($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include typography.baseline-bottom(\n variables.$textarea-internal-counter-baseline-bottom,\n $query: $query\n );\n @include feature-targeting.targets($feat-structure) {\n align-self: flex-end;\n // Needed since padding is on the textarea and not the container\n padding: 0 variables.$padding-horizontal;\n\n &::before {\n // Remove baseline-top\n display: none;\n }\n }\n}\n\n@mixin _textarea-input-with-internal-counter($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n margin-bottom: variables.$textarea-internal-counter-input-margin-bottom;\n }\n}\n\n@mixin _textarea-filled($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n &::before {\n // <textarea> does not align to baseline when it does not have a value,\n // unlike <input>, so we have to use padding to fake it instead\n display: none;\n }\n }\n\n // Floating label position\n @include floating-label-mixins.float-position(\n variables.$textarea-filled-label-position-y,\n $query: $query\n );\n\n // Floating label animation\n @include floating-label-mixins.shake-animation(\n textarea-filled,\n $query: $query\n );\n @at-root {\n @include floating-label-mixins.shake-keyframes(\n textarea-filled,\n variables.$textarea-filled-label-position-y,\n 0%,\n $query: $query\n );\n }\n}\n\n@mixin _textarea-filled-input($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n margin-top: variables.$textarea-filled-input-margin-top;\n margin-bottom: variables.$textarea-filled-input-margin-bottom;\n }\n}\n\n@mixin _textarea-filled-no-label-input($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n margin-top: variables.$textarea-filled-no-label-input-margin-top;\n margin-bottom: variables.$textarea-filled-no-label-input-margin-bottom;\n }\n}\n\n@mixin _textarea-outlined($query: feature-targeting.all()) {\n @include notched-outline-mixins.notch-offset(0, $query: $query);\n\n // Floating label position\n @include notched-outline-mixins.floating-label-float-position-absolute(\n variables.$textarea-outlined-label-position-y,\n $query: $query\n );\n\n // Floating label animation\n @include floating-label-mixins.shake-animation(\n textarea-outlined,\n $query: $query\n );\n @at-root {\n @include floating-label-mixins.shake-keyframes(\n textarea-outlined,\n variables.$textarea-outlined-label-position-y,\n 0%,\n $query: $query\n );\n }\n}\n\n@mixin _textarea-outlined-floating-label($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n top: variables.$textarea-outlined-label-top;\n }\n}\n\n@mixin _textarea-outlined-input($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n margin-top: variables.$textarea-outlined-input-margin-top;\n margin-bottom: variables.$textarea-outlined-input-margin-bottom;\n }\n}\n\n// Text, Prefix and Suffix\n\n// Common styles for the text of the text field, including the prefix, suffix,\n// and input.\n@mixin _text($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // Exclude setting line-height to keep caret (text cursor) same height as the input text in iOS browser.\n @include typography.typography(\n subtitle1,\n $exclude-props: (line-height),\n $query: $query\n );\n @include feature-targeting.targets($feat-structure) {\n height: variables.$input-height;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: functions.transition(opacity);\n }\n}\n\n@mixin _input($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include _text($query: $query);\n @include feature-targeting.targets($feat-structure) {\n width: 100%;\n min-width: 0; // Fixes flex issues on Firefox\n border: none;\n border-radius: 0;\n background: none;\n appearance: none;\n padding: 0;\n\n // Remove built-in trailing clear icon on IE11. IE vendor prefixes cannot\n // be combined with other vendor prefixes like the webkit one below.\n &::-ms-clear {\n display: none;\n }\n\n // Remove built-in datepicker icon on Chrome\n &::-webkit-calendar-picker-indicator {\n display: none;\n }\n\n &:focus {\n outline: none;\n }\n\n // Remove red outline on firefox\n &:invalid {\n box-shadow: none;\n }\n }\n}\n\n@mixin _input-placeholder($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-animation) {\n transition: functions.transition(opacity, $duration: 67ms);\n }\n\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n }\n}\n\n@mixin _input-placeholder-visible($query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-animation) {\n transition-delay: 40ms;\n transition-duration: 110ms;\n }\n\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n}\n\n@mixin _affix($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include _text($query: $query);\n @include feature-targeting.targets($feat-structure) {\n opacity: 0;\n white-space: nowrap;\n }\n}\n\n// TODO(b/155467610): Remove when Safari supports baseline alignment\n// https://github.com/material-components/material-components-web/issues/5879\n@mixin _centered-affix-safari-support($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n align-items: center;\n align-self: center;\n display: inline-flex;\n height: 100%;\n }\n}\n\n@mixin _affix-visible($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n }\n}\n\n@mixin _prefix($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(\n padding,\n right,\n variables.$prefix-padding\n );\n }\n}\n\n@mixin _prefix-end-aligned($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(\n padding,\n right,\n variables.$prefix-end-aligned-padding\n );\n }\n}\n\n@mixin _suffix($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(padding, left, variables.$suffix-padding);\n }\n}\n\n@mixin _suffix-end-aligned($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-box(\n padding,\n left,\n variables.$suffix-end-aligned-padding\n );\n }\n}\n\n// End aligned\n@mixin end-aligned_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-text-field__input {\n @include feature-targeting.targets($feat-structure) {\n // IE11 does not support text-align: end\n /* @noflip */\n text-align: right;\n }\n\n @include rtl-mixins.rtl {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n text-align: left;\n }\n }\n }\n}\n\n// Forces input, prefix, and suffix to be LTR when in an RTL environment. Other\n// elements such as labels and icons will remain RTL.\n@mixin _ltr-text($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.rtl {\n .mdc-text-field__input,\n .mdc-text-field__affix {\n /* @noflip */\n direction: ltr;\n }\n\n .mdc-text-field__affix--prefix {\n /* @noflip */\n padding-left: 0;\n /* @noflip */\n padding-right: variables.$prefix-padding;\n }\n\n .mdc-text-field__affix--suffix {\n /* @noflip */\n padding-left: variables.$suffix-padding;\n /* @noflip */\n padding-right: 0;\n }\n\n // Need to specify an order for all elements since icons maintain their\n // original positions. We can't just reverse the container.\n .mdc-text-field__icon--leading {\n order: 1;\n }\n\n .mdc-text-field__affix--suffix {\n order: 2;\n }\n\n .mdc-text-field__input {\n order: 3;\n }\n\n .mdc-text-field__affix--prefix {\n order: 4;\n }\n\n .mdc-text-field__icon--trailing {\n order: 5;\n }\n }\n }\n}\n\n// Forces input, prefix, and suffix that are already forced to LTR to also be\n// end-aligned. This mixin should be used alongside the styles provided in\n// _ltr-text().\n@mixin _ltr-text-end-aligned($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.rtl {\n .mdc-text-field__input {\n // IE11 does not support text-align: end, so we need to duplicate\n // the LTR end-aligned style here.\n /* @noflip */\n text-align: right;\n }\n\n .mdc-text-field__affix--prefix {\n // padding-left: 0 provided by _ltr-text mixin\n /* @noflip */\n padding-right: variables.$prefix-end-aligned-padding;\n }\n\n .mdc-text-field__affix--suffix {\n /* @noflip */\n padding-left: variables.$suffix-end-aligned-padding;\n // padding-right: 0 provided by _ltr-text mixin\n }\n }\n }\n}\n\n// Customization\n\n@mixin ink-color_($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-text-field__input {\n @include feature-targeting.targets($feat-color) {\n @include theme.prop(color, $color);\n }\n }\n}\n\n@mixin placeholder-color_($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n .mdc-text-field__input {\n @include placeholder-selector_ {\n @include theme.prop(color, $color);\n }\n }\n }\n}\n\n@mixin fill-color_(\n $color,\n $query: feature-targeting.all(),\n $addAlternate: false\n) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n @if ($addAlternate) {\n /* @alternate */\n }\n @include theme.prop(background-color, $color);\n }\n}\n\n@mixin bottom-line-color_($color, $query: feature-targeting.all()) {\n .mdc-line-ripple {\n @include line-ripple-mixins.inactive-color($color, $query: $query);\n }\n}\n\n@mixin hover-bottom-line-color_($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &:hover .mdc-line-ripple {\n @include line-ripple-mixins.inactive-color($color, $query: $query);\n }\n}\n\n@mixin line-ripple-color_($color, $query: feature-targeting.all()) {\n .mdc-line-ripple {\n @include line-ripple-mixins.active-color($color, $query: $query);\n }\n}\n\n@mixin hover-outline-color_($color, $query: feature-targeting.all()) {\n &:not(.mdc-text-field--focused):hover {\n .mdc-notched-outline {\n @include notched-outline-mixins.color($color, $query: $query);\n }\n }\n}\n\n@mixin focused-outline-color_($color, $query: feature-targeting.all()) {\n &.mdc-text-field--focused {\n @include notched-outline-mixins.color($color, $query: $query);\n }\n}\n\n@mixin label-ink-color_($color, $query: feature-targeting.all()) {\n .mdc-floating-label {\n @include floating-label-mixins.ink-color($color, $query: $query);\n }\n}\n\n@mixin _prefix-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n .mdc-text-field__affix--prefix {\n @include theme.prop(color, $color);\n }\n }\n}\n\n@mixin _suffix-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-color) {\n .mdc-text-field__affix--suffix {\n @include theme.prop(color, $color);\n }\n }\n}\n\n// Selectors\n\n@mixin placeholder-selector_ {\n // GSS will combine selectors with the same content, and some browsers have a\n // CSS quirk where it drops a rule if it does not recognize one of the\n // selectors.\n // To avoid GSS combining the ::placeholder and :-ms-input-placeholder\n // selectors, we wrap them in `@media all`.\n // TODO(b/142329051)\n @media all {\n // ::placeholder needs to be wrapped because IE11 will drop other selectors\n // with the same content\n &::placeholder {\n @content;\n }\n }\n\n @media all {\n // :-ms-input-placeholder needs to be wrapped because Firefox will drop\n // other selectors with the same content\n &:-ms-input-placeholder {\n @content;\n }\n }\n}\n\n// State qualifiers\n\n///\n/// Helps style the text-field only when it's enabled.\n/// @access private\n///\n@mixin if-enabled_ {\n &:not(.mdc-text-field--disabled) {\n @content;\n }\n}\n\n///\n/// Helps style the text-field only when it's disabled.\n/// @access private\n///\n@mixin if-disabled_ {\n &.mdc-text-field--disabled {\n @content;\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '../functions';\n@use '@material/theme/theme';\n@use '@material/typography/typography';\n@use '@material/feature-targeting/feature-targeting';\n// Public mixins\n\n@mixin helper-text-core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-animation: feature-targeting.create-target($query, animation);\n\n // postcss-bem-linter: define text-field-helper-text\n\n .mdc-text-field-helper-text {\n @include typography.typography(caption, $query: $query);\n @include typography.text-baseline($top: 16px, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n margin: 0;\n opacity: 0;\n will-change: opacity;\n }\n\n @include feature-targeting.targets($feat-animation) {\n transition: functions.transition(opacity);\n }\n }\n\n .mdc-text-field-helper-text--persistent {\n @include feature-targeting.targets($feat-animation) {\n transition: none;\n }\n\n @include feature-targeting.targets($feat-structure) {\n opacity: 1;\n will-change: initial;\n }\n }\n\n // postcss-bem-linter: end\n}\n\n///\n/// Customizes the color of the helper text following an enabled text-field.\n/// @param {Color} $color - The desired helper text color.\n///\n@mixin helper-text-color($color, $query: feature-targeting.all()) {\n &:not(.mdc-text-field--disabled) {\n @include helper-text-color_($color, $query);\n }\n}\n\n///\n/// Customizes the color of the helper text following a disabled text-field.\n/// @param {Color} $color - The desired helper text color.\n///\n@mixin disabled-helper-text-color($color, $query: feature-targeting.all()) {\n &.mdc-text-field--disabled {\n @include helper-text-color_($color, $query);\n }\n}\n\n@mixin helper-text-validation-color($color, $query: feature-targeting.all()) {\n &:not(.mdc-text-field--disabled) {\n @include helper-text-validation-color_($color, $query);\n }\n}\n\n// Private mixins\n\n@mixin helper-text-color_($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n + .mdc-text-field-helper-line .mdc-text-field-helper-text {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n\n@mixin helper-text-validation-color_($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n &.mdc-text-field--invalid\n + .mdc-text-field-helper-line\n .mdc-text-field-helper-text--validation-msg {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n","//\n// Copyright 2019 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/theme/theme';\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/typography/typography';\n\n// Public mixins\n\n@mixin character-counter-core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n // postcss-bem-linter: define text-field-character-counter\n\n .mdc-text-field-character-counter {\n @include typography.typography(caption, $query: $query);\n @include typography.text-baseline($top: 16px, $query: $query);\n\n @include feature-targeting.targets($feat-structure) {\n // Keep flex item align to trailing side on absence of helper text.\n @include rtl-mixins.reflexive-box(margin, left, auto);\n @include rtl-mixins.reflexive-box(padding, left, 16px);\n\n white-space: nowrap;\n }\n }\n\n // postcss-bem-linter: end\n}\n\n///\n/// Customizes the color of the character counter associated with an enabled text field.\n/// @param {Color} $color - The desired character counter color.\n///\n@mixin character-counter-color($color, $query: feature-targeting.all()) {\n &:not(.mdc-text-field--disabled) {\n @include character-counter-color_($color, $query);\n }\n}\n\n///\n/// Customizes the color of the character counter associated with a disabled text field.\n/// @param {Color} $color - The desired character counter color.\n///\n@mixin disabled-character-counter-color(\n $color,\n $query: feature-targeting.all()\n) {\n &.mdc-text-field--disabled {\n @include character-counter-color_($color, $query);\n }\n}\n\n@mixin character-counter-position(\n $xOffset,\n $yOffset,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n .mdc-text-field-character-counter {\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-position(right, $xOffset);\n position: absolute;\n bottom: $yOffset;\n }\n }\n}\n\n// Private mixins\n\n@mixin character-counter-color_($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n // Character counter is placed inside mdc-textfield element (for textarea variant) or\n // inside helper line which is sibling to mdc-textfield.\n .mdc-text-field-character-counter,\n + .mdc-text-field-helper-line .mdc-text-field-character-counter {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/theme/theme';\n@use '@material/feature-targeting/feature-targeting';\n@use './variables';\n\n// Public mixins\n\n@mixin icon-core-styles($query: feature-targeting.all()) {\n .mdc-text-field__icon {\n @include icon_($query: $query);\n\n svg {\n @include _icon-svg($query: $query);\n }\n }\n\n .mdc-text-field__icon--leading {\n @include leading-icon_($query: $query);\n }\n\n .mdc-text-field__icon--trailing {\n @include trailing-icon_($query: $query);\n }\n}\n\n///\n/// Customizes the color for the leading icon in an enabled text-field.\n/// @param {Color} $color - The desired icon color.\n///\n@mixin leading-icon-color($color, $query: feature-targeting.all()) {\n &:not(.mdc-text-field--disabled) {\n @include leading-icon-color_($color, $query);\n }\n}\n\n///\n/// Customizes the color for the trailing icon in an enabled text-field.\n/// @param {Color} $color - The desired icon color.\n///\n@mixin trailing-icon-color($color, $query: feature-targeting.all()) {\n &:not(.mdc-text-field--disabled) {\n @include trailing-icon-color_($color, $query);\n }\n}\n\n///\n/// Customizes the color for the leading/trailing icons in a disabled text-field.\n/// @param {Color} $color - The desired icon color.\n///\n@mixin disabled-icon-color($color, $query: feature-targeting.all()) {\n &.mdc-text-field--disabled {\n @include leading-icon-color_($color, $query);\n @include trailing-icon-color_($color, $query);\n }\n}\n\n/// Sets the size of the leading and trailing icons.\n///\n/// @param {Number} $size - the size of the icon in px\n@mixin size($size, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n .mdc-text-field__icon {\n font-size: $size;\n }\n }\n}\n\n// Private mixins\n\n@mixin icon_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n $feat-color: feature-targeting.create-target($query, color);\n\n @include feature-targeting.targets($feat-structure) {\n align-self: center;\n cursor: pointer;\n }\n\n &:not([tabindex]),\n &[tabindex='-1'] {\n @include feature-targeting.targets($feat-color) {\n cursor: default;\n pointer-events: none;\n }\n }\n}\n\n@mixin _icon-svg($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n // SVG children can cause misalignment when displayed as inline since\n // line-height will be inherited and cause additional vertical space.\n // Setting the display to block prevents this.\n display: block;\n }\n}\n\n@mixin leading-icon_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n @include rtl-mixins.reflexive-property(\n margin,\n variables.$leading-icon-padding-left,\n variables.$leading-icon-padding-right\n );\n }\n}\n\n@mixin trailing-icon_($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n $padding: (variables.$touch-target-size - variables.$icon-size) / 2;\n $left-margin: variables.$trailing-icon-padding-left - $padding;\n $right-margin: variables.$trailing-icon-padding-right - $padding;\n\n padding: $padding;\n @include rtl-mixins.reflexive-property(margin, $left-margin, $right-margin);\n }\n}\n\n@mixin leading-icon-color_($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-text-field__icon--leading {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n\n@mixin trailing-icon-color_($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n .mdc-text-field__icon--trailing {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(color, $color);\n }\n }\n}\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:color';\n@use '@material/density/variables' as density-variables;\n@use '@material/floating-label/variables' as floating-label-variables;\n@use '@material/notched-outline/variables' as notched-outline-variables;\n@use '@material/theme/theme-color';\n\n///\n/// Returns outlined text field floating label position for given height.\n///\n/// @todo Instead of adjusting `$positionY` with label box height that might change based on floating label font size\n/// wrap label in a child element to apply `transitionY(-50%)` to automatically offset based on box height.\n///\n@function get-outlined-label-position-y($text-field-height) {\n @return $text-field-height / 2 + notched-outline-variables.$label-box-height /\n 2;\n}\n\n$error: error !default;\n$disabled-border: rgba(theme-color.prop-value(on-surface), 0.06) !default;\n$disabled-icon: rgba(theme-color.prop-value(on-surface), 0.3) !default;\n$bottom-line-hover: rgba(theme-color.prop-value(on-surface), 0.87) !default;\n$bottom-line-idle: rgba(theme-color.prop-value(on-surface), 0.42) !default;\n$label: rgba(theme-color.prop-value(on-surface), 0.6) !default;\n\n$ink-color: rgba(theme-color.prop-value(on-surface), 0.87) !default;\n$helper-text-color: rgba(theme-color.prop-value(on-surface), 0.6) !default;\n$icon-color: rgba(theme-color.prop-value(on-surface), 0.54) !default;\n$focused-label-color: rgba(theme-color.prop-value(primary), 0.87) !default;\n$placeholder-ink-color: rgba(theme-color.prop-value(on-surface), 0.54) !default;\n$affix-color: rgba(theme-color.prop-value(on-surface), 0.6) !default;\n\n$disabled-label-color: rgba(theme-color.prop-value(on-surface), 0.38) !default;\n$disabled-ink-color: rgba(theme-color.prop-value(on-surface), 0.38) !default;\n$disabled-placeholder-ink-color: rgba(\n theme-color.prop-value(on-surface),\n 0.38\n) !default;\n$disabled-helper-text-color: rgba(\n theme-color.prop-value(on-surface),\n 0.38\n) !default;\n$disabled-affix-color: rgba(theme-color.prop-value(on-surface), 0.38) !default;\n\n$background: color.mix(\n theme-color.prop-value(on-surface),\n theme-color.prop-value(surface),\n 4%\n) !default;\n$disabled-background: color.mix(\n theme-color.prop-value(on-surface),\n theme-color.prop-value(surface),\n 2%\n) !default;\n$secondary-text: rgba(theme-color.prop-value(on-surface), 0.6) !default;\n\n$outlined-idle-border: rgba(theme-color.prop-value(on-surface), 0.38) !default;\n$outlined-disabled-border: rgba(\n theme-color.prop-value(on-surface),\n 0.06\n) !default;\n$outlined-hover-border: rgba(theme-color.prop-value(on-surface), 0.87) !default;\n\n$textarea-border: rgba(theme-color.prop-value(on-surface), 0.73) !default;\n$textarea-background: rgba(theme-color.prop-value(surface), 1) !default;\n$textarea-disabled-border-color: rgba(\n theme-color.prop-value(on-surface),\n 0.26\n) !default;\n// cannot be transparent because multiline textarea input\n// will make text unreadable\n$textarea-disabled-background: rgba(249, 249, 249, 1) !default;\n\n$ripple-target: '.mdc-text-field__ripple';\n$outlined-stroke-width: 2px !default;\n$height: 56px !default;\n$minimum-height: 40px !default;\n$minimum-height-for-filled-label: 52px !default;\n$maximum-height: $height !default;\n$padding-horizontal: 16px !default;\n$density-scale: density-variables.$default-scale !default;\n$density-config: (\n height: (\n default: $height,\n maximum: $maximum-height,\n minimum: $minimum-height,\n ),\n) !default;\n$shape-radius: small !default;\n$label-position-y: floating-label-variables.$position-y !default;\n$label-offset: 16px !default;\n// TODO(b/154350788): Remove this variable, it's not used internally but it is\n// externally in Angular\n/// @deprecated this variable will be removed in the future.\n/// Use get-outlined-label-position-y($height) instead\n$outlined-label-position-y: get-outlined-label-position-y($height) !default;\n$outlined-with-leading-icon-label-position-x: 32px !default;\n$textarea-outlined-label-position-y: 24.75px !default; // visually ~4dp from top to baseline\n$textarea-filled-label-position-y: 10.25px !default; // visually ~20dp from top to label baseline\n$helper-line-padding: 16px !default;\n$filled-baseline-top: 40px !default;\n$input-height: 28px !default;\n$textarea-label-top: 19px !default; // visually ~32dp from top to label baseline\n$textarea-outlined-label-top: $textarea-label-top -\n notched-outline-variables.$border-width !default;\n$textarea-line-height: 1.5rem !default; // 24dp from baseline to baseline\n$textarea-input-handle-margin: 1px !default;\n// Outlined textarea's first line should be placed at the same position as\n// outlined textfield, and should look identical if it is 1 row. Since textfield\n// is centered and font metrics vary for where the baseline is, the best way to\n// ensure textarea and textfield align is with padding. At 56px height with a\n// 24px line-height, a centered textfield has 16px of top and bottom padding.\n// Textarea should use this to position itself.\n$textarea-outlined-input-margin-top: 16px !default;\n$textarea-outlined-input-margin-bottom: 16px !default;\n$textarea-outlined-density-config: (\n margin-top: (\n default: $textarea-outlined-input-margin-top,\n maximum: $textarea-outlined-input-margin-top,\n minimum: $textarea-outlined-input-margin-top - 8,\n ),\n margin-bottom: (\n default: $textarea-outlined-input-margin-bottom,\n maximum: $textarea-outlined-input-margin-bottom,\n minimum: $textarea-outlined-input-margin-bottom - 8,\n ),\n) !default; // remove 1/2 of scale to -4 for minimum\n$textarea-outlined-label-density-config: (\n top: (\n default: $textarea-outlined-label-top,\n maximum: $textarea-outlined-label-top,\n minimum: $textarea-outlined-label-top - 8,\n ),\n) !default; // remove 1/2 of scale to -4 for minimum\n$textarea-filled-input-margin-top: 23px !default; // visually ~40dp from top to baseline\n$textarea-filled-input-margin-bottom: 9px !default; // visually ~16dp from baseline to bottom\n$textarea-filled-density-config: (\n margin-bottom: (\n default: $textarea-filled-input-margin-bottom,\n maximum: $textarea-filled-input-margin-bottom,\n minimum: $textarea-filled-input-margin-bottom - 4,\n ),\n) !default; // scale to -1 for minimum\n$textarea-filled-label-density-config: (\n top: (\n default: $textarea-label-top,\n maximum: $textarea-label-top,\n minimum: $textarea-label-top - 2,\n ),\n) !default; // remove 1/2 of scale to -1 for minimm\n$textarea-filled-no-label-input-margin-top: 16px !default; // see above explanation for outlined textarea margin\n$textarea-filled-no-label-input-margin-bottom: 16px !default; // see above explanation for outlined textarea margin\n$textarea-filled-no-label-density-config: (\n margin-top: (\n default: $textarea-filled-no-label-input-margin-top,\n maximum: $textarea-filled-no-label-input-margin-top,\n minimum: $textarea-filled-no-label-input-margin-top - 8,\n ),\n margin-bottom: (\n default: $textarea-filled-no-label-input-margin-bottom,\n maximum: $textarea-filled-no-label-input-margin-bottom,\n minimum: $textarea-filled-no-label-input-margin-bottom - 8,\n ),\n) !default; // remove 1/2 of scale to -4 for minimum\n$textarea-internal-counter-input-margin-bottom: 2px !default; // visually ~20dp from baseline to counter baseline\n$textarea-internal-counter-baseline-bottom: 16px !default;\n// Note that the scale factor is an eyeballed approximation of what's shown in the mocks.\n\n$prefix-padding: 2px !default;\n$prefix-end-aligned-padding: 12px !default;\n$suffix-padding: 12px !default;\n$suffix-end-aligned-padding: 2px !default;\n","//\n// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:list';\n@use 'sass:map';\n@use 'sass:meta';\n@use '@material/feature-targeting/feature-targeting';\n@use './css';\n@use './custom-properties';\n@use './gss';\n@use './replace';\n@use './theme-color';\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n\n :root {\n @include feature-targeting.targets($feat-color) {\n @each $style in map.keys(theme-color.$property-values) {\n --mdc-theme-#{$style}: #{map.get(theme-color.$property-values, $style)};\n }\n }\n }\n\n @each $style in map.keys(theme-color.$property-values) {\n @if $style != 'background' and $style != 'surface' {\n .mdc-theme--#{$style} {\n @include feature-targeting.targets($feat-color) {\n @include property(color, $style, $important: true);\n }\n }\n } @else {\n .mdc-theme--#{$style} {\n @include feature-targeting.targets($feat-color) {\n @include property(background-color, $style);\n }\n }\n }\n }\n\n // CSS rules for using primary and secondary (plus light/dark variants) as background colors.\n @each $style in ('primary', 'secondary') {\n .mdc-theme--#{$style}-bg {\n @include feature-targeting.targets($feat-color) {\n @include property(background-color, $style, $important: true);\n }\n }\n }\n}\n\n/// Applies a dynamic value to the specified property. This mixin should be used\n/// in theme style mixins when setting properties.\n///\n/// The value may be any of the following:\n/// - a standard CSS value\n/// - a custom property Map, e.g. (varname: --mdc-foo, fallback: blue)\n/// - a Material theme key String, e.g. 'primary', 'on-primary'\n///\n/// @example\n/// @include theme.property(color, teal);\n/// @include theme.property(color, custom-properties.create(--mdc-foo, blue));\n/// @include theme.property(color, primary);\n///\n/// A `$replace` Map parameter may be provided to replace key/value pairs for\n/// string values. This can be used to substitute parameters in complex string\n/// values such as `calc()` with custom properties.\n///\n/// @example\n/// @include theme.property(\n/// width,\n/// calc(foo + bar),\n/// $replace: (foo: custom-properties.create(--mdc-foo), bar: 8px)\n/// );\n///\n/// Note: Material theme key Strings (e.g. `primary`) are not supported as\n/// replacement values.\n///\n/// @param {String} $property - The name of the CSS property.\n/// @param {String | Number | Color | List | Map} $value - The property's value.\n/// @param {Map} $gss - Optional Map of GSS annotations to set.\n/// @param {Map} $replace - An optional Map of replacement key/value pairs if\n/// the `$value` is a string.\n/// @param {Bool} $important - Set to true to add an `!important` rule. Defaults\n/// to false.\n@mixin property(\n $property,\n $value,\n $gss: (),\n $replace: null,\n $important: false\n) {\n @if custom-properties.is-custom-prop($value) {\n // $value is a custom property Map\n @include custom-properties.declaration(\n $property,\n $value,\n $gss: $gss,\n $important: $important\n );\n } @else if map.has-key(theme-color.$property-values, $value) {\n // $value is a theme property String\n $custom-prop: theme-color.get-custom-property($value);\n @include custom-properties.declaration(\n $property,\n $custom-prop,\n $gss: $gss,\n $important: $important\n );\n } @else {\n // $value is a standard CSS value\n $fallback: null;\n @if $replace and $value {\n @if meta.type-of($replace) != 'map' {\n @error 'mdc-theme: Invalid replacement #{$replace}. Must be a Map.';\n }\n\n $replace-map-fallback: ();\n $replace-map-value: ();\n $needs-fallback: false;\n @each $name, $replacement in $replace {\n @if custom-properties.is-custom-prop($replacement) {\n $replace-value: custom-properties.get-declaration-value($replacement);\n $replace-fallback: custom-properties.get-declaration-fallback(\n $replacement\n );\n @if $replace-fallback {\n $needs-fallback: true;\n }\n\n $replace-map-value: map.set(\n $replace-map-value,\n $name,\n $replace-value\n );\n $replace-map-fallback: map.set(\n $replace-map-fallback,\n $name,\n $replace-fallback\n );\n } @else {\n $replace-map-value: map.set($replace-map-value, $name, $replacement);\n $replace-map-fallback: map.set(\n $replace-map-fallback,\n $name,\n $replacement\n );\n }\n }\n\n @if meta.type-of($value) == 'string' {\n @if $needs-fallback {\n $fallback: replace.replace-string($value, $replace-map-fallback);\n }\n $value: replace.replace-string($value, $replace-map-value);\n } @else if meta.type-of($value) == 'list' {\n @if $needs-fallback {\n $fallback: replace.replace-list($value, $replace-map-fallback);\n }\n $value: replace.replace-list($value, $replace-map-value);\n } @else {\n @error 'mdc-theme: Invalid replacement value #{$value}. $replace may only be used with string or list values.';\n }\n }\n\n @include css.declaration(\n $property,\n $value,\n $fallback-value: $fallback,\n $gss: $gss,\n $important: $important\n );\n }\n}\n\n// @deprecated use the `property()` mixin instead\n@mixin prop($property, $style, $important: false) {\n @include property($property, $style, $important: $important);\n}\n\n/// Validates keys in provided theme configuration by comparing with original\n/// theme configuration.\n/// Use this in component's `theme()` mixin implementation to validate if\n/// provided theme configuration has supported theme configuration keys.\n/// @param {Map} $origin-theme - Original theme configuration in Sass map format\n/// that has all supported keys.\n/// @param {Map} $custom-theme - Provided theme configuration in Sass map format\n/// that should be validated against `$origin-theme`.\n/// @examples\n/// @mixin theme($theme) {\n/// @include theme.validate-keys($light-theme, $theme);\n///\n/// // ...\n/// }\n@mixin validate-keys($origin-theme, $custom-theme, $test-only: false) {\n $origin-keys: map.keys($origin-theme);\n $unsupported-keys: ();\n $unsupported-custom-prop-keys: ();\n\n @each $key, $value in $custom-theme {\n @if (not list.index($origin-keys, $key)) {\n $unsupported-keys: list.append(\n $unsupported-keys,\n $key,\n $separator: comma\n );\n }\n\n $is-prop: custom-properties.is-custom-prop($value) or\n custom-properties.is-custom-prop-string($value);\n @if $is-prop {\n $unsupported-custom-prop-keys: list.append(\n $unsupported-custom-prop-keys,\n $key,\n $separator: comma\n );\n }\n }\n\n @if list.length($unsupported-keys) > 0 {\n $error-message: 'Unsupported keys found: #{$unsupported-keys}. Expected one of: #{$origin-keys}.';\n\n @if $test-only {\n content: $error-message;\n } @else {\n @error $error-message;\n }\n }\n\n @if list.length($unsupported-custom-prop-keys) > 0 {\n $error-message: 'Custom properties are not supported for theme map keys: #{$unsupported-custom-prop-keys}';\n\n @if $test-only {\n content: $error-message;\n } @else {\n @error $error-message;\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern --\n// Internal styling for Tooltip MDC component.\n\n@use '@material/animation/functions' as animation-functions;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/theme/theme';\n@use '@material/theme/custom-properties';\n@use '@material/theme/css';\n@use '@material/theme/theme-color';\n\n$background-color: rgba(black, theme-color.text-emphasis(medium));\n$border-radius: small;\n$label-color: text-primary-on-dark;\n\n$enter-duration: 150ms;\n$exit-duration: 75ms;\n\n// Rich Tooltip variables\n$rich-background-color: rgba(white, theme-color.text-emphasis(medium));\n$rich-title-text-color: text-primary-on-light;\n$rich-content-text-color: rgba(black, theme-color.text-emphasis(medium));\n$rich-content-link-color: primary;\n\n// Use a custom property so IE11 does not use \"normal\" and instead uses provided\n// fall-back value.\n$word-break-custom-prop: custom-properties.create(\n --mdc-tooltip-word-break,\n normal\n);\n$word-break-default: custom-properties.create-var($word-break-custom-prop);\n$word-break-ie11-fallback: break-all;\n$z-index: 2;\n\n// Sets the border-radius for the tooltip element.\n// @param {Number | String} $radius Desired border radius value, accepts either\n// a shape category or number value. $radius can be a singel value, or a\n// list of up to 4 values.\n// @param {Boolean} $rtl-reflexive [false] If a rule should be created for a\n// flipped $radius for a RTL layout.\n@mixin shape-radius(\n $radius,\n $rtl-reflexive: false,\n $query: feature-targeting.all()\n) {\n .mdc-tooltip__surface {\n @include shape-mixins.radius($radius, $rtl-reflexive, $query: $query);\n }\n}\n\n// Sets the word-break property for the tooltip label. Users of IE11 can\n// overwrite the fallback if their tooltip labels will never contain long\n// strings without spaces or hyphens.\n// @param {String} $value\n// @param {String} $fallbackValue A fallback value to be set for word-break.\n// This can be used to cover IE11 which does not support\n// \"overflow-wrap: anywhere\".\n@mixin word-break(\n $value,\n $fallbackValue: $word-break-ie11-fallback,\n $query: feature-targeting.all()\n) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n .mdc-tooltip__surface {\n @include css.declaration(\n word-break,\n $value,\n $fallback-value: $fallbackValue\n );\n overflow-wrap: anywhere;\n }\n }\n}\n\n// Sets the color of the tooltip label.\n// @param {Color | String} $color\n@mixin label-ink-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n @include feature-targeting.targets($feat-color) {\n .mdc-tooltip__surface {\n @include theme.property(color, $color);\n }\n }\n}\n\n// Sets the color of the text for the content inside a rich tooltip.\n// @param {Color | String} $title-color The color for the title of rich\n// tooltips.\n// @param {Color | String} $content-color The color for the text in the content\n// of rich tooltips.\n// @param {Color | String} $content-link-color The color for a link in the\n// content of rich tooltips.\n@mixin rich-text-ink-color(\n $title-color,\n $content-color,\n $content-link-color,\n $query: feature-targeting.all()\n) {\n $feat-color: feature-targeting.create-target($query, color);\n @include feature-targeting.targets($feat-color) {\n .mdc-tooltip__title {\n @include theme.property(color, $title-color);\n }\n\n .mdc-tooltip__content {\n @include theme.property(color, $content-color);\n }\n\n .mdc-tooltip__content-link {\n @include theme.property(color, $content-link-color);\n }\n }\n}\n\n// Sets the fill/surface color of the tooltip.\n// @param {Color | String} $color\n@mixin fill-color($color, $query: feature-targeting.all()) {\n $feat-color: feature-targeting.create-target($query, color);\n .mdc-tooltip__surface {\n @include feature-targeting.targets($feat-color) {\n @include theme.property(background-color, $color);\n }\n }\n}\n\n// Sets the z-index of the tooltip.\n// @param {Number} $z-index\n@mixin z-index($z-index, $query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include feature-targeting.targets($feat-structure) {\n .mdc-tooltip {\n z-index: $z-index;\n }\n }\n}\n\n// Sets the duration for the animation that shows the tooltip.\n// @param {Number} $enter-duration\n@mixin show-transition($enter-duration, $query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include feature-targeting.targets($feat-animation) {\n .mdc-tooltip--showing-transition .mdc-tooltip__surface {\n transition: animation-functions.enter(opacity, $enter-duration),\n animation-functions.enter(transform, $enter-duration);\n }\n }\n}\n\n// Sets the duration for the animation that hides the tooltip.\n// @param {Number} $exit-duration\n@mixin hide-transition($exit-duration, $query: feature-targeting.all()) {\n $feat-animation: feature-targeting.create-target($query, animation);\n\n @include feature-targeting.targets($feat-animation) {\n .mdc-tooltip--hide-transition .mdc-tooltip__surface {\n transition: animation-functions.exit-permanent(opacity, $exit-duration);\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern --\n// Internal styling for Tooltip MDC component.\n\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/feature-targeting/feature-targeting';\n@use '@material/rtl/rtl' as rtl;\n@use './tooltip-theme';\n@use '@material/typography/typography';\n\n$_padding-x: 4px;\n$_padding-y: 8px;\n$_min-width: 40px;\n$_max-height: 40vh;\n//LINT.IfChange(tooltip-dimensions)\n$_max-width: 200px;\n$_min-height: 24px;\n// LINT.ThenChange(constants.ts:tooltip-dimensions)\n$_label-type-scale: caption;\n$_line-height: 16px;\n\n// Rich Tooltip variables\n$_rich_corner_radius: 8px;\n$_rich_max-width: 320px;\n$_rich_padding: 8px;\n$_content-margin-x: 8px;\n$_content-type-scale: body1;\n$_title-type-scale: subtitle2;\n\n@mixin core-styles($query: feature-targeting.all()) {\n $feat-structure: feature-targeting.create-target($query, structure);\n\n @include tooltip-theme.shape-radius(\n tooltip-theme.$border-radius,\n $query: $query\n );\n @include tooltip-theme.label-ink-color(\n tooltip-theme.$label-color,\n $query: $query\n );\n @include tooltip-theme.fill-color(\n tooltip-theme.$background-color,\n $query: $query\n );\n @include tooltip-theme.word-break(\n tooltip-theme.$word-break-default,\n tooltip-theme.$word-break-ie11-fallback,\n $query: $query\n );\n @include tooltip-theme.z-index(tooltip-theme.$z-index, $query: $query);\n @include tooltip-theme.show-transition(\n tooltip-theme.$enter-duration,\n $query: $query\n );\n @include tooltip-theme.hide-transition(\n tooltip-theme.$exit-duration,\n $query: $query\n );\n @include tooltip-theme.rich-text-ink-color(\n tooltip-theme.$rich-title-text-color,\n tooltip-theme.$rich-content-text-color,\n tooltip-theme.$rich-content-link-color,\n $query: $query\n );\n\n .mdc-tooltip {\n @include feature-targeting.targets($feat-structure) {\n position: fixed;\n display: none;\n }\n }\n\n .mdc-tooltip-wrapper--rich {\n @include feature-targeting.targets($feat-structure) {\n position: relative;\n }\n }\n\n .mdc-tooltip--shown,\n .mdc-tooltip--showing,\n .mdc-tooltip--hide {\n @include feature-targeting.targets($feat-structure) {\n display: inline-flex;\n }\n\n &.mdc-tooltip--rich {\n @include elevation-mixins.elevation(2, $query: $query);\n @include tooltip-theme.fill-color(\n tooltip-theme.$rich-background-color,\n $query: $query\n );\n @include feature-targeting.targets($feat-structure) {\n display: inline-block;\n border-radius: $_rich_corner_radius;\n // Moves the rich tooltip out of the viewport/parent element initially\n // so that the initial width is not affected and a 'correct' width can\n // be used to calculate the position of the tooltip.\n left: -$_rich_max_width;\n padding: $_rich_padding $_rich_padding;\n position: absolute;\n }\n }\n }\n\n .mdc-tooltip__surface {\n @include typography.typography(\n $_label-type-scale,\n $exclude-props: (line-height),\n $query: $query\n );\n\n @include feature-targeting.targets($feat-structure) {\n line-height: $_line-height;\n padding: $_padding-x $_padding-y;\n min-width: $_min-width;\n max-width: $_max-width;\n min-height: $_min-height;\n max-height: $_max-height;\n box-sizing: border-box;\n overflow: hidden;\n text-align: center;\n transform: scale(0.8);\n opacity: 0;\n will-change: transform, opacity;\n outline: 1px solid transparent;\n }\n\n .mdc-tooltip--rich & {\n @include feature-targeting.targets($feat-structure) {\n align-items: flex-start;\n display: flex;\n flex-direction: column;\n min-height: $_min-height;\n min-width: $_min-width;\n max-width: $_rich_max-width;\n }\n }\n\n .mdc-tooltip--multiline & {\n @include feature-targeting.targets($feat-structure) {\n /* @noflip */\n text-align: left;\n @include rtl.rtl {\n /* @noflip */\n text-align: right;\n }\n }\n }\n\n .mdc-tooltip--shown & {\n @include feature-targeting.targets($feat-structure) {\n transform: scale(1);\n opacity: 1;\n }\n }\n\n .mdc-tooltip--hide & {\n @include feature-targeting.targets($feat-structure) {\n transform: scale(1);\n }\n }\n\n .mdc-tooltip__title {\n @include typography.text-baseline($top: 20px, $query: $query);\n @include typography.typography(\n $_title-type-scale,\n $exclude-props: (line-height),\n $query: $query\n );\n @include feature-targeting.targets($feat-structure) {\n margin: 0 $_content-margin-x;\n }\n }\n\n .mdc-tooltip__content {\n @include typography.text-baseline($top: 24px, $query: $query);\n @include typography.typography(\n $_content-type-scale,\n $exclude-props: (line-height),\n $query: $query\n );\n @include feature-targeting.targets($feat-structure) {\n margin: 0 $_content-margin-x 16px $_content-margin-x;\n /* @noflip */\n text-align: left;\n @include rtl.rtl {\n /* @noflip */\n text-align: right;\n }\n }\n }\n\n .mdc-tooltip__content-link {\n @include feature-targeting.targets($feat-structure) {\n text-decoration: none;\n }\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use '@material/elevation/mixins' as elevation-mixins;\n@use '@material/animation/variables' as animation-variables;\n@use '@material/rtl/mixins' as rtl-mixins;\n@use '@material/typography/typography';\n@use './mixins';\n@use './variables';\n\n// postcss-bem-linter: define top-app-bar\n.mdc-top-app-bar {\n @include mixins.fill-color-accessible(primary);\n @include mixins.icon-ink-color(on-primary);\n\n display: flex;\n position: fixed;\n flex-direction: column;\n justify-content: space-between;\n box-sizing: border-box;\n width: 100%;\n z-index: 4;\n\n &__row {\n display: flex;\n position: relative;\n box-sizing: border-box;\n width: 100%;\n height: variables.$row-height;\n }\n\n &__section {\n display: inline-flex;\n flex: 1 1 auto;\n align-items: center;\n min-width: 0;\n padding: variables.$section-vertical-padding\n variables.$section-horizontal-padding;\n z-index: 1;\n\n &--align-start {\n justify-content: flex-start;\n order: -1;\n }\n\n &--align-end {\n justify-content: flex-end;\n order: 1;\n }\n }\n\n &__title {\n @include typography.typography(headline6);\n @include rtl-mixins.reflexive-box(\n padding,\n left,\n variables.$title-left-padding\n );\n\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n z-index: 1;\n }\n}\n\n@at-root {\n @include mixins.short-shape-radius(24px);\n}\n\n.mdc-top-app-bar--short {\n top: 0;\n /* @noflip */\n right: auto;\n /* @noflip */\n left: 0;\n width: 100%;\n transition: width 250ms animation-variables.$standard-curve-timing-function;\n\n @include rtl-mixins.rtl {\n /* @noflip */\n right: 0;\n /* @noflip */\n left: auto;\n }\n\n .mdc-top-app-bar__row {\n height: variables.$mobile-row-height;\n }\n\n .mdc-top-app-bar__section {\n padding: variables.$mobile-section-padding;\n }\n\n .mdc-top-app-bar__title {\n transition: opacity 200ms\n animation-variables.$standard-curve-timing-function;\n opacity: 1;\n }\n}\n\n.mdc-top-app-bar--short-collapsed {\n @include elevation-mixins.elevation(4);\n\n width: variables.$short-collapsed-width;\n transition: width 300ms animation-variables.$standard-curve-timing-function;\n\n .mdc-top-app-bar__title {\n display: none;\n }\n\n .mdc-top-app-bar__action-item {\n transition: padding 150ms\n animation-variables.$standard-curve-timing-function;\n }\n}\n\n// stylelint-disable-next-line plugin/selector-bem-pattern\n.mdc-top-app-bar--short-collapsed.mdc-top-app-bar--short-has-action-item {\n width: variables.$short-collapsed-width * 2;\n\n .mdc-top-app-bar__section--align-end {\n @include rtl-mixins.reflexive-box(padding, right, 12px);\n }\n}\n\n.mdc-top-app-bar--dense {\n .mdc-top-app-bar__row {\n height: variables.$dense-row-height;\n }\n\n .mdc-top-app-bar__section {\n padding: 0 variables.$dense-section-horizontal-padding;\n }\n\n .mdc-top-app-bar__title {\n @include rtl-mixins.reflexive-box(\n padding,\n left,\n variables.$dense-title-left-padding\n );\n }\n}\n\n.mdc-top-app-bar--prominent {\n .mdc-top-app-bar__row {\n height: variables.$prominent-row-height;\n }\n\n .mdc-top-app-bar__title {\n align-self: flex-end;\n padding-bottom: variables.$prominent-title-bottom-padding;\n }\n\n .mdc-top-app-bar__action-item,\n .mdc-top-app-bar__navigation-icon {\n align-self: flex-start;\n }\n}\n\n// stylelint-disable-next-line plugin/selector-bem-pattern\n.mdc-top-app-bar--fixed {\n transition: box-shadow 200ms linear;\n}\n\n.mdc-top-app-bar--fixed-scrolled {\n @include elevation-mixins.elevation(4);\n\n transition: box-shadow 200ms linear;\n}\n\n// Specific styles for dense and prominent styled top app bar\n// stylelint-disable plugin/selector-bem-pattern\n.mdc-top-app-bar--dense.mdc-top-app-bar--prominent {\n .mdc-top-app-bar__row {\n height: variables.$dense-row-height * 2;\n }\n\n .mdc-top-app-bar__section {\n padding: 0 variables.$section-horizontal-padding;\n }\n\n .mdc-top-app-bar__title {\n @include rtl-mixins.reflexive-box(\n padding,\n left,\n variables.$title-left-padding\n );\n\n padding-bottom: variables.$dense-prominent-title-bottom-padding;\n }\n}\n// stylelint-enable plugin/selector-bem-pattern\n\n.mdc-top-app-bar--fixed-adjust {\n padding-top: variables.$row-height;\n}\n\n.mdc-top-app-bar--dense-fixed-adjust {\n padding-top: variables.$dense-row-height;\n}\n\n.mdc-top-app-bar--short-fixed-adjust {\n padding-top: variables.$mobile-row-height;\n}\n\n.mdc-top-app-bar--prominent-fixed-adjust {\n padding-top: variables.$prominent-row-height;\n}\n\n.mdc-top-app-bar--dense-prominent-fixed-adjust {\n padding-top: variables.$dense-row-height * 2;\n}\n\n// Mobile Styles\n@include mixins.mobile-breakpoint_;\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Selector '.mdc-*' should only be used in this project.\n// stylelint-disable selector-class-pattern\n\n@use 'sass:list';\n@use 'sass:meta';\n@use '@material/animation/variables' as animation-variables;\n@use '@material/ripple/ripple-theme';\n@use '@material/theme/theme-color';\n@use '@material/theme/theme';\n@use '@material/shape/mixins' as shape-mixins;\n@use '@material/shape/functions';\n@use './variables';\n@use '@material/rtl/mixins' as rtl-mixins;\n\n//\n// Public\n//\n\n@mixin ink-color($color) {\n @include theme.property(color, $color);\n}\n\n@mixin fill-color($color) {\n @include theme.property(background-color, $color);\n}\n\n@mixin fill-color-accessible($color) {\n @include fill-color($color);\n @include ink-color(theme-color.accessible-ink-color($color));\n}\n\n@mixin icon-ink-color($color) {\n .mdc-top-app-bar__action-item,\n .mdc-top-app-bar__navigation-icon {\n @include theme.property(color, $color);\n @include ripple-theme.states($color);\n }\n}\n\n@mixin short-shape-radius($radius, $rtl-reflexive: true) {\n @if meta.type-of($radius) == 'list' and list.length($radius) > 1 {\n @error \"Invalid radius: '#{$radius}' component doesn't allow customizing all corners\";\n }\n\n $radius: 0 0 $radius 0;\n\n $selector: if(\n &,\n '&.mdc-top-app-bar--short-collapsed',\n '.mdc-top-app-bar--short-collapsed'\n );\n\n #{$selector} {\n @include shape-mixins.radius(\n $radius,\n $rtl-reflexive,\n $component-height: variables.$dense-row-height\n );\n }\n}\n\n//\n// Private\n//\n\n@mixin mobile-breakpoint_($mobile-breakpoint: variables.$mobile-breakpoint) {\n @media (max-width: $mobile-breakpoint) {\n .mdc-top-app-bar__row {\n height: variables.$mobile-row-height;\n }\n\n .mdc-top-app-bar__section {\n padding: variables.$mobile-section-padding;\n }\n\n .mdc-top-app-bar--short {\n transition: width 200ms\n animation-variables.$standard-curve-timing-function;\n }\n\n .mdc-top-app-bar--short-collapsed {\n transition: width 250ms\n animation-variables.$standard-curve-timing-function;\n\n .mdc-top-app-bar__section--align-end {\n @include rtl-mixins.reflexive-box(\n padding,\n right,\n variables.$short-collapsed-right-icon-padding\n );\n }\n }\n\n .mdc-top-app-bar--prominent {\n .mdc-top-app-bar__title {\n padding-bottom: variables.$prominent-mobile-title-bottom-padding;\n }\n }\n\n .mdc-top-app-bar--fixed-adjust {\n padding-top: variables.$mobile-row-height;\n }\n }\n}\n","//\n// Copyright 2018 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n// Default styles\n$row-height: 64px !default;\n$title-left-padding: 20px !default;\n$section-vertical-padding: 8px !default;\n$section-horizontal-padding: 12px !default;\n\n$mobile-breakpoint: 599px !default;\n\n// Default mobile styles\n$mobile-row-height: 56px !default;\n$mobile-section-padding: 4px !default;\n\n// Short top app bar\n$short-collapsed-border-radius: 4px !default;\n$short-collapsed-width: 56px !default;\n$short-collapsed-right-icon-padding: 12px !default;\n\n// Prominent styles\n$prominent-row-height: 128px !default;\n$prominent-title-bottom-padding: 2px !default;\n\n// Prominent mobile styles\n$prominent-mobile-title-bottom-padding: 6px !default;\n\n// Dense styles\n$dense-row-height: 48px !default;\n$dense-section-horizontal-padding: 4px !default;\n$dense-title-left-padding: 12px !default;\n\n// Dense & Prominent styles\n$dense-prominent-title-bottom-padding: 9px !default;\n"],"sourceRoot":""}