From 130030f21ac11da0bc341e7a787e44a01a47988d Mon Sep 17 00:00:00 2001 From: Josh North Date: Mon, 15 Oct 2018 15:14:36 -0400 Subject: [PATCH] Clean History --- .gitignore | 11 + .tmp/index.php | 1 + README.md | 72 + assets/Approvals.png | Bin 0 -> 71993 bytes assets/LICENSE (LobbySIO) | 16 + assets/LICENSE (bootstrap) | 21 + assets/LICENSE (phpass) | 20 + assets/Main.png | Bin 0 -> 147661 bytes assets/MultiLanguage.png | Bin 0 -> 149673 bytes assets/MultiSite.png | Bin 0 -> 35352 bytes assets/Rules.example.pdf | Bin 0 -> 99270 bytes assets/SignIn.png | Bin 0 -> 72932 bytes assets/SignOut.png | Bin 0 -> 52752 bytes assets/index.php | 1 + assets/logo-small.example.png | Bin 0 -> 30439 bytes assets/logo-text.example.png | Bin 0 -> 30439 bytes assets/mysqlSchema.sql | 257 + autoload.php | 33 + changelang.php | 22 + changesite.php | 22 + css/all.min.css | 5 + css/animate.min.css | 12 + css/bootstrap-grid.css | 1912 ++++ css/bootstrap-grid.css.map | 1 + css/bootstrap-grid.min.css | 7 + css/bootstrap-grid.min.css.map | 1 + css/bootstrap-reboot.css | 331 + css/bootstrap-reboot.css.map | 1 + css/bootstrap-reboot.min.css | 8 + css/bootstrap-reboot.min.css.map | 1 + css/bootstrap-theme.css | 587 ++ css/bootstrap-theme.css.map | 1 + css/bootstrap-theme.min.css | 6 + css/bootstrap-theme.min.css.map | 1 + css/bootstrap.css | 9030 +++++++++++++++++ css/bootstrap.css.map | 1 + css/bootstrap.min.css | 7 + css/bootstrap.min.css.map | 1 + css/datatables.min.css | 18 + css/ie10-viewport-bug-workaround.css | 13 + css/index.php | 1 + css/sticky-footer-navbar.css | 37 + css/styles.css | 109 + css/tempusdominus-bootstrap-4.min.css | 206 + fonts/1YwB1sO8YE1Lyjf12WNiUA.woff2 | Bin 0 -> 26144 bytes fonts/EsvMC5un3kjyUhB9ZEPPwg.woff2 | Bin 0 -> 25408 bytes fonts/FontAwesome.otf | Bin 0 -> 106260 bytes ...lMd1bCOcZXl06LPesZW2xOQ-xsNqO47m55DA.woff2 | Bin 0 -> 4000 bytes fonts/UyBMtLsHKBKXelqf4x7VRQ.woff2 | Bin 0 -> 5280 bytes ...l3kK6ijoeP1IRsvY6323mHUZFJMgTvxaG2iE.woff2 | Bin 0 -> 4852 bytes fonts/fontawesome-webfont.eot | Bin 0 -> 68875 bytes fonts/fontawesome-webfont.svg | 640 ++ fonts/fontawesome-webfont.ttf | Bin 0 -> 138204 bytes fonts/fontawesome-webfont.woff | Bin 0 -> 81284 bytes fonts/fontawesome-webfont.woff2 | Bin 0 -> 64464 bytes fonts/glyphicons-halflings-regular.eot | Bin 0 -> 20127 bytes fonts/glyphicons-halflings-regular.svg | 288 + fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 45404 bytes fonts/glyphicons-halflings-regular.woff | Bin 0 -> 23424 bytes fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes fonts/index.php | 1 + fonts/zfs6I-5mjWQ3nxqccMoL2A.woff2 | Bin 0 -> 29108 bytes inc/footer.inc.php | 15 + inc/header.inc.php | 168 + inc/index.php | 1 + index.php | 240 + js/bootstrap.bundle.js | 6461 ++++++++++++ js/bootstrap.bundle.js.map | 1 + js/bootstrap.bundle.min.js | 7 + js/bootstrap.bundle.min.js.map | 1 + js/bootstrap.js | 3944 +++++++ js/bootstrap.js.map | 1 + js/bootstrap.min.js | 7 + js/bootstrap.min.js.map | 1 + js/buttons.flash.min.js | 32 + js/buttons.html5.min.js | 28 + js/buttons.print.min.js | 5 + js/dataTables.buttons.min.js | 40 + js/datatables.min.js | 277 + js/html5shiv.js | 326 + js/ie10-viewport-bug-workaround.js | 23 + js/index.php | 1 + js/jSignature.min.js | 80 + js/jquery.min.js | 2 + js/jszip.min.js | 15 + js/moment.min.js | 1 + js/npm.js | 13 + js/pdfmake.min.js | 3 + js/popper.min.js | 5 + js/respond.min.js | 6 + js/scripts.js | 34 + js/tempusdominus-bootstrap-4.min.js | 7 + js/vfs_fonts.js | 6 + login.php | 86 + logout.php | 41 + profile.php | 98 + reports.php | 205 + signin.php | 168 + signin_display.php | 80 + signout.php | 95 + src/Config/Registry.example.php | 43 + src/Config/index.php | 1 + src/Database/Connect.php | 76 + src/Database/IDTypeInfo.php | 42 + src/Database/SiteInfo.php | 55 + src/Database/Users.php | 140 + src/Database/VisitActions.php | 78 + src/Database/VisitInfo.php | 74 + src/Database/VisitTypeInfo.php | 42 + src/Database/index.php | 1 + src/Language/Translate.php | 47 + src/Language/de.lang.ini.example | 136 + src/Language/en.lang.ini.example | 136 + src/Language/es.lang.ini.example | 136 + src/Language/fr.lang.ini.example | 136 + src/Language/index.php | 1 + src/Misc/DateFunctions.php | 29 + src/Misc/PasswordHash.php | 193 + src/Misc/StaticFunctions.php | 105 + src/Misc/index.php | 1 + src/index.php | 1 + users.php | 189 + webfonts/fa-brands-400.eot | Bin 0 -> 118560 bytes webfonts/fa-brands-400.svg | 1154 +++ webfonts/fa-brands-400.ttf | Bin 0 -> 118324 bytes webfonts/fa-brands-400.woff | Bin 0 -> 76344 bytes webfonts/fa-brands-400.woff2 | Bin 0 -> 65316 bytes webfonts/fa-regular-400.eot | Bin 0 -> 40576 bytes webfonts/fa-regular-400.svg | 467 + webfonts/fa-regular-400.ttf | Bin 0 -> 40348 bytes webfonts/fa-regular-400.woff | Bin 0 -> 18168 bytes webfonts/fa-regular-400.woff2 | Bin 0 -> 14868 bytes webfonts/fa-solid-900.eot | Bin 0 -> 180720 bytes webfonts/fa-solid-900.svg | 2444 +++++ webfonts/fa-solid-900.ttf | Bin 0 -> 180500 bytes webfonts/fa-solid-900.woff | Bin 0 -> 86876 bytes webfonts/fa-solid-900.woff2 | Bin 0 -> 67400 bytes webfonts/index.php | 1 + 138 files changed, 31954 insertions(+) create mode 100644 .gitignore create mode 100644 .tmp/index.php create mode 100644 README.md create mode 100644 assets/Approvals.png create mode 100755 assets/LICENSE (LobbySIO) create mode 100755 assets/LICENSE (bootstrap) create mode 100755 assets/LICENSE (phpass) create mode 100644 assets/Main.png create mode 100644 assets/MultiLanguage.png create mode 100644 assets/MultiSite.png create mode 100755 assets/Rules.example.pdf create mode 100644 assets/SignIn.png create mode 100644 assets/SignOut.png create mode 100644 assets/index.php create mode 100644 assets/logo-small.example.png create mode 100644 assets/logo-text.example.png create mode 100755 assets/mysqlSchema.sql create mode 100755 autoload.php create mode 100755 changelang.php create mode 100755 changesite.php create mode 100755 css/all.min.css create mode 100755 css/animate.min.css create mode 100755 css/bootstrap-grid.css create mode 100755 css/bootstrap-grid.css.map create mode 100755 css/bootstrap-grid.min.css create mode 100755 css/bootstrap-grid.min.css.map create mode 100755 css/bootstrap-reboot.css create mode 100755 css/bootstrap-reboot.css.map create mode 100755 css/bootstrap-reboot.min.css create mode 100755 css/bootstrap-reboot.min.css.map create mode 100755 css/bootstrap-theme.css create mode 100755 css/bootstrap-theme.css.map create mode 100755 css/bootstrap-theme.min.css create mode 100755 css/bootstrap-theme.min.css.map create mode 100755 css/bootstrap.css create mode 100755 css/bootstrap.css.map create mode 100755 css/bootstrap.min.css create mode 100755 css/bootstrap.min.css.map create mode 100755 css/datatables.min.css create mode 100755 css/ie10-viewport-bug-workaround.css create mode 100644 css/index.php create mode 100755 css/sticky-footer-navbar.css create mode 100755 css/styles.css create mode 100755 css/tempusdominus-bootstrap-4.min.css create mode 100755 fonts/1YwB1sO8YE1Lyjf12WNiUA.woff2 create mode 100755 fonts/EsvMC5un3kjyUhB9ZEPPwg.woff2 create mode 100755 fonts/FontAwesome.otf create mode 100755 fonts/Qt2dUzVlMd1bCOcZXl06LPesZW2xOQ-xsNqO47m55DA.woff2 create mode 100755 fonts/UyBMtLsHKBKXelqf4x7VRQ.woff2 create mode 100755 fonts/dPJ5r9gl3kK6ijoeP1IRsvY6323mHUZFJMgTvxaG2iE.woff2 create mode 100755 fonts/fontawesome-webfont.eot create mode 100755 fonts/fontawesome-webfont.svg create mode 100755 fonts/fontawesome-webfont.ttf create mode 100755 fonts/fontawesome-webfont.woff create mode 100755 fonts/fontawesome-webfont.woff2 create mode 100755 fonts/glyphicons-halflings-regular.eot create mode 100755 fonts/glyphicons-halflings-regular.svg create mode 100755 fonts/glyphicons-halflings-regular.ttf create mode 100755 fonts/glyphicons-halflings-regular.woff create mode 100755 fonts/glyphicons-halflings-regular.woff2 create mode 100644 fonts/index.php create mode 100755 fonts/zfs6I-5mjWQ3nxqccMoL2A.woff2 create mode 100755 inc/footer.inc.php create mode 100644 inc/header.inc.php create mode 100755 inc/index.php create mode 100644 index.php create mode 100755 js/bootstrap.bundle.js create mode 100755 js/bootstrap.bundle.js.map create mode 100755 js/bootstrap.bundle.min.js create mode 100755 js/bootstrap.bundle.min.js.map create mode 100755 js/bootstrap.js create mode 100755 js/bootstrap.js.map create mode 100755 js/bootstrap.min.js create mode 100755 js/bootstrap.min.js.map create mode 100755 js/buttons.flash.min.js create mode 100755 js/buttons.html5.min.js create mode 100755 js/buttons.print.min.js create mode 100755 js/dataTables.buttons.min.js create mode 100755 js/datatables.min.js create mode 100755 js/html5shiv.js create mode 100755 js/ie10-viewport-bug-workaround.js create mode 100644 js/index.php create mode 100755 js/jSignature.min.js create mode 100755 js/jquery.min.js create mode 100755 js/jszip.min.js create mode 100755 js/moment.min.js create mode 100755 js/npm.js create mode 100755 js/pdfmake.min.js create mode 100755 js/popper.min.js create mode 100755 js/respond.min.js create mode 100755 js/scripts.js create mode 100755 js/tempusdominus-bootstrap-4.min.js create mode 100755 js/vfs_fonts.js create mode 100644 login.php create mode 100644 logout.php create mode 100644 profile.php create mode 100644 reports.php create mode 100644 signin.php create mode 100644 signin_display.php create mode 100644 signout.php create mode 100644 src/Config/Registry.example.php create mode 100644 src/Config/index.php create mode 100755 src/Database/Connect.php create mode 100755 src/Database/IDTypeInfo.php create mode 100755 src/Database/SiteInfo.php create mode 100755 src/Database/Users.php create mode 100755 src/Database/VisitActions.php create mode 100755 src/Database/VisitInfo.php create mode 100755 src/Database/VisitTypeInfo.php create mode 100644 src/Database/index.php create mode 100644 src/Language/Translate.php create mode 100644 src/Language/de.lang.ini.example create mode 100644 src/Language/en.lang.ini.example create mode 100644 src/Language/es.lang.ini.example create mode 100644 src/Language/fr.lang.ini.example create mode 100644 src/Language/index.php create mode 100755 src/Misc/DateFunctions.php create mode 100755 src/Misc/PasswordHash.php create mode 100644 src/Misc/StaticFunctions.php create mode 100644 src/Misc/index.php create mode 100644 src/index.php create mode 100644 users.php create mode 100755 webfonts/fa-brands-400.eot create mode 100755 webfonts/fa-brands-400.svg create mode 100755 webfonts/fa-brands-400.ttf create mode 100755 webfonts/fa-brands-400.woff create mode 100755 webfonts/fa-brands-400.woff2 create mode 100755 webfonts/fa-regular-400.eot create mode 100755 webfonts/fa-regular-400.svg create mode 100755 webfonts/fa-regular-400.ttf create mode 100755 webfonts/fa-regular-400.woff create mode 100755 webfonts/fa-regular-400.woff2 create mode 100755 webfonts/fa-solid-900.eot create mode 100755 webfonts/fa-solid-900.svg create mode 100755 webfonts/fa-solid-900.ttf create mode 100755 webfonts/fa-solid-900.woff create mode 100755 webfonts/fa-solid-900.woff2 create mode 100644 webfonts/index.php diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9955f69 --- /dev/null +++ b/.gitignore @@ -0,0 +1,11 @@ +*~ +src/Config/Registry.php +assets/logo-small.png +assets/logo-text.png +assets/Rules.pdf +src/Language/en.lang.ini +src/Language/fr.lang.ini +src/Language/de.lang.ini +src/Language/es.lang.ini +.tmp/* +!.tmp/index.php diff --git a/.tmp/index.php b/.tmp/index.php new file mode 100644 index 0000000..70bbb31 --- /dev/null +++ b/.tmp/index.php @@ -0,0 +1 @@ +Vz2wEgi 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 literal 0 HcmV?d00001 diff --git a/assets/LICENSE (LobbySIO) b/assets/LICENSE (LobbySIO) new file mode 100755 index 0000000..b088396 --- /dev/null +++ b/assets/LICENSE (LobbySIO) @@ -0,0 +1,16 @@ +/* + * Copyright (C) 2018 josh.north + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ diff --git a/assets/LICENSE (bootstrap) b/assets/LICENSE (bootstrap) new file mode 100755 index 0000000..a80e8c2 --- /dev/null +++ b/assets/LICENSE (bootstrap) @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2011-2016 Twitter, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. \ No newline at end of file diff --git a/assets/LICENSE (phpass) b/assets/LICENSE (phpass) new file mode 100755 index 0000000..14b213c --- /dev/null +++ b/assets/LICENSE (phpass) @@ -0,0 +1,20 @@ +The MIT License (MIT) +Copyright (c) 2012, Ryan Chouinard + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/assets/Main.png b/assets/Main.png new file mode 100644 index 0000000000000000000000000000000000000000..4a31f7643b5b9c78276dcdae41f24a7bfee95a6d GIT binary patch literal 147661 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 T?e4}aL7F{X{an^LB{Ts5YHJ2C literal 0 HcmV?d00001 diff --git a/assets/MultiLanguage.png b/assets/MultiLanguage.png new file mode 100644 index 0000000000000000000000000000000000000000..e9623f3417c896fce14d16814a993cad05dbadd0 GIT binary patch literal 149673 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 literal 0 HcmV?d00001 diff --git a/assets/MultiSite.png b/assets/MultiSite.png new file mode 100644 index 0000000000000000000000000000000000000000..50f66ec5fc26771fa111884f9a00689f9f34d2e2 GIT binary patch literal 35352 zcmYhi3p~^NA3t8Fq!cQo+*ZfwA`!{lClxBWrQEN{Z8MiJm)Vp{l15jzxs?oIbDP_Y zP*mrOLm_@%X02@l?U5? zg?D_rY#UMEb7eIz#VMm=cqJB!HM0-*A+ID(TEp~HPZ$j^ODd@iuv}7e`m_!xX)rs5 z?T~Kd$A?url+5gW!f6Q(;b;Bw-}@+H&kYBOS*HO4S*NN7K9EvmB1!l5ombLFQiQB# zlyrtXhBghUZO)3dLB*)JbmZ>`ENkBS<}bGUb;m*m?(=->Ii+Q0l8L|gyy7~(=T{cbKV=F%mZraHxfK*yJW(Cd!%>+Z0 z>w#XAslIi;Kb_6$TtZu?X+pxOo}(h6$Sit|6*U0Nvt2ZxIk_Mjjx8=DGVL-0c68^s zZTRpZe3V<~dMZuV^Hiu(ls{H~jr)<}2(`GOrHgnc1I%j_EPp*tSB-ty7PK7rnC-__t=5@rD~k- zjFQ@1w|+?TX!~@3p{Pg<(A@5fFD|;Xbl~Puk^04f=?a}i%Fj;(EQAz{^Jp6mH|nv4 zExep^gjc%htR$R{6sF0n1?G48gffE9T0H2T!J;3GWdu|0vw~T&Wi8vUJR$)E&P{`d zos2y0OF0-D!@4qBeTTqlaVpJ*M_JD%u>JfH0r|QbIO1-2N z-Yobm!dd?J)jJmQOF~l3K*W!VazDkdQ_&vhx`)~}Pbr$YtnGD+_}D=?Pbh8B^h7I4 zDQS94O{GD#=@8N`#3!&n-p`OTOaTwyF?kE}C3!dWFFbkgM6X~s3>^{(V_2_257A0q zb;U=rHBp*(+j)^_D=W#Jptw2%>WFGb9WZrxUBd5T*?qbYiQPC%MJ-pdi(9IdO;9a!n+<601Z& zlw7+9g(2pQtwadbpNV?A8I4_1rL#1&OU4p(V=;m0fH#L)0}9%sK_h8l9hCO&A#RvW z0F>(Qf&YfLA&(UP{~6}yLVB@t|6%&6rDj(*x6b&xLb!g?K5Oz-NBy&5WT6bug7-fT z;E9HOBXbAvrm#tJqfh#BWlD0WLwGgSJiN=ysSH(=$Zm*fhNN6Iq}XMYvEHY_BL@`; z?c%jtyZETS85fGb>Q#B#^IFul15uA|cv`yzCscIKK~no5cv8xloV%@y|0y0P28S zf&XeOq>=|ZBGiHH5(t$=J?^aI^|UJwZ~{M$n%iwyp&85pcJSY`oHs2tjE*<#Z}@PZ z&g2VsQCa1vKC6@!C}^^^tN*UQ3WA>ereTa-s(*5Bmg{P=_XC8Q0x>7UMgGmOC*8f; zGI!T#&oE11sq()*=O?&|yF6|KQZc4^Tya;0D$;YHKtNpFF;eiv^^fgl#HDxZ*}86X zrO_Erub4f!22F7OmZkpB%jlD9d!28)eKH!U!wGc)saLar zZib-?-1{}6QbAHrXPol_ESNl>Pg&Qm#rcBYVz#Vlj)zz`4bYSuojrB#>d}`+SjK;Y z*Rm+5$aUhhDX;iwyrjDxb_ZNZkqKr6LPs3QYjbC)=0Y38f%O>p-4}^cEd_6Q2kP7YGz0~1p39fsV&=Rate>lF&gqA=jQB| zSi-~%c*Br885`0E{Ol!r%@0wuLbAf0cy9oKsWujpR$nxa#=_YlaqnYA87s)2I3qzY zIAjo3dbUu7lzi)cn1+vo&{9i4umAlCt`7u3>0dTs?_Lerik47+Fo@S0ylRL895gxt zetRq~jji68{C3{Glvo(@7bBcer%tqG9=<4Z>0Cr)Z$|cG7ls~0_9g=dyt#~6pyk7+ zJqJ8F1B@7ob7$?$#}Phm`11;WmNM=d==VjaGN!ujijV!I8QOKT7aT$nw4gKD%%4@F z^s5mTdAzEW9HT)ck(^4v?_UhiX+?s2wN+v@vHT%gx_AQy9?7ynN4>N+J45fxg?{C2 zPfH_d?1fkQF5&9a&iZn(o^0Kr@KT>y?EB0hs?@SPTfA!OVZZxXRzyk2&U8HD`E*P( z7_I&|fKvSi+l8!rRjXfG;1{U$7TCKRTi(YKiNDQa47pks* zKLhygBiveoQR@+=r$BJrqOl}Wo%+4Y#j=SKcj}qo;IU`^#d$DuPCZbR3xpK7HJMcS zBYX{SWA${$tcBQ^oVa=e$++Is5d@~Zm?wcX3$Kx~+&yT5 zpQK(FTE4W$Sw8*DHjw`t0Vqg`1Qd7WuNyX5-Z9wgaa~89BfxJN>L0pHjs70}pNz}J zG+dOquW93ma?n!upIR3H^h%@_WYvn&s;S43YR3e8=YAwsg9acu4NN(@V@@SBblWWA zhq9M7)TH?V_{Y!N99wYn6*c+lW6a96T8c2a?GzFDv&3je;gKTN%)w0O1cAS0GX<(l z$m2G_m}bv^W-d+sIxh8%%4#);duLzJlYBCms(|aV^EsO)RQk%VBg@^yDujVJ+fLZI z>VVoHg@`+T?n>22iFutQbkK^;BYzYf2Vw+wswUUc2%aaa9sqe4O6xY1+e^wmy^a^! zh@SfjuEFdtXlFn$^_SEFDHW>J-8ngZaQP?Honb8@p=(Y#?-_WY6MCQ>d9jK%)&0Tr z=G6&*2Hx%|_y;2oFkT4M830+MsZKfmm+X+pmi53UW?mvvUOX;_)@+CPU%&ymaUAtR z5gb1}z{jOs_Nu31orJ!KfAMH>irWdMe|;h`yqt{KIEI#*UzT5lQD#_=Bl_YY4no9x zhpX!vXZN)#g*KMJHnZ53Z;UE^1Rp|=A5W6HR129-#dnWY0SsqKze0o5{f3JCI!v=` zw%-|z`^YDmq}=wd_iX}56uf@+4Ie8(nclv2Lm_(nayL@wq}DD>2k@vUU`|Nu0VLHCHdSRj>ip`?7E| zRf23yo%S6@WURs*JHr?TBjY4zd&aR&X|gMXe|X2@+~A@8 z$Jc`LyE5!cW>$jSQxXZF>_BKX;0g*vzSaK!(8h=LXa7{v9^GIL30QebAbqG#(7X3+ zvzH)yFY1zK>w-(DxcF2wpeCo5DW}gh&D(#uAk|k#-QR(k@wwPCP!06GzM=df-N#hb zxk6S?j{SE-5ni};?kmXGfo$~8TVw`nn%e+Z_RHTo)&aR#{x;c1oFUL*=2Fq(SUWN{ zkp{(nCN^Jn!Pgaj>BDQ`sNJG<8{qQ~;~r09@P}&d9Y$Wn{&g2sOYgsM8_?KQ5A5N( zTCf;HwjrDfZyk1B|MfEZGKR*)=8s)zDiprog1SX^MlD!r&T=nkgp4?cZybWNzP?3D z1yd~3iu%$GE_{Z=a2$k8=uE&4TaF`L+bLoT{@l*U`|EybfhN>p&Tw>ERv;F1lKj0p zmxwN^V}MSW>cD2m7=;M^kkbDN9G?hSyW(XQUO60Eh<+8&A|zBQF2YBKfr0;M!aRPO zHLgUjXX-;8(j}VGGScuK)lrL8f|y_51)><%UiA%d4g(5loisuUxI+hFF1zHDa5SC)#bh8pZsy6v}xn* zgNDoK>{`fYB?qDX8rHt;cn9iF<-1(h^096!dy;mnn!yt0OV2XtnZ$%bXOK9hh?wmn z--ma4>e)~94D75ZPuy6#A<8wiPkGiu77YaQ(&sgXvF;lmB0!#>@iN zvqGUkkoGHEAM>wl>AYay=3wA2>p45%Qz92{_P3oDnyK>4Zu#8*0)BU#pAl2j#<~Kw zLM2!4n2l4-JcsBbwkrk>p2%U~w2_ip!TMq2VF-Twd#nU?!uqb6gPXeN)T7Si6w%?p5I_DirH9~y1ef;OFT75soj#$`7e1dV{ zIYlGBNZyU7uscLS0Zj}<5AnpJ-c;xjW$y@_=x=hnFjNF!#jp7DlbaT)>zRmFcGTEj z0;kb@D2YkWO-@Bvq&Z|(2%GA|5Sc-UOwyLkaGkj3IWcUq(`Y@AC!5JHhCP;xTK^)E zFM$QUmuxN!Q8ql_90p{gSr9O68Ejs!!IQn!(h*?w0pome_FiYICmW74`W*SZ}p;NR$}T)R0kZbQnA-i60tGW=`IJ z*y{{m){1g@Ol5Gmt^w+*eyNp;pzoK?&qRZqQ9P<3V%UFC*OwxIwd^f;fnF(CH=3&zX<3xlk`>hcvjlwR^IBL`lY=FJbg)7IRr zAVQwjkzo&RfoUwqlSjb&b76wn8&9dvqE$=r8l|#9ykV_pC1tvE#(0UVh8jnvqfy4g zA?l{q&12hzfCo0tNn66#u2@N4QV;2icg^=ec^J=Gs1GD)#8Ro9pft zA|}qWS8#~!a%1SjrH`eTzar2z1Jf#z>(bw9H^5GYak=2UMVIqBB*@UvUTU(G!O76Y zg1@>LprnYN|D>iQ9a92P%=iefUvJ(ykL#*$|12i%SEh@k#nU%NlUuKTB>ye5+MIP= z6Lpka|FlExE$sI`QTy^MZ%nOhWa9$)GsZ5v?1SGe$!!zu4A@+ct zcxVS3-@%SJEM{$?QhVARi2y;3DpZG98sdEyuA2s0JBW8H+#+e+`C$imw$&HL2g5hB zqwmHg()0%Lc2>_dG_1EV3P?#$0Z%OPy=A05J-{Jv|IC3)`iLJ_mO=D1cFn>-`+qDYi9Q1sc{wq!mX1M#?tutj1{MG1i#Jm_h9R*t2`q;rdSfU-^RCe!3~0*<(` zU75p4?wFB-le-&sD;AC8aE&=?ij90wCqVTwcx5-|ZYnuKx$k8fmCdS2Nc7(Xb>Agy z6q{mE;hc=zWG_dDQ(6bd+I;=|>@L2q#^co;oSgVlrSUtY4KuVF8EU*^CiuiGH)QK$ zOO?)Rw)$t$jl2-eT1=Kd9~tZU)4M&djK^FMFtIN-|L~sDK=PF1jD$9ocHg!2Q(zbD z;|XiYppLBV9ofEBrnor#O0*l8dJbx}cd`MflV1M#p4Fq6TvHsCPkS)}1ggZ<77K%1 zo-<(=bH4r(dX{5=2Fh8c6;);9qyp2moZhigNGWmRpn`{=tr8CbjK~z1Te+m7XojnE8JjjnrJz&8f%Xyp_}@ z->BW0D8JuJqQ70m4K2kDWf}d8;GOPWm)+FMywP#XrqR7)X2zPe`lTBG+_r9M7NCoB z5SAqWw^Bck+j<6Z%sO|B_0vKND2duGZM1Xqowz>Zsg#~gc# zMCn1TF<0cnL^Vhl16WLZ3UQGWyHLO z84%Q0EakU>)R<#QLNu;&<|--NM9M(YtfREbj+BbGDjRLM3AMg9*Eky7^IozYajnSm zC0dcx*oD-ta9+%|dQ!B}#*Kdc)QVV8s;l8TWSi{INr^Tv-ucK##+$5ghd-5ezjOe* zeWrP?2l|+Dj#b$)|Nh)GF#R**xzK@Ps57PTR_Q*i3A&EPFjQ1`>B)OU+FUkTc4O4P zp2}mqWoVJ7|Fmu?sQ=<%YUA2(A$>oKKYs#7OAkpqPLwGIe|^Q1KFKt5>Nh zSD}%nr|CH~)a-iWwQcg$%mD_3pRLSsCDQ|Wi&fR53r{4(k6b(*+&(QK)V*e>+Q+0y zlevhYp%1RK$0tR=Uvp_CuBK3Holr-3%>Y}NL*&`DD?G9)w557F!7b4_wLoSuPfMo& zzt5e`3k>brJ38_b5OlkkzxCAe_H{V0F)^*ST@_ z43xGJ*}|tFsf?h*NF~G4%eJHKR*lIqyApVKi;Mo?P0z15 zgF?$hJF2q4TdAEnV`=4=hK)0OdcED{-J>?Ve&;O7ANZ4wmhDArI*v^pdC2yCU$R~X z1Vq`#$1tVN&X)Ap`{)e@--L`jXaUAOlM0_{1)`3xp`Y!~+uE*jjf+goOCgaRIhmA; zYb01|o05ixYhAi?$JfiY+OXz|%AJ&S+3L)^V=+jlmLGmijk%8sla|)L(I7+W? zi;o*py8}vF8VK<%+qwRWMkO6rNO~!JT@rGX|0{;l0$C2SAZEdu=ef(aW*;(X^Rv$4 z&$y=dhj;u5u+OD*p)2ZBS~B@{b>)w6joTkZ1qXUEj21L>`|6XivIcy%=ayDC#wFL- zAawnT%l8s~?+R}7UI($1I(=f^B&K9P-ofm`pbyaM-?ZlS1fLi|Ah&rrzgMH40aP!% z_;}%kw%K|fVCVarAM4*om-hsmmzNpNp^T69*Fu#|H_ObKzuvcwK|9P%g)zUKwL|;O z8Y5eh@6%aNFmm7HW&H?S4^0C%lmEDL=o0an~aK55F}*N7b{xSi=}h)bd(ZS!wWhvGx} z`PO-R^~0%pDV8eulh2?X&EC3Am1WUDPCe>oQ_ejH$KFCbsH11YA>0y;*bg~6jbXT} zvJOTzS1czYxdDFj(Gpiz{I*N-pPAb~UV6uiXxoV#(ejdh>$DppwDveiYCvP+Mw4$t zkBi16Ei=d^vDgaR6-Zx^Up!~3BgsRV3^S`b0?(ej|HalP$Pf0N*f^SHwf93~=uU1? zPhuXDXn?Bk_y*sh#h*e&l=xJ36IC}bqJmbf1xk94DK#1z;Uj{%_HQkkePBiglg}3? z8z9BMozKiaR#6(n`JCJ+r+~<_Ca6c3F4b*tfyK!&Kt*42u*dr9c~E#NleAa=j>X;* z;QhX7`4>dATSuLf;dqXCM%Zyou(0R`@3MR71x#{bml-``zfobB~?i36Q>!c@ML8 zIJjwQ+a4*oGpj8C%>X$DyR4S`adxyg`1XExZX+EL)z|-4a;LC4>sQs(j1jbzpOG1q zGk5D2)!!&HyPa&)j~E?MHs5kp(UFXOZl7n)1k8i(I3KOxQ&6>iSR#VmD7gLI0MSJN z+C&4Px*r2nn6wX;N#IJ%QFB<6r{rkZ2x8R34%LgU_m-Z_u#RjVB^fQe8NKNNS7LXM zF0yN=<{v2dwMxpt&S&HKEe56Gg+RrtC3l0cYvq9SqTQhF*^YE1Z`eI~5RJgbv8FB1#Q5`~Yw|4y{~qZP{xEac4cNvSh|j5BP4F-Y)`N;RY5UC; zPHM}HkL^|+5tL~3d6XmiJF|1!yEdWyos0gGny9|-ah_1*vRb*$9ftj1BxrCHiX%NVeOnZAyJ=1JcXOK9a}!36@) zzjnh%KDoh2q#jrxwvz(m_p@iw@St{yVRxacisQK$t(>qGRi@5*bpH7s0(`zk)~OZm z;eIhKI@9zB_w{>wx&^e8DW#_ErJ`gD{aG8tdmU38INA=zMH{S_16YMet1-#y6J=vq zJSeca$;|45`cIW9t~`rY5YRh{)`@b?lXV)M=CemW#B|L$D5$`X<$Rdr`00SiUv1fC z=8+R(BgFGFtUF&-sc&{R0>WN$0-8zJW4>X}8`Zl*m_+*cm{Gqzm2-ie6#yYb4BO z@kf?<-d+US30{@-0drVV9Tj$4=eW6jcb1M0;zx4#DrW{c^4O(=?ZwCuRXI;sNHErS z7h~XfAqVl*V;I8p#?N;;)aUsac!cGMA@Y_DAWZX&Yk1D`2*HakUG?R*Rfs=mBH$A0H*Q|iHW zH(Mxo@X7C?MKdK?T4M8aHAPd8*M9G1TloxSdHGIax&woq)_-U7=DEH@cLruceW8Wz zm^V7=xH>xxSwa6=9oq1Xz$9J2Fy=yVR^7He>4{fdFgM zjjYOcz)p#%K#cm*xzbtVN&!AQsO|Wwe!aB)4)Wsi6FB2J9MPHVN&0S3$~wPwvq_>r z!al^#o_WYDv&MHJ+Qmj?P@;BJR>L>{+iki%ijIlCg}`OK!>5e(zk@274?1y%AyQL? zz+zKc=MAW}bj-0ZcaZC92gnAhT7D_AxX0?{ zi{>(y>fyJ*Z^coMGwWT=b-B;G)|-5!53%m(dS|d3^4CSwg&nB2Nn2f(SG(*G`M)h8 z{K6R3sE6%BLr5@=9%mpf9bCya$P-b&$5%~>8bWu~v+Su9y)96-^vd|d+cRdh8}q7E zPa?pO>WS(ssp7Y`Cj8IpU#%r>4xbOi3Xi*b&(`yeAKCWm?Eq)ZlU429O27`n z#7Wb34lRA;AkKHtwl%yRh<(;GniQbY;OT@0FN(z{1ibpwACp3liTq`3`*_efasXj8 zVq5(oRc=uDzzq%vK{@{8)7kEZN9V<+PCp?9u~#hvl00<8o)0%5k+y7?yecR}e46q}9OmEJdUaT^tDT-pYlZ zoxX8HAaHKz7{FTsUmmYx#vJqcC-b@@DwF6rw}O9_|0JBiYX+p5KfN1s;7fMD58eWBsavmKN!$Svv-fp7*+>uJ?#D z4A1ee1e#f@%!b~#K3XFl8z3|+UZHSH@jiV)&fy@fVO-->-J@`-nLr9xOHFNzrtAAn zWo$T2uI$&%f=LR4Ei;4Ee7R-|(Iq(7JaJE86eWNu%QD%GX zhNu9aLruQ-R@}sK`#plSyhYv!0ZpI3qMMoiZN&=P&>(T?3 z)`zmDd$P3MlSLm%W$V~#7P>C&#)Bpqcdvy(_;VGD4l(PM<_AZsd}vJjlAgsE4yRa{ zJ-#HwqQ;Ljz%nTzF(`?0{O%eWcGS##eZQN-b@c1nb}zy0!e&%hQ~o)=V<(oc4Ly@@ zzR=M5j^})aayLg*5KqZ&F=#T%ZMhn%7Z(#JLB--@yOP(35_|MmbVtYRwKHg%!{Z(Z zaquXX_}|d1E%3+E-Yeo)fG%?`xR7gwuTxM4!z{63chbh@*ixJE z(c>Z`GXJ|%rg-LIcEp$Lu(@|xk?V)xu028BKf)Eea=>BR@4BcW8{XG6!`%6LRplzh zMlC}nU~=3QsuEVYcU(zCFlOmgvqabKl&1tP4y6&||q@Tka%6X#;CbrIX* zBTTHSRTq)Y+0`1(;eC&VCL#xcD`^cdlK`uEM=GuKQe*1XZXR7Ey2lG}D%qH*vtdzTU8qufy z72=(Ut()1Tan3%BxN>G(_0)@Rgq*@0DaVWoNyzmtZ~#(C=1eVr@R;Bl zKY@xhRdR{Cc8eLH;)779ZhbxPTygWOuX_Qx^|ObbkUH-o35qIa z)CctH)u=v7*4KJ8Hy@;NLc~ZQMndq=L4T-bt?pdt1!ZtoL%sr_T8VESIloxn{WxPs$s{5o|?K(DnVwA1zVX*G#?`wqrIv^C=aE?9*w1@iyVN7g z9z;1ZPgekAh3@}V$vCa#>+fKs1Kj8mUMv5r1(UarL!H5ok0Jj}h0PJeA{~r}=1Ff^ z?TLv01*)-IPn3>y{|!8Cr)_m;0OWT0oS&=HmK0T3utp5@q(mol5JSuD&&h-7H7|wm zT`cuMi?$Q_%&Pn@zjHDrEKB;hEC1kNA~mO8OdO1$^zZ#}53fDxYg^=lM&iqaA)}Mvh}J;H&abCAC(3d%;+A zgC~6LsvdA~$kvU1wkgRaVkKIqnwm^g^cMeU#Po5xc3x*D$?3ksgmpi8c>RK0Ggc+wY%RZHQ#?Q;XuCjHvR^hg9~-_?TDi% zRWkzgQ0=Og+_{kJqGPc) z+i25AEor@vR1FILd2e6ArMXXS-9ttT(W7HG(BY4~s*oYJd{NR79jw*^9%~p=b7Fa zX5w2bfcAY!Uy!L&=>~+Qw!<*~?8^3MO&xXGSbUH%LoarUL!bwoP2HVCSP#%|6I=`U zCP#@A1(5*%`WdokTnwLy-}A49ZQ@TAT;A$?SF~JN4cvSNJ(5%XsEO%C^=!iCGS&21 z;ce?hI+XZ0Y?qW_t@a2jsgBMGw1!gP)7d8G&MzZ-=w82@2fh`dGJaQjANhjC9Y4-K zH2`BQU5IShkb3=L;J+PZVx9W_K1y$DYYfz{akCH1yK}1+?jk%s2IBDx`LV5x1Er&* z#KptoV_j$dhtM3G0u?lHmxu#Pi()yoRA*Ciq#QWSdOJbTY%o1sZxrkEt@&2tcc&zY zi3ia{+M;ywPjwTF|G!x>MyMRXf&a4m$dd!|2VFv zA`sQatZ8Wg%FnIq%uly=fy6x%DBYxkdaOvkEfjZnwh6EbUFJ_c#QGv4u}+hSnT2)9 zoXVEWq{E@>PT6bF4Rpk&0)C%$@Ql)3rz1w(A|f^mjB5l(1UNUlYJx3D>4tfG2c}*3 zNwBt=v_&?<{5EXHO0z~Ka-_yC86w--4&psuC$2}BqFV!c@isaN#a%-7>%$n)g9Ghv zQ?dY+)M11;ek7Oq_D!@EwLP4gDupTnV(USaq*iYI)i7Fi)O_HoRStsZ2v?7=aQnz~ zK-J%W4&T6wZETawDg5f%-uRuXo*8$KcckLujbh>% zD8MUupoH zM$d%d2M*Hx%I)TZ#ZIlT-GMQlYu=keh~s4$-(5$>B&e6JQ>r=W{fX3S-~}IX=0L^y`geUWO4!KJa0{z7uFu;0p=q|7k*dByXFnf;;-yt#f5neq$w}V5jYT z4`TO_zuVfwlhr7~s(BsrE)R9@C*;tmvVK=s;Lj?z=h48Xw~O1acy*)r(vB-hH1uN@ zWtoZX+6q(Y_gB*zPm(ReKeb9pUgt7@twlKb2a>B(&O?K`@HW=x9Hrxx=D64Pj?o_B zMEBqie7J7Xq*hL7#2#B{D+#(#7{nq~O_X(Uo#oX!*jlB8LU$L$?kT4B);*P${wx=_ zd|D<9QTIV5XtUwHXM9Xhq3-?0t`ik;~^Y2#9+&5ja0^AX3wsukxFAp~g_8$1V z@I}}z}De=WZ!%X4ooHTcFGnu^NstxvGEF{H*nT9|RyooD|Lp1M|!^_pJ>jb+3L9rQnU z@|}Z}$i+u1I;+YkJ8=D|T-4gJCQKG=S^}y)@lBaF-GKSdzfxjKIGJo`M|x&VxFicG z+n%VMN|iy~Bpb&#RDifucv@MN%*vtj zy^yL}i_rWNh+Ec_9!0fA;x_@*)%&-A54W^Tg|X1Z{L{5TE;T0{rL7&&Zw+qQWw0yB zn}!|UP!P3^kNbvBlh>qQc(3JRE-9+WmWi21b+hX@pitq`n3FG$T+&9`cyTg%z^Sf$ zzlmUdy9V`miVM2(F}N8Y{-c^ASz4t%!}V>6{|H`GJfB@%)JQ_cx_j)Vvp zjAg4IfV4JeBhmKC8nWXL4n3d0y59nRqloe4yH(-9$rFapjNz?K5%8R*f$?0n;qPqj zJhxQ+( z%IOlBylVCRh|oKlVKR*V01Li_=IBKk^7Cr!+spPaYbz^5>7f1SNO4a*$o1$OiEaBQ zV(b}JdL{tBKKO)BsFes;-LyE79vo)@nYy}T9MSMER}zp>4RWiH)vaSN{y-QqGal#= zG*cVAA*^3&mpqe-DS4Gy^El!MkSfV~-J|=EF0Ghi*E?$<@KWd^BgByqxir}883(qH z?=`<+O|X$LN*YRmXBo+1+XWfw(OEI61&%x?>Bkw>3$*HS8af;HJ1uHLnQt&Mw=Y{x z0O}>!&`Z|$;}1M6tE|9)%n7_usIyC1*V^NwBHHK*-SO6&>&u7v{0Q<^ict_E)w&Up z0b>BL#97(`_X>+^HvTIG&KJ(Sr7PuAtN@8j|Ml`D68s|w$%^wDhWE`-fk!Z!?SIrM z9P;WQltlR=B8P}*|KBsY{2CqcBRgzNY$E{})+uangbv!AD{)VuireesDMTY&$Y|;x zJ3rrz_ak=H$+p=UX&`@4Lbu*sQry)v12}Er`hY({>Ij6dRp#KICeD;p%{v$Lb`jY_ zJ^DVlhOm|w5tq~#yLJ2%-?sAoE7259%{^!ot8osuV47O}-3>(S52=8fBYpEmdGbh3@>srBs87vC+RwF+xo`*Z)jELNp7;Z1oO--XP3NUGoQ8#Y(6eqzn9L)J`Y={f#gwVIB)vwUA-nW=#H;kVUA?!(lH zd!5x3&nzwao$k%as0l1QT7mFGOED3SRMTSa1EK~=&j~DYiIa0qc{T}0=ksr<16!(9 zGG=}MXe8g}eH6_2G8_%mI92Gg`dmNWh&(ln@S)+1)Gp2{mV7H6>z<_U3!WM2zBCvk zs`smBYwc}LV(=5sC zhUTq*tquhK9mQc8Qw1#G%t>FPiqN-j@?!sUJP1`>Wrdtgdx&-+OGU^dYa9fiaatT= zG(PT7$K_$EvcE<<;DPfL-eK4h3d*F>YPIvtFywt-P-dT_LErkF~Xx6=kV^fZlWiD1Y!4k zI4=kBl`ls+!*}w0RCYyqy(cn^X8B~ zSQXb7jm6bC!AD?J^7pS$l&xcC1#4XZzKXZm7WW-Z#+GuW*0VEHvU=;JK>Ac0>g#-kN8`oC+5OKUTcr)!Tbt{XgxfDI<=-Zd3X<5wSt!>hDoVc)Ne zS55p{d!@HZ7Tbj*2KXUvHzk}-r9=ZE8A~2iOowzaY^WyuTg`2pCAxzhxRYs@UODu` zl1JVV-JHor&fkv0p>N~EyMb1RVOqp7jgxi&9j~o9=Z?EhRleJAJW|f_MV_v^(S6U5 zFRC#jgpJRPjCz)_$i1F3#L=jYyui&pf20ld z%lx~ySg1J<7IupUHCMOWtw0JOjYqK2O>kdU-F z-u==)KDwo|3b=4`g#;)5F+;4kg!18YAe1>cPKEYVIa8cKz!42q4@?# zkZM#3ZJsI~4160@O$2!r{YZ2Jd^VlrUp6g&nbW<%9a_(K#+e##t73@;070e}x67~v z|JT&6pxn|<2@<#HZW=~P5U5Ea;z=xs%M3BCtzguxM$^Jab z`h=Cip3TieaF2kI$ND>6;G=^@{LpjOx~w)FlbPtz&E9oKi_zVOo5Li1_fZi*-k-@F z5;3DQTCTrC(ie`RIgIi~INPc$KGpfZTk$MLDxv!QOP+=4xQ$|N|FW`b`dbqy#q zwJusEM^S3D)EJYr;mJ@#=k$ej&I-5VvMtQ5zozcEH*$pyzm&JiH_np~5?{Nvt_2xe zy|h|I-h61eHxnaP%wm_X7L1m?9`PHU{s<|c+$I+`Lqn6nguir5aTJjj8bcH3GbkbS zfa>&HDW0iazuR@5Je`}YMym_6l$VMDQ8J#citXDNGL}2Uvt^Ot7IW^hdDZoNJKI1z zR@T39_l1YkZ=OOg?c_J2;J--^hG=f~0fth~o87;GBO)uLU?I+$o8<^zB0_k_G7kel zZt9$ZvzNsv98%PM;Uf zvh<*vAE@4_YtZfwS+5aKs^8vPv+=dZ^r18Y51P?lO*cwIIEaICAmA zk(TRt>SEQx{+)4WCKsYM$Mx_b*C^)m?~R}DakvO;HjnA9gG8~H+qd{X> zqx>&}&_%2sGIhdmy#RuP)W9xMlsmwakjq(1q|^@NK5@;DLBIsd3{atz9b@P+K zdU{}ore(nm2Eh7bX)-H*bY~wApXI_D3|N}Y25yX zt67K#=OAAH0YvkK1Ebqrql1@!uUw|{7MuKCxc#XMf1X;s=5t6kJHy?4eYQ8@KUh@D z_qw>Jq}Pwd6fb-YH_?$wC@=+8Q^ecOMn17QbU;0$^h&91GPFQk=A14HY^9QtC5zu) zc<$j9&4@X?D$iz?G2n}c-C~N${jhw?*!TS5h|riK zzv^1cu4>okm3cVAH8Ax`Z)ev@xp=pP>o@r3W6Pv^W4v8=PDGbyJ0regJ(pOo(e&Zx z!_LK@k)!;r3hn(d@OzFuPUwLHTx_Q%kn{%x3c)*7I@2b|aq(zH ztgX+iJow-LBGGwos>{xR%RtfZgb+{ySOLod6{LwsC$!KZ1k_llQUXaJM5IVa zLQ4V(NzM~o?R~$!f1GjNJ;okqeEGp}pgx(;ocFxvU9Rhz*LT-N!{Oy$r0%=oo-xNi z*94UK_L7U##{kNY{nqwzGfl{Kdm1^=VKTAjrX!=JaKz86Yb%^8w+Nl&&t25I?f^vl zMLFZU1$EJ#5dI_4l{=}_Oiz!tbRNZ1S33ef{%VkR$cRsRC@w=U2D8({hi{Yt46B<# z9s|~TcKVCWtL0L3rSbzRjxBVV=|Z|$O~iFO@b`{mYiq#O3k#2_3p@2x{NKGsY<5l! zzHg%Lvwy@EKC$|Q`nq+tSxSn$Cuo3f7VlJf=V3+dQ7`frPm|uZI+Ks*5l-RLMRMB8 z>#WG{a%?$m&l36k3;KDFFPY|$!p7sDqc3!0tx*k0y{F#|m3BcUn(Re>7QSh2H1`gy zeL%-{srh<3+ZaXSeTDeC@k>AHz`iej@N}E5xJ9GOm=4P^$hg_2_ej^`bl3vPo?*nV z8JiNA2$}@Bn+dG-R)qqx55T$IeWkB*^l+|4Yh+i1?lM*`5bo-&hj*3PBzv-6RaE&!kk zgx+??-ceTXl8eY0-se_4A;| z7Dv#-W^yLi2JS5lEhA*+@`aG#v)&0f>7_w$1dqnyt`p?RTj zPXu!QexznyWX~ji1$&Ow054CfjA<3|&hP~@Wp1ZcL%tqLeKBoIUPj6k{lMZMeemT+Y%e}VQ#`kTwbc9vlGzS7P&i>2vD$?Z0%P5 z50!?iB9n&rA^znWUK1+o!g?p`ffkr(yZ${f3iTC{i^p98A}mct`@`t(CpzJ%vyp^@kz_DLkAwk***Xj zkC01#bhk$C^puykBNgPoH%-;aaj2JnPNBO(W`8&4yu7>Yb2_bh)0!!IBX`If)+l_s zO96m+YNBd?@T$L3(aIf*kpP$>_hh{;KV%J*G@WZuKYET?$E8N$awy2>8_Z0xSF-$n zMur<@?Q+|On-yt(5^raw^n|bLW`rFHZD+1Pc>>yG!#V=Ch)Ps`k@= z`~2_-GS@?3+LsR3Dw-ON?|D$jt@m znnv`dBz3oU-|XK?{z|(2rM~CBrkf^xQAxEJll#Qq0H;fR)5!ZekKi_Pmzs+*OD*qY zE5ro0CU00>{hDtuAQRS~*wn+sU35$f!ffT*-n4F7C>r}_3}CForw`_S>5sE=LQK6@ z@3wb<6N-K6FuLU;ea4Mj4>((AmRmwKkru^-EPM$Zz+weTjUOst&QeN+>UtIHbJX+Tyh~Rg&tYn{~=j@nwdTH&jZI#K5 zevDBbat`&nw2xahx_V%!NtHz}2hbg~%pEarMm6qsZZEkz&~DsB3PLt<@yoh9=?69yC!_=u~*^B@yH9H|G&j7 z6B7fGKbE{v`diKiSvrL6^GcPI(;JG&5>&c@f|(EUr6sf4IP4Er+Sie4?rNyM}rNzlHK=e zez@Yyf_99Pz&%{F#|6FXv3*-LccXQq#%XsCZdECto_-O~mcY|p=Rplj{qiL!>adhH zMDXLT|C@;-H+!4Z7kl&C>iO+_;-e-0MWg8M#FEDO*3B{LB&}Ur7`g4XFwxxady2Q}z zpD?rVzN+Wk0Ice^4p$4dD}a2?bF$l}x`+WHEsn=Xr*OKH#BJglL*6?8KCT5P;^X8J z1KogZL?Q*?F9jZc9}v86e6`71S4{+L^)jUzD8fVP4o-BW1y6il>PC-7k_r)K z9UW{Z*X*HjbaPqx%e!y4KUXaOf!w35?K3vEp6r-j$r!6i+N^ZZ>ZR@`o8$IfJmkLE zmqFs9lxgaOIZ8iw#I{~V)4kU)+BaU}W~cYiyi2Yt7RlmY()#VjK@X?=Q|dLo?X8rr zze8bKXFC%=+Un~Aq_D716HCiP_Gnve8B3^JBu^nUv=%jZC0Vq)sjY$5;*&ucHU5F=)7o1TVHLQPeZXJLO z@fuF_u^%A{ABVjc@6d7~If@VCBw-?Qwn+<@GDKmEkCs@PztHS)yvzLV#7ISxo^&Ag zk~j+RR}LIH?}*QT6xoy4$Q}%W>~h%QRvPpX4Io}_M2+A<1!}iOeu1Fu2zEP1%_1LQ z%-;vRO^!J3;F?iEnfv`Zs!Nw?G2%P=jIw+?8@sHyCBeb<&gi9T0749ByABT>r*w zkTTYJaDidz%YcNYKW(Y|{wg5nIr?_jkeOFd%MAc@*z*8HF|G-&t@7)=3RJ=mcYE){ z9XXpQrz=prwl?o!b`{W5+{K=~TG~^}v(H`!P(^+>SG8K=?{BY{OC^E5ioRe(4mT$* zkxjUh-Us?aKe*UxNbd1Rg@0syDB_;#)cn|2(l#|Q$7@h>&d5vDxpTJNYkckJ_}iIfm| zGLZZC49`v^yfAOBYJVN=P(J_gVDSgEjs#KJU%S@b zX&*NP)i0%Ko9whjOaRVEPrW=aZl=c-+|0Os)i_xV0(<%C5WtKY8bv3kGea0#%bprF z9WCs>^{lD=I`&HTTGYq4kAvSOdbORe4StjkFu}seTOi)Ci@P*C7C=V3>*+ozCFXSF z*~M(mhc5t)xgP-9JLykY$oW-{+Jz5;;%al&_bhnE`?a;pUHO2mE%&;*dzfAlimx^> z>SL^aH$8nDHV+831=Q;9bD%i)Rk{;9&k()VzWn5?c@XrAYhWE!cQ?hr8EKn6vD~Pv z(1@5Cn<%&gjcqy3s9F9z-^nvM?5C~3NG{r#LIUs7nNWMkH|aQXL%!Jry9ew~QPm%a z=icpmGv&#rh2nhO_AUE`OflkP(DfSJZK1=(gYMspQ!dP{OB4y!g{EdIk?uGHg-Q=v z=t3KT!zZ?+J$NoEM&<4ZTBflCZ%{d3`**V$Zu`jgQ@oSxCn&x$+vp7O!5}8qOwK6| ztz-Kbg%VLoc@T??#(5+=^r||_2giBn2CIRHSt)kC8OxtCZej860fOhEIXBLly9}{x z;c;yM)Hi(|ll0u&KlnQ3bD=`=6>!;f#1;ojS0G^u1QhYSRa(6d>LB`W%x;JbFMB(% zd7KbY`Zm)tnhin&a$FM0m8)Slh7n)SMZTfDecQF$`v5E93-noHtc|*~my*PX!-KrV zF!GDZa-f{?<ubFEI8>7Lx0R}NZ!i2 z5fG`V71S};^L)ATD)vgx9c&==tbZ44C(uMxk_Nc;;TTfBR?poOZ9wwP<_GcArIGQ~ z?WWYXAw&q>bK+pO4f>f2lWxETfZRiDsSRc&a_A?wReFr=9KoDy$-Z&QSD&uV`&!a{ zN0`S{G)fXJIvo)OKowxvy&@?r{=%!u-s!x9=Y974xDRhXNt`HYHvymT7_2h);pr#< zIG2j#&`w_|psy@0sVd19C_cSR?0Q&Pe~2m*i!Nyr0hPLv8|ljYA{e~4Zhva{G1ZF0 zQ4SCw0Di`^P%$ksYKe^FB6l z?J9uUk)3z7;hRNXN{Ghsng2)lGbrq{n4*uU^Tjk$VVYxJlY2AP>6j1puz4 zmY-^PA29B|o}d3vEIeV}1Is(vRvBcq=t@;>Ev6Qcon@mzX-peA*B=Ei5aWT^KEHOwsbD*TGZrvK{)zBj*Zeh)nGK%~NA@)h?OYc{fm~WdV$Y*>|gG4T2W(EjFVJgK`i}jictvP!smQ z^&OwPuLs1^m*&5!N7C&DQOo2aOTKpEqbE zzhqXhp9ClOOCIAoM9xKz5$XZa(6RLTEmobXvrtiz{abXG->!i&2cxYI%}M)e_LuCf zNtsu%2%QglkGlkDA=;3BP;FGL4-*8GgVh1V2~y(C$T@kAY>M<-*dw&X+GuAW1bZCadGS z50PgAOc+h+*!Gt@)U^PHyiUBHI;-Mh3w8*rhne4bs8$!+-g1OkQWLPpTM&NFfLK)? zUHRVKu}s}yOI4U{_PW+g%K#a3MZbc|diBusX!^6)EoX^#HmORPe&Io3HY!hjNI|%y zg^;O>1BBcIbe_KUjp3>xgJoHQhq|(J{f3fwzu^8f&B6;oUd==N7<#=g&?#Tig#mEp z7eDw0FFq9SBayB<2H3d~xwF^AN^^h^s$k)-j zv`F3$fQ|vk(63(L`;q4e$N=c6ROq_^q>IM%rmCF$B9E@k=QY!3=tBX%;q(Gz;FYY) z^4s@c>&a`OwB%6-?E%#Vk9#L{W6?<%$2}KR!hHg8EiI)EwscI0j%VF!CJt?p0dzWofbyi_E zRi5b{vbC~(pp;SrI%g+5eiAyoz?8q|r@SCcD1Ca zi>d0TxfdBx*1REnemI)!lwSEt?&Vw5*!oiPwJk!gUa;zfKU5hI0HBw^R;#KHK~Y?HDlgb-PirPuV(Or2*3XMUmOR#is=&; zCwBL_V##UVR~Ry+qTnSh+thpS4qfqEETUr$eF13Ki1XZmIB12OwoXA8wtA!q!%PQ< zqK@U8AhNG+d@gv4HhW0@CqOP zTnM1qz7geaG7kENUd8oiw&3AwGD)gc_HIf(Je%+{@qyCh>D7Ai+j^lcsmkWXBPEST zvW8Nra{(Pb#^#nT32rwSK`8wpXjrjA-u9qRK)`y?`|c}Obv3WIhiXk;RTe=l`q{Jn zyjQ-ff1h3sROiohVts>s_b)bOwTHJsm>m^q(&hm?Hdxc+EfQ84^gzyhi2Ywr*Dn&= z|ArL;hr2j(Ke+L4cqtIWi4Xncf7!QN#j)MFe-Pv)x}<5_B{FyYgS{o;69>p%cWwFy zNkHPLnfS!{CjnC;We1SmRsQQLij}h+|ADOf&kk#xV6r%}dbPwz_|s3<7Q3T=iX}Mw zA(kNVpMJGBa*9#&R3RXBt`7kBfV61k?XG_Rn>+EpV_N>>s}&NiznCbx#tBs)-TM_O zjySO59{wNpWM~Y&B*|76;q)IY42#8RiUFO4zsv|f=`K~RE;gNBp;$frPxJb(f1iVh zMMv?g)dxkwcq;a=aG}!)!6%hHiQ?w^PdpcT_JKrqX}TBpF2+OnI0iIoIh2zI5kVM- zh2IV{CB^uHX^e0RGi?Fk*(~C=0M#ZAz-^Jp{AuPuWlKp~*!Dc~Q{)6yq|S*Fu&FVL zYKeYegS^`h>Wp)m?6nsAL|joP{~3h;xjJJd2a1|OtH*?%w^8i-S?E~VBKfL-z`!Q;>W%26U%|%=bDBidCIN&A zgvz#$#818QuTLeR2-u&`)WnaZfn}vm*<3RE=X{#B;Il8T>{pQH-)kTV6m=5Mu55PI zqQ7nPSMW~ovHhpSjy0roCA|4_+XB2;K&&2E6#PFIIO8xw`oUyPvdV4wnms z>n~!dOQ9URvgpcU4}Qw46;CAzkMPUX3$Xz>r67vUabUT`ZFRV_u{`qgQzMlp8Ma+& zD~>YINqhiChdM%+x=%*zzsGq)1R?q6R?n`<)*pq`_O zlK}Z3_jNS>0eVf0p0cd)MS#feU9ir!Tvhu-Q8DA=zK>KMfWh%pj_hc<%n$CR%iVsx zw;&D3Oh#%R@?J%Awu6tIy*R`f&1fM1sJhfUPiRT7Y|KQ$>qwP_k6F)0DSMh{L;3yS z7_`Y7=qoF*O`lfDxPyqq>yAO@ z?t%K1Ba3z~Z)j|~>-Hx$ zUb8i_!N95~Ig~cGz_?OVv1mJZO<+B_e#e>XYdmhAuE~I3AVknYRm_Knnioc^V$sEK z6$@M7rI9fn@}DnT$T8P5S_+U2gQwr~2q=evozp$RNb>_sz3&aDLbPd_%IgqBne~NJ ztq@2-DWbilt~~9r}CN`_tV@LKH|^b4%J-MIzpMS zl}WTG1-0&Q)AB0~hcL>4I@8xciRw0nEJ*Y6`t?wB6A*)5U-0}>k4z6<%<$U-nV*%^tY|}2WL+^7=6WX zX1Db{i4xWh<-eB_7X0G*j$R-RFAP`x%d#u#*aoOrH0RV|)ZboS-D)Ncy1pl{lM0ux z0Mumi6VB>S7VcOk!}J|+qqFgsom%i-*@A8K(pLQ0rJ0L(w=t5=MBS$cQj&6;qzg!! zWy3dWtfrfbbgXvCB96&M25#9mAP=ru{fDP)4pL?ttYw($-`ZQEAlpB1zwuIN8}sO> zqYg%Hb;HLAj?T9k-VUc;MH)}H?-kP83DHTurH&=eb1C{Kx-$yLDOj4j&VhIn_1jLP zr(@AFbPzMtaW;~u{HTEAe|l5GJ1Ewb8VL;2)N^Q*pK9mq#wOMd|30cx{F8lC&`5Ka z=d8^ZZ9^X))H@R_6=_{X~ExnT*O%-(RI{6 zg$m$Z8QE{skS!;uaip0eSHF)~Q96i1%1nxiEXdegcGX>m__P$%D zL`1-qa={@QiYn-n#HI`wIHacY;_+MB_{^zh+DP>_U6m(wG8TU5mXW2;9q*B=TLZ|5 zPMvjk@U!e}5RM&8M)vQZ9R5Exjyz+%WX|pgs5D4GFW50MEZ+ffmFY*QZ#Yqrs%|ie zaq-QNoAz66=qtTiqXlm~g*l@y36`rq3@-9Nc`@5#jeBq2anTD%lh+!LE%HnfH5^^Q ziA9^P#k)4r6Qw9BvIW~Zdlnn^OG-i$pj*}t%z-_Q*FZ&dnc)X@FX3=j%59mR+bRiz z!s5y9+crDg1;IM9HN%-eh=Q#E&PZ^m%}-ZfjZc59B~1XV+%6jD!*`o!@ph!btapKn zsz$?!&`q+uQjAbXtPFGG&08gEoL{K^Y1IZt9N(=& zbKg>@>hs;bXM5?5^P?e9mp#{@(%-kOu0I`5bMIZEs~4)IInXecz`X5>LC2sia#n(S zSv%nTN~q6UIau&!8)LjoKUUlCI{#1_#C^0$I-P7>W%};uh;dIu;cK(1#%#gPhP!dw z5BFVGA?d`S<01APF2U_HLIhd9@&}JLGCaSk1_(<2HNyCNtUC?c3gt$AZN(d7io;5F zOB5Bvg>KwIR!j2Sc2qUKM(=x(+~lt(>f_+^5q_}kwG%=|E6tK)b_U+|MuHJnQQa3=&RA$XPDG`ak6jzn2Nt5* zZAfI1RlE|VZIs<4s|G|}K)b`x0RV$3xaiJuE_0E>lmKSimCkQpXu*fc4?nF>#a%2P zV}G6nCM^*6-+UvRHsbrxt#;f3)UhX{FswlwP*%JBT=bvm(%*4eAwZx$S@t~==T_k# z2*GCpX+n+QwMlNK@t?ut@;7TygTO6HphvSN6#k6&MAa}+qLB%Bd6?UzJbVQ36G%Tj zaD&emRvnea+RbQ>lN)Yl#Gzr|zgC3>aA7f;tTzES%Y=){!DloZoNx&qy+K3dlz!*( zMSo1YbH0I4P?+2vI;f#T2sdOhz94eKhYPFbIj=1j=bf?GsiTu!SKE@Io%Do3O2VMZ z{kTyH@P;H2#FW1hnfY1hFXEy`Lm8n$!R-0IpJT*v2vMN`GaIsqmuoS43&bDRmjTSM z68R>M4D(lXmzQ;|NA#66q*mS6DYjlLZ+zLg&UDB~lXJCwb~f!xG9Xu!x&i<3-JWO6 z6juFcNltP7c+GZjuK~s}s~2irM^L-6rF1E@q?UlWvcC~I?Q;JYC)>UG`CarqD0mIB zNa*S-2~u`R9n!%xrdIBtCQMA9-0f==KKrQCw10Lg6&RHkM0R}mA?>OL$W>|cAS2Bp}we|xWF3u}2vv~_EV zszu7#W&0?$JqM6a+`H^14VVJI;0XADA~zBko-_#4#t36R`I^jk@=*6kb(<&^*7Y?X zz7qUOIblpz;3gU{WjV4 zGnp&#(|;k|QieXSnGj)lax&EZ+nbPyXUTOJ%iE#EX%asvA7?{z|MV@1csbU?J!IPr z{o*k1*R+~u0F@&xp-Fsn!;>pFviBa3`Wp~1t&|GfZ)(Mo6UC@jzbGsa7`2u21jE-9 zT`N^2L9JM!$t_X2QkDII^dDF~J1g=tOAA>h1nj?gQfC8btEwdBiXS8+v+<8zY!0%m z5v({ij(t6CB)fliJ~ye_;R4o+^xh7{l-PL8AeZns>_5ZsS|s_#^Era1)A4?Sw(gjE1$ruPp(QI zvUBhq8BbLNZ2(!5+Kj>l$?b=A!KwGI*l{l^BkXkd1x>i-8EkGYv*RzVVVu&x^=5jY zcS9&SF={RlX;P&ydn}>oQZFrp_E!Y53gt$;z`nFA4&zw;bw=|Ncnw)f5w-ukzAi{m9q8$k{s%*KS?rM}7*7 zI@)x&eN`igUnHF7@6itx&|kOWc_x@J>t9LW%0gk;M`3&^Syw|UwRnPv}xdI+_ew{I%O)Xgq(iw@exG|lrbNF$0j>7qaeHYb#$#U&8B@x zMZHi)v_I=An-@>G)X~%RVK?nE1KFTJmvtK@;U-dSpq#bD0#w7H+w(*Uxt|2(ao=(r zLomLRgsH|plm1(6>|QW3jr)d4ZG;>ukRj5kBZeUp_=A5fYywK(p^el**3`W;=)5!N z>u}pnwB_XzCI8=D?%y$T{UiL!+7KN-bYYs;2^^I5znl%ovo{FjmT4W&kMY#OkWocD zDxYY*$v2MdG{_lmKw?zcB(3lH>A2ks`N!;(5q-;)^DY;5Zu}(~=6$L8W@FbrA8tA~ zhxtOQp+JVh0V@ngjUKUN$gq#4Rb(BWvY3b^<_jrsH7W=zsN}w=g^eh4C-E%8@7e>s`2um@78A3 zV$S?}(nI)6m+Db4MaGB2ej#TY9n9#He|&09WZz@+MB>^bNOdkP0TB5qFCfa5V98B; z`EnU=4s{iT6_un}w<Uea3ddFiWz7dWj3`SUk<4afn;@>s0zS^$ji6q-HIBYq+x+ zxnv%edE@-h(#;0m1-Dkh^1PnnyIAgJqIs=VMz1rACs0X9Z_MIky8OK(8g{I|{rAR_ z-2S#i?`Ip4LTo(VY0E21#?e<6iLCWMw)HMN8_v$O3}=OQh6;oOQ0ohHmkH+(#-quH zpO2JSnt=U7tZR1tITk=a^Y0|ROVvt$OUyoeZOUCEQ~A-vhmy{S)r~2S3wFOMtPFzC zMgsZUR@FNu5uNue-lS;hFH#E2Wp|z_=ni6xh7R#3lZtTc`>?ml&J~RUV~t z@M?H$XKrs4n*odP$E6JMg=(-q9Dbh2*Nb*S|AWM;&-}|b>;PI-^1F_?6@RWp?NykK z&}lAQzluw0M6i!x?^y1dER3_Q=l17qa%EQKUdim+sV~*H)*B=Z(qxouxHMGTVUHQy z-yjtw%P-;7e2&{0zvIeSBiYyvr8EQz;X3S@qF%oFIC-jog`UEt-P2Xw83S#=72Gpf z&nxD*a(i&y+*qf7(rf=QGLKmFojeIG{m}W+5|g6)`XxIS2i^4ddgR$659MxqciFY) zz`~%yP94eCJyA{QICLMukL<$Ubi>!ZF>i~C1Qq&aAArFOYYPbPgj`B&}o zueQejRKMZBXr+7wJy?NjL0tb-eODLFs;>u{5tb`a`)98T&hx0H=QImxAj$v;c(y1O zl3L+>NO=j6kN(*au`h8hb6ZMsTMxPV=R@3tU!s0QJ+}}ffFy1M0bJ?foQt2Dmd6g0 zLvef;{@tj>yECId1=20bOoWS`A|t*sK&)71&E!!T5)zU?TA?4Xs;|JO@`|3_?5t-O%c;2Hb%?U>Z{bJyoq209|UFt7lqpS{c0zkN41qs)8U zwc8IQ18#Kc@&+J5Sv_3qMD;J?e$wo6E)?c4vo1s~zX8~o$1H<@gakm!23 zs3IY8yF*dw25sauZ;QC_dwS7bLgKjhHyH48z*jfNq5*M5ARr#uK|=#q<)q!m0Y8Cn z`$bvyP(flh(CxV!BM02}d~>%D_?fAFYOS+=P2SHj{M(nn|NrwPs!mYNs!`?-Qj&qu zM)vZKd;dO1fz?Ga>4s2Df|mxclq3E3rD|mNN1mEEaOK#yTC=kBo!|yEU>;975n2Of zOAnce=8Kf zB?-2W1;LQ~9P&O^zb{n7eHu7`EXMR1S2Ei!5ey)-8F?}?nLhr^IP3L;MVE<3a!J2km zo%Z8?32F0*E`w_KBBtY=NxB$@>-=Y}vr=kw& zcjgBp5I%jMS$*kye0om1v6$@Tpf7e2)xsLadsi-{CdY+8emA@YsqdY8$kNGNW9O7w zC>L?Wi~gM6Nn_B35)wWbv-KcbDNwzCQ7M05toIR{xXg@V-+Ufo9XK#XA{rEn%x{tV zJ<$l^G?T^dc|KlLG$C~al2Z#=a&4cr8tAuu_CAg`h1GYC%~g&;yD-r$r3VAosqY>pzuM68Lyc}s9y7TXv!TrGpyTvYtEbGZ*xyK$x~WQTJdrwdk0Rwo_lf3 zTLDH73T;dx5nxuHqSvSula>Z)kMgo_QND%{`ocTE@-B3{h(HYu&%g*w@gwQqN0!;@ z#~mThU*4Rc5*$yP$`5$<^wBS?_3TB5(i09^K~cN7JG{%YVBAOPHBb1fB{CZW0ioG7 zA;!$m!L=%bc_QPjyNtIjTb8N`DRZ!xFJDY9JOUSQnVTr$C*Cm4ywwEjvg#8gpgQgD zQp!-D;JuNH{G}qOb!*Wt`>g0qynr%Zwb^3mg(1%@Zi`4#Kc$#2_r&$k7Jw`vDWUIg z^9#`wD-BY%^Y3w)Cv}`$n5X-S_}tG3jA-e})lX@x6u!}}Zv$s1tEqtVscF{8IT$J| ztg3PqEw=yZ8EeyM?t`MBq3h`Qo_m_Z=dR$8?Sn7xL6%$Pey#6`YLS57%of&=CO&8| z`#=bGmfIV6`y0}}6M%*)Y(CyLRwIGkqRTCc<08$tAc^BhtPyx2dt|?rTPd^q`Z>2@ zDywWHbSluD$b-emh>R941C66c9O#UzUvJuI^!u|kPa(G?QdW2%b<|?G04s`_BvC0J~t;Hb#M#aN2&P3%PUED`o&+F@xX0(yh4mxlfZ5D$xzh0D;MH z`BH2@q2FY)l59U@^BipyWVcuMSfs)>zA}KWxOFAC_9PrRd8%4`2|%w1##o zvOTi#%%$jgi**4u#FBf`bHf!tH~amEJ%W_ext*8$B_BwEG|Y7>B|(LZnyjA-J@ye# z|GGfwEw_A>=+t>ikX~H$1CaT~^id@{I8&u*9E_3ogwjd7w<5ck9d0=;tX&qs9i_C> z_^eA>DV^3HCAElKkap2(mn~D5McJOfD!+@$los0My)1G5`y|1#;H7UuM8BpdN`q3< z65*viVt)agPLf1Ht*ibm9baRes7%(^IwOEk?F?VODUw+Za-|#oG6JwIl62xIpeIk> z|9<@}jGR=+A|ZjA^l*g!$I0Uo%?voezX|o{`UZT}@hcmX`2zFHn&EODfu)@%U@;H4 z2!O$JlyYynC`}FHg3(*%?|gNr$oE51{OM?&b!aM$tZmGO%ExiFUlhE`wW)x^VIS?6 zoU(p%sZ;ywSSxVpc@SDvx7-O^f|q`(q|P|Upwq;0QY9U2I*b`2PA9tUadv1xRJWM3 zT&&iqL|r=ZLFWz5i7lUya1)ww`5*>yx%dBmAps$w_p@env|3$E+y z2YvM#?mp73@^p>HTBz>MGu{HL_fiVbP_1OW>O&yzas7cKfQvXoHrcW`gW<@HIVQz6 zsvxG~FW_!1UUphAT264P`xJhno}?hF>m*@3Q1hmpHX<{mE+N4PS)`4Sbum;Va#hm| zmlo1uI#`cCjW*62VtQ&E;f9`d*}HX3xVL9dKW+lz+T=}7K~S!lJ!Nba2r)x#MPd35 zwZg%BnPqjszx~tU-P}A;G}C0nbo}JiZ@n&yI(J6D{Tz1coX8gek&;#Sc< zcRQ^su=W14ewY1&NnFg*$YXeEu-Is-P+E&4F6R=V&xbeY);L#vNh+l`s-7e8fD3+& zb#3x8Oj2K}RV}rUIaar(k*Qz$gR5wAK3oedLL)-(_0gE-!xS91#N|*CX=Ku`{q94c z1&{wW=3R{R(sZ~x*;oi%xLGyt4Lha3)`}epcYVk6&!SBbJG~m`mG;vMKNCy^kBu3M!9_K^}u|6d@L_BR4e`z|slKt5+ z&QUWcthX~}OA-0bk|7`n%evy_%=}GeB%Q51N(Y+{ve5)BCX26Q4OT#x;84` zYCHSp?Mv3tTqi%*uT8Zku0t#32HZU7;XXD1MU0*OYOeH~Zu)chOoBP!97xKtpOFXy zod9FyP`#O&;lS9jF;k}5kN7FmpL$HC9Zr1Gv_0tPEL8+aW5$k^k z=0eKg;lpf%u59he3b8xrt9fu*+fTqpDl{NQXdjMpnX?Ipq2t}ovv=0>H*%$4SW0Y_vrrzh0QIz literal 0 HcmV?d00001 diff --git a/assets/Rules.example.pdf b/assets/Rules.example.pdf new file mode 100755 index 0000000000000000000000000000000000000000..824dbcb38b160c5818cc1f6d2d1346edf7459a8b GIT binary patch literal 99270 zcmcG#1z225vo?y8pdq+Va0v{9yK8W_;0*2-+=E+!ySuw~Ej5&;R}B z{P*7H-eJwNx@%QcSNB_Qt)9gUxty>l9f+O<8G*d^^@WT80x$rq_05nGxVeE!E;eAG zke-8{g|#tIPR|%@4`6(~tN@hKvofXvThS>iQUidB4t9?8{|xcl*?$@9&lo@MWB+Mo|V1L@3;+I zfI^BuVX%{_0a!sy@YS!9p1%F7%3rJd*WBy@4F6n)-;V!Y22oQB2e2Jb)Z%q6!e9ey zLoiSZY-Q|V0$^fe|7~RNU&EZ`Pos7ryvy3!BxwFaTO5`$*2&i z3Vzjq>VZL@E|xV&nI@Z}%6O42rH6{GEnlu_Z2ZXM(}sRHvIc zC310IoMGx(7$+%M(=fhmww`o(ZcHF0M}h6o&rYxu`>B{-ZfLaj2;MX~_}e2ssz(>8 zGFK$kH(Q0o4wbNoZ_B&g7XUAYamtF^VCF!ISR%0t#c6eNR$;9)#a%*_10(g2pr0f; z+Y8SzSk!Tc_F)w^h~-~(MPQdqEkr&6v(V76ieuNJDr$GnO>%qkY>=HjG}S#SIhLl4 zQ3w}3gdaFOVepB<&A)!l3s5V4#(1*@M>q?ufzO5#` zGs?82E%3`N`ZMOtnC1-e{xaO)Xv^P$VAT$z{L2<<$tw7jG$L@LkE*r zmj5B$KXdK3;lIWCpN{`<>`##YOJJ`FX>9*{7>U;^Vrn2@Wo!WkFaQPY4SsW#jfLSg z=l^QcF}`+$^lZezrp6|JT@r9I{u2;@EJ?FnVAU0;EKjW$XrOC{|095;z)o&k) z4q!`_SCcd)QZk{$83_+JG4WjDINl&*}cI1OH{Z|4}G_ zg3>@4YdcFl3!s4>0Q66z-$muW82wLJGX4WgJJVNh{{h+m0YZ-d0m9dH{u{wRrS6~6 z{kHqJ=>E3|{t4%Q29AS)0cN! zGyfCASL;^{K@0#!28LG*8QK5qP2u&ze@;-q(ZR&pj_Q-Oy$RqIEeDg=`;^dY0es~E z)$P1@S<|Df@DM=^9X0RKN5{-5}P{*8jN`eup_mOz=; zTQ2Yqr2%ZO#Q1M-1dNQ#zy1APft*vqzjY#XF(3t;cCD;?`LUV~vA#oH5&i~h4ThiC zkf5ygb#q&6l8!=1TOiYUZkLb{^0lLaj_ZGFg&BB13?S`

fZHpw&@az7AD!p(`r>Mcu4lY764x`peh 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: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

bnw|#@+W4v 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 literal 0 HcmV?d00001 diff --git a/assets/SignOut.png b/assets/SignOut.png new file mode 100644 index 0000000000000000000000000000000000000000..bdfe4a1cdc3ea3134e810b3337b693da2326e1a4 GIT binary patch literal 52752 zcmZ^~c{tSj|Nq}|s0fwhG?wZVLI^WtFUmfYAz21xo5fhd*r|l0l0szc+t_C?jCD9T zNQ`YZV=M_H%Me1=e)C?=_w)Ju@q1m@T&|hR>zZp`&*$^8-0t^B{Cx`}0X_iVkt0V0 zOpNbZ9XY~t^2m{6<|lc%pAZGjFx)>!{jH4jkKhKx7r1YJ^SlGTbL2>MBLDtl9`5^7 zzQ%U`M~(<~{_AzL$EU>Y$Psdp$=y5F!A{Eurvlt;Bk%%Kb*(;?NXiD{@$Jc% zv*%n-t3BpBbNM%!TYgVoocirpJot!~vdihee}6NNZswo|E3;43u|u-wLmt*sF-2B3 zrNFHt*KRfTZj#A!+Z>YFA};A|Y-%}lqH=yMG__E(cwi?7TKu*=lC;hIwX*qZ6R&^w zzt`WDvPZA{@!#v~h16$f&i?oE<2Sqg=Ra3NjMU|SZn-<&aqi4NxBTJ#_|(aNZaG_D z_1nvTZu!&U(Xs#e8igDGzhBc_`ph>!82>`#6hMBgxVPrF9aEvEDH&72>yHABukL7p zKGuPSd9*iMHdz;)681wM_E4F#`KVt0pfUJil_rt2Onx_3Vr+1J8*B^zLOUOj!PP$In zP7U|WnS~iX&qM*pW4PfLwjjGE=fj%gIK!x&E87%0YN!b+>)qh3S0RVHZafYuKuRXI_f;oAX|kZbUsU9}9*pQpwDG$;BhmwU;BVi$8vwC= zE1j`U_FpIaUC=Dn?Cam^S6fmQsQ?25IW~RMJv9GstHAKxy>(A*`JB>_Tb|9`ueTad zmMP0YAp5JV(N^Ah)%x^M=V6z2NlLc~!28opPG->p8sh)Dv`yEBQkjk=L4Z~bwlgu! zz?97-Y?)BTmS%qZdI6R#yq<0!j*UQ(+u8bq4Do+f&Ihb6awayKc%TT|xY%PR40J*p z3%jcYm=5hM+XCNhB=I+Pms=t#bngk1nV1DRsw1*2T;x=D0YG7FiAc-Y&Fp?!kG$bi zY{-X}eH7uip#bMo!y?Kw%#sr{Fo@6UZS(Nff=3&idwg{luER3Dm4@bU+Te%cs)G~7 z!#_9x&5bu}d+YAH`1k#yAiEX@&&$>>-yu3eLN(Cxp(M?BS{Je*D8O#hAaJSC>H&H5~n`G>i_h z+O`|!4ta_JsW3WK(><~tG)SCV(052>t{&ZawS~OZd#$tA~CZ=WtN&zTiidQ1j)+qG_$mo2DM&A4U2oDD~sCN{*rtSac z;vjOgmLOmxYELpKh0_Ba8V3Wcq~qY}2keyJC)2GWmc-h{9mJ;YQFW=kGQ9F?iUmnGgZ2PG#v= zTM%X=X~5H)(O8iNqI}G6+!6=Zvk_P+OaIE9CMvW-V- z5H28#ftlNWTAt#~yvp5PsRZcrKl~jVS)i1|if(@=YVag_vzU~7l#uxT>v8Nr06B2B z2~!Nt+K{-{H2R<-9qR>FPseESfhJOY-pV^~pfoTj3x+irPUbGN^{`|DR;PHFy9ZMD z5O>97J`%M{hDQw6Z6q1NG}+C@&}~=)tgW2s95z zyQ#(fx=u8gZhy_R-If8Yk2)vNlz^S^==b*$b5IJr5Z226Cqe}yn|iNw?>PzqSq0t| z%YTO36wl%<{q9hLH{n@Iy7?~9BQo*k=lM0F}L(J$_K(_4{Fl z!UCljL>;IY`L{UId5i!sK5QMx*}?HbBERU9UDgzLUI!s>`Zq7VSGTTm7G{s4#9o?{ ziIW=VJ{jROHV;JU^WVu*d-t{WJGIRG!<5)8nyfKSZ4)|6sk%8!@3!Z}0t z7b%KgG8I|)_nB#+6TP3%9C3V*3_UeAEodCYu&5ZTu zM4aFZ&AP6CSWX+9WK`{!7@EF?Rjj|+M{5c6^3kN>xtH%06!nbjoG?&(=VfX;w4Yh? z+%YKLL(}ZMm-$FzW*T(#*5k0RB9bX>->MA3Bx29RM`mK1t_cOJrZpRsSKm+bGSCql zkHM%yN7X2p(%!|H^|W*hpA-ENdjnt`Vjs;tFArVblCIrp{Va?ry9t_G9d3ZXJ_}*p z1;2X1{x}bS%$DDJJho8PEpH+BD6L{4);h-P=jg}jj`l{J6&Vw;*B=>5sfS++iz^Mn zOM}V8`k6mT^|{Q!24wk2;;6@L1Lna6k#&W^D{E7qee3^@`S9c|0wdFuO{t;z%$*E@X?sluij1DC&42 zbQeOc1k*5M^5zrwP5>QYVUHv!0R`}a)Ef$;PVrlkF$rq-$qaMb#tQ=v7sID@1?Jio zLoInIUf75xb1Y-|F4Gyl2c$oGeZ0ll~ZeH)Jt94!`V1C(e8z`=zyR6?CGY}50pOd?vF}s*uVaa#|#b(5WOfCl% z&gRCNR|@Z7C&#le*EL-bx@-@_Y`Ce-5Y^7p}VYZ0w)9)_vDlK zR4{kV+%ixfq(0eZ6*7s(pxU+tX3?mon|7uV)XGyC*w+z(7;kbKUapt>pFDdYOtVAhy}j`>lf6x<-sj%BIAn|E zFO?HIz5PMRXcaVyH`Sb%fZ-y~lEn%*;Fg}U2{^62!?&3!eOcIFlzI?}Dgm3d9 zCR83wLjUR4$bV8)(+udkrAK>L=CWxbkRBm4i!PwHr)ca^QJc7lY491pwuxCN;&;t6Cwi+oXp# zKt}&`7!DLL&r9^ra)FaFOOW%+*Qs7nl^%mMII-NZo&E=yd9#vmSG3s_#7LTpJ(n{W zX~V65mMVRk4K_T>1BNT2cEXb*fg^eRYAuUCbaNk);x+@>aN~i&&I!;vZ<&kCg%yc! zc%7mJx;eN`^!lh>#aiqQ^}p$Y0@;Meh0HX830@WF5f~kv;Hif{J9D?!dvk8t_h=qz zFnen9*Igr=mc4;Le2R_xskib)?;MiiF{I& zOS)oaWk8@M$bB(p=)rz-B9y{7-$qMh}1-oeo|&3VxV#ze*OGH}D5fvpk3fDQ(25>|{I@ zfqkO-GT{lSIZ62Sly1|v*Y5}FZ;u~@eb%Wq5*?`jw%%xe0Ly)lwksBxhrhECv5C=Q zl=RJK1m-n&XwSctek~|x9eV$H69waK;jjAJ3D)}D>J7S^St~b&|I{?=*goeaPYpME zZs_ks52mZ_JSD>a@M)Ir+eQ?+B}#u5YP|RgmDpK|JIB*h4rDmMvuz8xl?q-FYOv)L z{vjS9uOsce^MD6wv6OEYM6B*Z^-t;w@^o3Im-rSGIUTM!kTNyZ=TO+J-1 zI8|J2MTj)OWWeV1qq6kp0d+%+l1oBrOZv_U9*#$BOPQ^F2fn#XDhu0ZAkpNDyOS2y zCsL+92x4XW3?^rlxQ|iU$bRL$`sCzUIJ<&rXq&Exz5uJ4%`M%&r?W1)y^s;LS?q26 z<59eXRm7;*{2Ps}0P;u9PltZAxtL|f{BI5fpu6O@P0mx&;qKF|PtGU<>#(S@{2ILI^T$bm+!-mlLy|T@jE0orGl$ID+LA2j57C@O;g0Fgh+r(V`hjCOcV2^b$ zu|RUITf=mT+I_ydIoVN6!EI#hF%PC&L{fNNF_8AI2~Kq5;iC~>>Zev$<~%+1vQdM>=5fp% zj>%|t<+G3*qnYeu`cVgPhJzng%1o8Bhn060^({&5$z8M)*w+dZ{JCNu$9b3vo zOw*79){ZdwMnHCu2E#Sq<%izGIf)65P4^O=%Cjn@s0hR=E`TKJ34nl7x65>Q^QO?k z^}wu9!+Dh;Sk31xwi&GgZt1X*S;|eOcb^bNz4`)B+O#JKoJOTfCp-p_L~hdX{H6@u@NI-<;UbLP-v$ zv|YI;T;~b&K20n{5(&nH33tUKd(*zJ6@}^-zq$~x&7VP5$+-5iYYEm;pKYTIpU2*f z8B+n$Y;sGppYUjI09meaa~GOS^tnY1=jOz1|LkMvbz#D4>DC_`kE%T|s-TpOvRDF_ zVEnQXm|Gn&hQF|rp>ebvb2uSsrMC+NcvL}*_pU_u<7Br4nlz$gzjmn~&1A;N*A3a0 z_g%$0LAGNKLw6kbLDnDgrxy#q@1h^hvfV_17TXu(N1-spASH80gW??-)DCZ@Ol6k4 zppvi-Py2VL^M-{*WHz5~lWcw3X0qhQf4$^=8r19TZ*@iV$e5ZMh-H^6ip*ANv#j?_ zpMpTiGayfE-zUvm+IuL{cEl_*wtmM; zT^k=i=3D#_dGMV33ce+=`-Y z73mSgL(G*H&+QxwtJk9e3asMZ-5I{xqTZ?ZmG^z}^mSq|E7$4fp7F;NJaP=9{IjLW zkp`QkIM2y9cHW)<$=<1g;f@J_{3QPU*XR|=XKFCQ(Y!&bxXR{FF;%ke;Pugu2!vo9 zO08eK-0Z`kpy!I>u$MC_^419U_3;D?t(PHX1%Jo9k0cD-XDSP%Npq0_zFU3^Su>r2 z)g+u>Cgx=bjK6XuT_GI0CBw_<#}XJBb9M3F-P10}2BT@#lwX=RcP#+@Q$^DqBut4m zE@nX6Kl~y#0bJ>!!=eli(7jl_65Q_KaAYR*N4axAk2{IOS*2=m*Fw{jvNq>>QVh1B+c6x!tY^rc0^?W+~$>Q_F+OdSLX7g&To&|Eo?_Zzcw12@H7$ zE-MdUTsINNmDEMgpi{07J*enqi-V~}z0NsbJy=;KCe#uR)HY{D`dE7X_V41}K}R3v z78?@g%f@d`xH#nT=Z}A%PCYFkvO){)by5#o4ZioHyUgPH5Jn-&==rgUdwk3FYDyVlIGJCbILl=Zi@F+cae*KzAgk3=y@I($jVO3+4~^_h0d#>OY{cC zgLahX#6uoT{bJj8P9r_j_t}p)Ltp$T*{&dy-LW)X{NCX=p&!U!2dI_C?a7T(?&4EL zgv}W5*so?+If~-7DDj%){8|whu}|>Q02=i60%tgQO)}xbrJ+Y%55Q_zS=eecEY3T_ z^>n>o>HqY{+%pmPW%8BIi8R;5Vaak^vEW8-`!M7%w<7%eBJnx2HCzCWK@5xpqh3ji z5kT&%F%0MVm8+xnsg>KUzm8)T?Usk>7bHI;I=lFFx|&8mlrJ}bgYCm?g&hbtFrzX7t#xe^6VdJ$+cy|)W0Y&c~aTjNaMX(3@MbSv+h zVN0d@cmmYS`I(q7d8lP$DP5e)WT1mBO+ZG5&)9&R7ozpnc-c-Kn*2jucGTwaqQcW{ zom%07(Xb;GybrwMXD)AzIeBMqyy|PA&R~Q6)Is)k>E(rYuONcuH{orP z`>zKZdMcyV<8p=|Q@diKH3OTpkC>&v#|_|(XcS*oB_x-0ZM+-n!ENcXc$!ADiW}K( zJo19F8?;r}-?eMLYY(_T<^}s_II3t`ZRJM6iGO5?$(pgfA1IOK>d?C9X&L+{o0s1- zaEl@50<-R&Y%5Virf=_Lv(My>=3CT!ZgQO1!EKimXhUYmJl-(h5-DeN{@Z7y9w#JL z8aW7SI((x~lL6W!7dB#Vkk!Yg8_>s6RLEP@i}K?Ud&{H~(FqqZwFWPd!XhP_vQe9| zG5xEpNzs5$;U)!AagL*Etn6|Zv*1{F){J*q@d(c|{|H)>_Wc=sQ?2Eov8@1Yha&!Y zvGJGJM9n8Qj+6NU9>Q9N1$l^@V<_fKA2o%E9-=#@m6Vpv@X?Ckd9n@!fpm=8(qO>H zgCEqUup47rRl*hKbg4e)jKbW~O{ULb9se#b-#OsB%~yu&=w9295rIqDoKLp?E7kHk zzg>;^*{)Pl@I56%Af&a}k>H6OCy9$LdktaP%vM8D3kysr>I)o+MvbS=d3+G0$;ev! ze@2C2uNZ7#vx*U5E#{s&n)Xo*_mp%3^}i{ddh>5DC%NgkR%gv)4^iveYO!I+N>&)P z!KP0F$lL1QI&K$40>^OAV~ZOsp z?cOnqWb_yT$nf5xWaIk|Xo@Zw8V*H`hhyKX=AVaxGulu>?T!9{>|1~Uc$M8LE$4S_ z1?G7JDi8vP^T@Y|UCKVa5o8#wpIipPRG3;1Q8gF{gtxJ6iSz?V;8tsF7iLK@NSM$N z&y|9nX>{M7^P9VLdizZO#INIIYY7_c&>OP-Sm7hlm!O}4w)>_)>1Z^~svNNL48iO! zJ%vsXD~tQl1`{^y-xs0eE!}t`iF0EBl2x=K8ShPWV|A+yc~uK%6gKBgwJxfb=^oTf zZnthD={y)X-@|OWc`{tyzr|li1jD(Z45CE;BfR;5Pn{%9Sl@0KaxO?Ge86bf7A&-C zl7;HNbr{DfzC|~NZ66%mO?#0gvb%WP*|+mCD)A00d4M;ZqQK;1R#i%YpJUI9w(Kk} z`#Nit`(}5`y=^uzjOB8yn#G0?3nIJ8tUr{=N0mmFv1_q%Z{_Ys-c1(i0eaInMOGe^ zXy0icIS!E5nq8S!e;8sV8u}`rwC!`uQ{sGXC3EYK%$0IRhjE5tV&GDKWmpL`jXZ@W zxfsP`S?iz)44%0aZo3^o$m;)_TWxN!a@ecYW!C=UA?)n{ZqN!#yR!KX};HPeB{$Lb^{*M&!&vtL|B{~vx+!g=A=-SS75F7J+zo6j_ z2CAM&k>%^?=TvJmVurC>_kJd_j~gNX@QP!pNy9q?DX4*=29l_g8SVx8!t7!J<~o;! zcW{NXU#|@11>uEXYrEww`Qd9b7MFrA>pL#nqFBz<)eBPGr)>J#%%z z&ttF6a~qfa1nfXl0Jw4Qiu7k^|9)ySBsxS1-Vj`G_&E{NWC_n-Pg$D2mDFq|QJfRl z85T!y9=~Mty zU@5lr0urm^9OnE}>tJF^H}|&x)`#q1#Q@d83`EtmO_`y*Wy28JIq0)C+VpVI)%(w? zw%tN$`NZa%zSqNw2j*9(!E3tU^PFMWmOPiyvQ5M5qWqO!3`+S~YnYTxb7QOR z@S))?u&AH9&&dlIRIgLZs?#gQkD;EdryvS67cTZUQ!)lRJ>7R@qk;dV18TKCwDTHkk^oL zhu>W<(ajRW?R9!uE8ow~1H;)DH#Xor8&32>4P14Sf%nLV5G`Pn1|-d%97)!l=Tt4d z4JU7%UpQzxI7;dMfZ@m~gW_Zy(ic7{qcY)R>fMuvOaKHK+g4f7d+Ho(-|Mn67hYPozwz zpn81gA3)Z(u!x1p8}p|aPGj4cicB9qxfX&SwDT$ zx;Vo}XH6nct=ou?c+FglSxg4m1=`QtV^{B!0E(lfTseJCe!Mb%Jd1CZGXmQsENUGz zgeFGWMigg{z{Xw!%%YqO?3CawKXW}WBftk-;Bs#4i%;$MT&$QC&=GAe?C}dCp@H$1 zr^evU1+BLA?pljpkzziE+< zt~E$IVJ5i1nA}yP(2YR$L}$uoF<2}|dCz3zrQJ&3RPk9zd1XkxOWOY~IL&T<<8Z-5 z?<--=oHpkI_WUFAMKBP{rKF!WpAfd2$}L&NmXmv@f~ItxBbua9#;`CV$i2bD(90L} zz|Z<>(J8rVyK7g#vmC$a5BT6j{*!U4MEOUs$U#=# zbiXJtz0KixDSP`(8hN!D`0k*L*?sY#s@S-7@tOepl5hLiU8eHpJcq%RLlZEl6Js?{ zpPu_>IQ|noWu15Ovu<_S<~&B!-*JfLAM?^7+Rg;;oD~qcM19nCmJ#hs-OmJq;=B^| zwL)GAfcUqN{ZwVAT8Gwr9n7aF8#}GmQs~r9QuhWCdBZbq%|-yrJw0@J#oOZjta5%1 zvx#a`(w=Vskk!822505v|3+x*_Y6Ryfn3_2hJa-mS%qb1&u7%X_UySORKy!-vwHAeJJYEr=(=KR5m zkzRhsj8b|VYA7|Yw+R?zsjamf_&GKTR6OBJ&wD{yXJq*YF1{F9^+$)d+QzQ2@2e@(efDlO2J z(spFFH1hg81ty1?(=$`1sNtcI%_od=M@7q{0DD<}~iS>QkoF=0a zIX`Q7YwF=;>s5*wfMf1Gz!ZYRJecfS)B~bmP+MuZY8C%}_qaKEy}WmD2Qk10kpL)wv;S6m1SMs?(40fhM>U`2vM6 zJ{a{+6$2@$rLr?H_zSN1-1xYTcw$=LAjyOCrb}uM_--xVuqMcHSa2#Z`Mq@(J+b)} z5Smf(m^Fi2eyO-^gTN6+IYC%m6E2u#b%N?yrywfh5oaUN*S*c&9!prjsZUx>sCoJ8 z{6Hi@@wc^ZFu5zll_DQB7_~3XU{GqT#eRBlL{0artwyKNt)E!(6hD{A%IeK_^xuJO z_|naGXJvG;Z_+OLZ%c{G>r^zx20#&gHdS&D4jT9R4^;ve9An^kM;>zp0ugLZqLASj zI0)rBHtd5SZZa>XpeoHkarPI|GElpSBuBBhI9Sfeqjqnd^)AZ=yxw*(24zCwwq|99 zT#Btm%=5_IeN!rRZ^K3g1bv_Tn1UlZ;Tik8yNQ_VvNqcRv#zR$NeREltO#Qb1=UH> zb^!oFnPnmoZoq2rJ1`2&3AesP+OXX$Z)^IN6$kWnZ?u%%o+$O1_1^zl)tY9r{*Gy> zkMB|Wj|%kWLmuYO)gE>jr^~%BN@ch_$(nE@&ssR`@PVj|DfH1ttC8|}Mm{5gKpJj+ zEqo@FYYH0@49SA`sjy*9I?n!3scwBydv}?Z+%UbhJ@#*(npAp?s;*2-6b$m(&J-B| z9jh#bd74GaG#90}s*+*-fph6|@c_j!eEch63+LX)JgFq?)Rd;{nUTqlbI z=S?fxuBUcNAv{4c|bwHZcZOI-Bn+w(FF z7hm_7CieQsh{;akCsi$*n|hu)56kGSg_Y^yg zwE7aQRI~135ax_~1Wt7s1WP{+A(R$_7*vM}E~K)x&V?h1+m^K?Acm@i$zINUK;S=WS-N9t z+;HQv;}5q!^S?Jzn;Wu>uhOG76iuf!agu$TL0@KN@VwF4M<3(Qjn6QCKj$PzvrR*7 zmrJFIruAIC>^Sae4UVI78WsNy*uR1o1In$QI)Icp5dX!MZ>x>nP#H7OO`U@0Nx%=M zodlz%>iSGmTUU3iYZ_J%Q{V}I`udUz%h_%p>F>Dx%(q7Q-chaBex7+ATCY1EJA`HP3r?YXvH&H^j#+GpF|MASw3s7Odv*%~FJ@SFO%b)xhdvV}2+$dqstZ^*SK0-u$3T z=EqyDDXAO|>D!7H45^47%WHN;mjt*raWmq_3$Xr?+H#Ev0VP4}EESOCP;k2w_`)S> zVP)g@XNI5O!t&X*FSaJ*=Zwh8;tzb--dU=kZ7Dr`-Vf0^rBO~t|DNue@@D#2+~;%W zVJd;ZbToXxALWM3UghFWu2n;#3$rSRCY?QwB}t1>fRy(>H++vy7q2!m#0e6Ds6?$! zo+@H}LGyMl$`wKoI1w?|V=lHzD-~_cGdf(S02DNH^SbirZ5w$)h*9yl%8<)?cXZ(R zk7|)7p29iY-oPS(-Lkxcady7?f>iSEW`|j{sb8P%!XF3r!685V$>^zY>#!Q+u2&W-M+Z>q}O0&?Pd0#f$Ak; zD+WdKhnoWb)+d!Ccdfq;KlTWuP<0Lx`RYa=e`@|JGRiyHU)Ne$@`qk*vn*H5q8Ii;TAE{_Ls<6O-32c|NWKxG}yeeIvb0 z!<(-0)q`L1hIZj$e-_|#u$`+N`dku+8{vHi`TzrA_X_4t%$4gE^zH&h&y0nAXXg6Q zmwj5B&7Twh;G)km>CN2M-L65zh@gZw`RN^&xzT$p>-DUUF}l5w!+{|Mx2seKefrP_ zNvKga-m#+b>&FbB`>m*)SaTAQUA=zQ`+}?1^eg;g?XLee@-M1(=2}uWSEISMAteeM zdsg-Bi!h*6^U0z)`mslD`#`2Rjv0%gNMHrPWVP!*GUkX0D01Ew*X@{2Qu^j2xzE3| zIM6Wp4mY2xL0?GKCXY$RvNx-AfHI#GmFVG)t6{5QHX%Pk1ZJ1fAV%gGw!Up^fy6d->jP9nRkKGdl4S&d;_U9aZ>~`y?p+SfGmCOC_26??vjeKU0&x)?9$k?p~>hW zLC)p}@eyOXMS^?F>@j^Yrv#CfMQMff3XS~USl`><@PkkDG6uDKCZm;xQVQ|_5LaY% z>qZ?Ok+0lGLoQ`6+z2oTEw<M;)K0N!Fx!WGXz|(BhX`Nw zdnB6uSC^o2HV6fDN-G_Xb>z`Bg$jKtQWG4#TvcE^7(Rb?PBNm)>uPVUk4NzJA5X*v zKjxsHo?~>=un|zPoFSimHVaC2y>|-d$^Mw7+_YXbxwREkCKJ@Qd`+rVWdks~G7Q@_ z13u^|P)yxUWO2UOR8wbg)f+ z>7JKsy&POO~p`Tt~!gfB(yU6RktrX6h?9LRC)~ zgv!>kL0ezF$eOr0Gt6}_-CRl#;n43Eg*dq;4KH`{J`02cO0|pbLt?v^Mnslx(5x*# z@E>?I_W|keun)A7pN8de1p^VU-ekNolbTW4C@2Q=XbO};TFsVM83b&@^KZ6O!|&%U z3VWBVHShz4(lNq7yU-zO^C0=W7vqvreR5+YH+;;9VB5vu$*- z(@`>gzkR3S+%d!DPUvVp!$I$jqtsiYKPfy=W_*aH4C!-W`)h_RH)}>Mn+O!Qe0yOQ zW%r`guWer>4ru>m5wrxpz_F>?uPR;0H8e|XxYEmYHSK^o2I*RkUv7OQL0s?c1u~#* zMeE5*@XwR{!{l3;`F;fg@}6A3Y%M59o)O?v#BS?~@P^rs~kr4Xa-dL><@Ur9HA1&vcJh_sC`YAc_-YFVN; z$0IPuq28U=<$?YgeA|Gh8I)Atw@DXM0uTA-g+z8K?|9)!uadcaKjYD%WY*wVX?sh= zie%Vx%-`SNjWu24S&lf#G4CZaadBS)f~v6tsfY$;hf90kjOOsYLtQIRxu!pL(0s5X)$q*b73CU<%{L`>+ zE5miP=#-XUd`N3n2-Bif#V&A!hLkxKGNoiwCd{mM$N`t08qNcF>L@lCbe?N`x_xUZy|_2_u0ZNF*oYuXak6-L z+?JZN^`JO|}}R z-W$9LlJ~rs-}!gVm2S&b3rO!vsATz-?rF)0?5U8eZDu~-!|FV52T!zK!mn-$oh*9& z!EzxnyJWcQcR}UIm98{V#@H=}-es>|NR=*x!i}m!AMnXqIn=5Bxg2=e{zq(I;-{Q? zqZzmo{AWMGdlbP~TP@%IL0Qz;IiBF&mM_b?%1tieAB=z=VY443sgLqFAA%koVuS%V zw7+A|){K26N&H(Y`EZ}-a3!WLz>DS{%| z{j8#AS%HmTtEA<)ay;G3zzjkd)SjZ>de>$-!yb+J&@=v~T`jjCr!UB>+%2ZHZ zG9k*S<-X9a+BJWGai~QWHi2XQw?t2CG1gUYC`~s4FU^TK2Nq+6_IwsLSJ*Qr?}5WI zhm1{LWJmls8nH0=E1)_-NY-WXl9B~iGH_k!g6Bv}{{a$h`}8_PSyQ~$$>H`l$EEz* zcK-D3dy9rbCo6rzlg=p>9IsPXy6mX;iDj(t-+{E?nXqb^^~rGCiNN&~i)`U=9R zASY7g0f6MS?I9z3gYzeTSY-{EKrp?bA$f^_f}E z{_#St@irWdCV$f4?hc7x6Z)K{X*a+|bA+K@)kpFqFUaGlK z_CD7GQD#Z0&HC%_+UhKcoo}zBin)G)ngP*e8mwC$%jN*UlUV<_w&IQM!{kBO(EHIWMF0xHbzArH)C}tgJgi7V?mSDmLd2SJo1tP*tf@v6+9xIHYIMGyPGnP zjEsQt{p!G-K9P`iVb!&251{yaUy~O8Wp4Kf)vO(JOomIai zs9EqrJMsR2>z~#9(~~Z@zlp5eYuw*)VmY*2`s1HwWE8WSB9=bx-#gI=X!w!H4lB+& z_?hw)VQ-TxcBrEr63@_mxRc#9P(u#KJGE9W?HvS1Ol3YB@+~!-db%ywvUR2V{gr8t z&O3d9LMMw6$)E?1<94#qkF)vdd|NQ!hI^LIPRc-5u$4jl;Nt$;CD?UTqQ|m133?IZ zV@YRHERkPk2_9l5T+L?2W3x_mX8^?Y1jt)%WN9=Fy{}|SYpr!hCZvryh02^SGaGi} zTs$B*1qKwVzvz( zJZ`?pK6&yNt)*DEw48KYl(g}V7gs?zf5ux|oZGHSj>a5sFQ1;QdFBfbar;6XyC%gD zKLeQ1e80ypCU`k5E^c}T`hc~*saE6sZ>0IRI?GHqaQowG4<1Ut-CHU`;teXotR~@^ zSGw5ERXZySt^Q-~Qf5=z;c|A4L3OLR>?ueZw-Rl6nw0eEwy*0{dD`lHXq2AQp!&Hp zhL%=OLFXM6v;zzh)I)^y#m=?9|99lk7fWHD((uTzqS^)+Z%2OJ23ob)3db}jgpJ?5 zmTc%esYqrNB3eOasuLP~byyf(@QOvK$vl4|tVS8!>cKT3H>lY??+)Ox=MJV~^431P z0u%__*R-!|y&T;tA?O@0#`yo3-<~Q?jGXOMyk7g*aUniU#A|@==$VHNMV?Ht!15030E>OP*O}-=QOlkSApt@z)n!dGb+>B*J54? zl__y-5=QsdJ1CIZJZGZb2VBb{7Nl+Dt?TKyp;Oq7aH;>*r+bq?^wAU!EWQ zzn=go>HSXYKJ179^f5~p)`jh1pXmXf#AB$^-OZ^MsPILtKt<1-atgz3Z1k30M*eMR znRLboi1l89%Sa>k%5!Xyi)L7?Djz6A&HM9@a55f0ebcu~=fu_H9TRaWu8NoCn-rBo z1D__HOoRG9bb5I~$-``k^?Gdm^$7UfnK9P|-JKF$K*(x)$+My2ls&be!FJ<<&PHyZ zOzXjE_r%8Z={JB+yd3zH{qF4Ecl#ja`=^m%YN4C@Z%Wd#|1&Wi9KF~IF^mj?68B|< zNpdC=mBqrQAm4=={pcdo;Lv(2(@5T?dhdo2f-+H zu``ozxO8-A(sEExAsb~u+v@q3)EsrsRfG$xY9*geXK?c7@!DnSu>qnfJYzNI5re)4 zFXj=+0cyWWx|b**dS+>SxA_hNGEvb=scZz`b-B>?DnLi0=gD!CM8&Mv&mwEp zpc5Wqd)Ws>v9ID@@4$7UOwXiVY&1^ z5IE1g@^}4$lHNw~>*V^`W)p}PipX9_^@><3k1DM$EBwCPCD8>?1)Uh6!@YCw@kfB| zzp2+{DYs(Sal_aRd%Y7_P)lo`|l} zfN&YWe$hA8s9hs~oL-@_R)~@Ni?u50vbXTU{SvWr%Ra{M@rw5#3U+*>PJ!Tye9SN& zq9}ajU)Jg(zCaOVjjT~}-~t~N+kEQYe&9t6qJP8@+3GRI&&|vXH{^5OwY@fc0bUn> zpKHuPJsM3ZZ~NI_{G$%9o$F#$irqs1gK&ldcEvx6+J0tU2rUOO9dqG?snUO$;tS#Z zbWfSpM->b^zj2!F3X#V#_ri zd9tn=4eD0YATG%kl~dhRjhx zsWXsU$kUr#Q*4qR)ML#8=oBiHh{0$kJXt6$VF^>(p?Fwno0MXtMp038yAnFl@}bu-BC=1xb| zEPf2PVS92Fa8~?XzzB%`&MmbVJ`nqYtbtj)L4D+q%^fKPGM#cSfq_e3U9z}MGRP*a zsFCf+vqS*WQtjw8geIj^M=FK#(jIQp9v}4T@oh%8Puv5oC}sznc+I z-KMXnX^Yd*`J2~w*f&F}34Je;CDe$BAo+6Pqx;wmspRt9b=Fg11QNCRl zDp6ds|OQ{BEkg}s*^2f$b3r}JC+_2QRDQ|wu+3Q;0v z--*r}0F+78D+O&F3qYMlR*|ea2hDtcjRo%b5}WS#d_oC8nSUlw;J*obKv;^nl8sto z9Z$F=Td(v%PmP7@A%>0z4au$t4{^#}Q4NV}-8HCm8@{(jK5g=;Q?u7PEA*kNmAGT4XSC*cl5HuK-G{2OO3yxi z4R3%|?-41W1*DC0$1m5~LOak2bPZM}bLx>EAa|k6w_}Y!9U(|p+ zUB+{#(QJ$*xy5^ZF9JaR?8WxP%NRMfcU#)gvfqx)1)uMVnGGtV_Sy981*gYP$tlbx zyY=Pi3Wtj>Gizkm3bUtfIAm|-tH63;41w}%vLZ^(lA8W-dq)xiSXlX4>yW6dIdVv_ zTjv|5>=E&w+q^ha{DCUS&+S|HJdhqc=CnbX9rlh(kB@CbBA>$Dn{xJ`dFKR zub|@>V}O?-Wn7(Wmc=j!wmn;x_hAP^KDX?#ns)0P;xDDr^i&Z}S*EdJYKm&DIlaS% zq1!1S*apHs`Lkyf_D;8%$kZ8X2{nA1f%$oh+^M;%!cTke%xT-Ewj9&Ua@tZ?o$z@-f2J68SNrF&g9LoUw?OC$`G=5h0RwE;5=5#mCDYHr$ z&amys&{Wi%#UGf6G74BXj-o3%4wg`H`2!`De}{H#RuzqJt!4xO_TCD8LHG&iLlbd# zzpu6e@o|yD+8WUoASwv$Q6rOCzxcTp<^9e%X#mm&gzXVdy8S&| zI&p0Qs37Xuf2mSYtuKYqq>djg@PP%DTk-0^c$e>idB zmC*72T@Bryt9twLl<8hVO+)VrXzCjmXMIQ92EHHn%;=8Gc$ML5;rWDjWG;YQIe<}( zGz7Nay`9O$NRt0h=JoJ=W#}O_llywvy%4+{y{x?VB}%puAmZ=CFu-r zPw}c!kzIYW-lhPd2Q)Yr)M-5Tj+)(F=V>}k8cgpE+t=~zWJZP}7f=FT4$^yA5U^@s z(Klg4K3?IS1m`JRxT%x6)jm*p_%e(D8#*xRKg0|ow=jajQ{*Tu!%7%9V)&iJqk)m? z3zT|cgT$fr7G+Sk$;7mkh*D{So%Np>?-Al3MMJE_i{_KEH?t14aoyPqK;(_@Yw299 zRJ1HIvNb(!iN^HK-5`1kQAc`thzUdR^CBOaRmBP$-s4Ugl$LpmtZd8;D|G;8m+00y z7UYk{iCUe9qIrY);-#|4$v`COH11L=w@c9pQ)S#SF%2597~P8DotRb}yt!|8o2rbW zbwb7zCcsDYQ^BKAQM5k!CM+q#|El6poHVq~cmPGCRmST*@kxmHfqhth-dDt5ZoAq& z#4f!=Ew&;mc`bqNQI*|L;bF7hl{}U}E?lPln!_78252fgqeVZk6gvvoupX-vE|aBd zKhIs`g~G`jm_7WsyaQsplJdzhfun;}i<*HLT)p8>Wh*0V~)d6rrvVsYLv6YxC z+vcLbq7kjpK_I;Rolm%Gy3hB+%*SJ5?L?)kPwVD1qDl|wEw4*)zyLJW@{E`Z3GfBF zTw!ub=(zmS&s_m+m_jEiEszQmg~@wVQR3xyDgIkAuj|W~1&6IB<*sLqm-CLd90R8n zpCnCLws-@WMrkNO?NRvz)FqL$Qf+Xq-S|5a+xy%dJFwx>i~#Rs5&afH`yDaG<{h$J zi)4q!q31T;Uld4Z*UxCewZ`qg&&qXp8NJDHDfhYnAqD!+rc2kbhXrJJ7We4WqePeW29XkHDV0Vl-<`{T-mq_S68*ASGQSDXi0 z?<&{!bZWvRi#6c@+s8>Ynd08EDwQGPeevnj=ird6-i#v<2r9>E=z~L7Y^gz@pW49l z$(_YCO?I09J%_6p_&bjkJG&z@?x4yCABp1rdW4N}H)vX-NQU+y6Q9h#DV1`~B>{$$P?w4|uJVuzgYAXS{~H9LFO?8+$TdjDQzSCCJ)k67A;G z+PF}F&xavyDS9^mD4h^qZ&DnxNUcb^VNlw8MgJ=3){7(1u>(H! zw1C*&IVT?@9kDyaqZQ5$P`mp=< zw0N1mW%aa{TsD!d004xP-bgsD?z(4KeI);6np8lQ(!)D=whdl{8#N8;yW zkfpufrrRs7lGR!V(^@qMttN9Z2E8ezZ^A{FvMdj5-!hWX&K8=;=x@O|LGXHM& zXpdDoJICdRgBVMgUzGtbW{7qWy>EDNq=wQKP0(4>%Q89V=`WL3#~}#HEX|#wIzPY- zdck~B4?lk!Wxgb#vKCyaS-`||%0L6ALUVx*)8^9)E1&s;E|(q%|4LK2q^67g)TQ2K z{{CU=UM%aG8c@EfZJROpcu{&0BH5*T<ICkT4Vuv;5Iv#=ca_G z!hvw}nGXm23StvyC6pb4usao1pIFi`&4H$KK59>Wb9#3ph}YkrHTj(3BI~uUa=s1v z>O)~2P}H=TMQPv;S}#kK+W5pxf5;!y8tUzXr-EI*Z7I?~?E^zHBn8+aIu$)-MO%{< zPBoidiVZ?7P*Eu_zQ!sVmp}mUJr5||84Ch-j0T3fB8S#v>{XkEYf26a{~k2kjLPN& zQ6#2i^mmb+9E6oLSpe_|F4IX1nAB-fTYd?U9|3ZDb95{mWad%J<;re)6_43lUNVlI zCDLzJsKPIo-z=73tD7X}y{HbHz7}vP@p$shkB(&kS-_Obw2Wv=fLRx}B-yQshDTC> z^0cwrbF5k#EKfsCT;2Okg;LNe_fWg9RhXD0-2XzKk~cj*8RL!8iP?{R0;0T5%f>2h zrgP}QXw8Gk*<=Xv^5>?}0^yXudoyZ2!$km0)$#15NYWI?kZIQ)De>j z;8lERmD%H`i-TSm;@9%D4OBLH%Zk=sQwO@^Dj@u*1=8~K1uAq6m$c5PK@L|AwMGtc zFpp-(3iOh?S_ISwfa<_Cg*65gb!*~fa#wFHu+1{!fk+OzP;)>{@h!$+l*=Dv=5+kV zmv%2bLUzSvsnvPC($$s>B?AsdJCTVlKAx@O$Y!CT*^UZ?K_Gd^V^NVK3v zBEhAsa^Lp8WS>F09GICO-f0m(+1JDM%ql&edKxhcr>yj}WD5H$$5f=W0i{BeJ|x_N zqU5cUM2Q3qyvtn3l@FKkCLWD<`r@MljXk#hQFAts zm1km50Tk1BhR)rMBKIVPo2}LB@K4VIsz0Ip$enFvVfzdYun<;J3CR1i#DU8Bg>b_A$Bza?N&XkNWs{r^+Ero=)w2uxt$1!GJ+IO* z*h29q8D75Y%x(v`b@Q`(b|WC<}^%cDD841!Pw;lH zy#I_a(g$qAh3}>Gz5on4cM6dG5hle{`X4$r=l7YffOR~PR9vKaA8 zisW}`Qvg93X6&S6czJgw45w7bcYJr;n9{+L8Yn>ewU(<{H3WCatGL-=B^0SZ>$A&t zt+zs1UvGEPi=044yKzY?9-aAIh9HQe&``}cn8ov+g$^m0CAgYJb3`NV`# z&mxHNfb&l@Wf#WMkE2$&7rPRa&XgL(A*){{y~R%7xaL1m>95_Al<&!ubdkBH2#>Mr zE`_^Ll}NdUi+>@QesZhSjc+A_#$Z?#sQ30kG-`E=@-7D4r$77UcNUMLofGD)i2~?k z{3*?xg-0wN)5Pahi{%Nmwpq&&q6&Lo2Tooblk~e%#jKPhrV+!c1;t|edW)=~#ce%t~8n(Rt~mfznt5rlU)IDI zUAPyD7apq&ZGzv_r6vPOXq0}0Wh(I;=hoRu1EqrY^kJHTAOlB@3$x0oz>Sv=<5 zAB^|jKXJ~WY{ChnVp2Trn<+!oSY&3)`=cw3(j;QQ_I-Xm;>~Y+F=#mhlMIQ8K3-Gz z`?3CsbF3Oo#aT=AmzcvH^(p`fA^9HOX<}L->CfQnFuh`7UwpC8AL;TFO&+KU+lme$d?lXx$7u~DX3<`J1I-g`@(Z_%c_nTE93)l_{pwoZg1q?xwXyoB14f)p!T;Z z9u}TfMcK>`$8w|NZO@-d&hBDZFTY84FBWG46p+4cl3cJo#3B>Xe2o+>otNVl?Ly~f z#T-8>2uvg}WN*ALZ6)r)w>tPsjXP$jSapD|h?ecG|KRGw4BiD)E0(erqynz_aVNLG zofYhPn_XOYoc_2{bIw}0vOlaMWzL!00)UKxq-A#&mG0Q>5OMYwuSyKy64_*(G+2`G z1CWEQ)fIb)$?{|`2thk4TXm_)hdzJ~Fy!Z~CQq)TSO)?*GRbWnsC8lFoEZOPuO7#o z6tpCRoU`Dkt~OL<%nteAw0m3$n4`3~7|T$goSVT81p-~NMP?`fhE2?UUL_0J3l!Vs zs;7VH>j3(iTIlTWR%Ie8YuI|3Ey?%6t>ZF4`4lU8E?TNXYhg>MXp19u{Ixbf!b*-$ zuV_&x#>dMq$HKa|!{KH;oj|#BuQ3q4w5@&+MzFss@nuvUL=9VW0dxha8(F->ndbx7 zEt2Ne(~Kt7Q0qq_#ncNurXP9-ovkKeUU*6Qcjz`RqsPbM0qyf@2B~ZappM+>#s)W& zy$?;ee-7fCnCaB&Qv&L#PgkkL6gH))LQ9~Y24Bpx)Y9$*7LBXk2cY%#m7(^PLh*C5 z-Cp|G1e_gi<$2gSZ!B{CRWkW9L!T!`vUM+NsZJ(^`cg@tMB%LFVtQ4p{t)Ws=a#!f zirH(DQh72j%aq4^pJRX6N7Lm$348mm0?R^NR_%RnhC)0{pL|U(;}S3&d5jX?{7q`N z6Y%iuBz1I32PsDrh{1$sZhqW|*uV%|!=Gf#evq2=UVItAl~7dhdk8y5+`#9JV?pMv zSdwzHVf|T$@D9f7FXY#P3uS2(RK(n~nru>9ztZ(F+Yd-YT;gTIHmd}Hdd52=o}%Y=+Y=5# z+pK{gw_DvbIpsR6pl|V6#euL{78m^dq%%h0Ec2!#f!uP{C75`hm?#5qkF@e#!RVwN zcXrA0>+kfsIdN_MoqnKkO&kUEg7xy!IqO#6Ivc)yvnKE7J~-6`1DMd4VNaNj*x{0K ziw>_8HH%S$E5qJ$S6VL*N|IsjC+rfk$t51`3ZlfoE9~}dibr7&QL*=~|Ej4|L1w*y@3{_>)ayoZ_WsS^VIP@a^o>7$-hDtLzpy=UniOEH zGX-$FF1|a~0lkizlUXE7Dy*xd6s87>UO|}!XC_0SO$w?B%THSz2p`x$a`Ft_Fh-(X ztA02AI2aA+?YFB=Fv%7_V_N`V^RXs4_oa~Y*RE^+DT7Oc%DyV)WkJBDIS@u1cyI6xnxI{zTet8Bh!awcfv)_l~$jSOSD;i$c)i?5ecR(0JDyaf3G?G#9su1Y8~UUwG&yjDpB3V7k;g zp(T@$6}P6#CoIv~s~|ra(5EkYtvBOK9z-#Ypi`qF@ASbjw!Rsz<$K9Q$pt2Je{XP) zWQeB(7mw0CRd{semkdjT(l?HTO!Lp(+FV4{SF@o7WJ-Wr;nt|^__KYVJaVR=hZS$u z>|cyZPYASk=}=L-M-GD{8bD?-?;pDq(>f(Y&(pz)nl|e6r^k4hPDN`WVV=yl@yTQ@ z01bO(pg@aZ7}Yz(Yu)BM6%_Sa{MJXgn$CCV-j=(8^TAS`Gk3pvr;le`Gx1DPN#Y@T zzX2-0fX$!QdkJRf+{OX44!VWx?@UO$ z?wOL^FjFOK#5Ck92z$5y<~L>dj531c9qaoSz#ib*1!%s% zefI&~UtAYeStvQC;6v5+#BK#Wjz6uDQ@F7$9`IWp10W0_UE5Y|C3>nqQwyF75EUa* za<4669PR*cpD6E$LWvw|7&U$K~9xnh8i~0tcR!Rr|X5Dk)b$h0^gpf0gUxvrOT>>6AlBT38F z-nYD9_Ck*ftfe~ul5Td(*|`PM+9~09mRdS4LR?V%@D^zxJH`!4a+_8(9H+J4!|*XN z3FbgOenbED(dXHIhkb_bifN`8chpNeV5VMX`{Zbt5$co}30PJrw8@0I=?k@ucaqWA75Ul+s46_w*NJ}3=19Jk#8iaDLc)beSwNJcN+yB|P8ZTnOCDa~! zwd79t?y|9pkHp<)F?h-`YRA`6yZEUSrdg#ur{&#s?roD*S&X9}n|=kbmv`Q7kzD0v zI9G4qq!>MnioHZ6eM!Z;zKmXYlD0@rypg40{1C`GwG5^Yf6r9(9`}nnMr#cXQ{=Lk z2`aWEE@iOq&<_A4FcYFLK{wvr!FX8mCaw<0lT4in>#&Pw!NWW#+Q?0a{`2_dfLJ(h{KLVDN4j-0yb zV@^o@oi9#F(hzAr>VWwYTMFUDTR+yR7{_Gl}-I*7I_nj<;dbP=A2yUEc(t zi*+1F7Z&e69tS@T$V>Sq^bO#S4^y!2*0p|QPh`~h&EmH$0b8!a3|pO&I{-_EwACx2 z%zb(KAcS4{{LEcwx*P-I*rZO9OyKK12I~M=8A1mS6MKe9R`zQ7p{^DkvlVkaR_}Y= zFQu*e11#8PQSnM*B)^L_acYXzC3-qsXlKI7D|<0MDcQ<*rs?Fww(>;Nif?v&c5zBA zzNRKZnL;kaw%g%+i;MIcwrEsWMm!yuc?E+506aR!&)-eAqs0?kmk}l7HEbDojOfv8 zTMRO~nOS~lfY-hvFu!_B3ValB-A3Q#8NC_m{2Q&@$PZe-wkLt2jg<6Z+%~`@bzF8J z99wGw4OyIo+CHnFRsgk$5Hz8UgUkZeF1|xa&R^Q^6`OUxmP<|?C{r?h1po$3e5<2Z z3l0;R`(#?*p|9uiedHmMT)4zK>}cTgW}a82D=I;+Hy*7SY38#PNY3YcV(S4s_3bvv zL}gHvkmUWE#LSrw2l>9lXQ_@Mx9yIdX?yQifZizC3SSikLsBc2K=D(jI{+fwY?YcW zD(vg^#ujszXEsd?9IP0;rNe4qwDe@goEM~w4n``Upw+9O9E;muu+(763ArZTNJ-naGbijp7PcJ@xtcGwM|))UruQpZFeq#TF1Mr06z zy(KJ`(g$yl{S|u5?^yFw{9AjRlVc0+n8Z7c>i$I>A^79qfImWj!-q%me*wLKul}Do zP2#^FTESM^0-VY5qAeqfWX#YA6#s9?D+Em zm@~hJ{QAdl79v}l$yKBp#Umrg05BopO{O=4JIh2>Pp-CTTvB67cUf>M9J_T%w z)GB{qU0d)OFAilr-BS3+l-_;D`W6JSPMZk#|8dKRRYg=t$k{(;0{AaE5Y4~5Sx{0q z--h{IXCxuO`*UUwj-SaB0T8L^Oh)nc+TA}VHA2N&>iZ^4)%N7yzZ&_!`Bk;p!{z~1 zR?jx<`al`L=uKag16wckjWjivTV^)UD)q|-m>+T+grzD|{026-0SPKowU+v;mFn{f z77WC|)B&DL>vz~=bq>0oDx8#DDt?`Ms$%ZYFg1QwzIDohP~cBnk8q95T9Bm?$m)y- zk^@QU8NF}Le(SOgtkOW)FL(3vKzXwiG|h~__p9bu->e{%sb|rXgYrRolym0ap+}j( z$u;G@3u^+=zz~V(AMzFusDD9T_nDkaZ*`PV-X~y=w!Q3IK@HKUa+Ys!gmkW(CrU<{ zPaJyVE7eXUQMZg~ELHGvRbhN4@kaX`L*4@m&Gjr!qjqycrT#{Q#P1;g|?*7RYO9G?KO?@Tx1W{gL$v-<|PB?jJ*lsLHK8M$XZr?5=;;Qe*|Tab?*yHjsMsY~mL#CIW5;Oi;vKhA|6K(Q@xb8m zg@-g(e<;()JeG0D`tuX=aFWC{<+2(+$eNP+sIGE((plkF!>+%cSZmRrB-K3b)3))d z2-iLE0YFHIY|3`^`NAMAM+aUxNM8ZCuOiGSaCI(g)^{yTTYGCY-7HA+OJ!+3YBcKJ z@!Zw9ve}ay+uPj>blx9)`^_k25O#Ir0?U!lGfEz=M z2sj=nZK~#nrla&~7b(DNEG#rnys2bSvHnhnU#MxM`b+huyfo$MIo9|_ibjHY$M7MAw3tg zM2?T_5inO4+S789*({kdP$|`lDT>-2Dz!~=WQv3;F zDW9ZGL-;`X89Cfn7guK`DA4l7p@7?X%X_m1;RE9pzj=&#rXqL7Bhn`oh&tP@)-}u_Aj$>o(Z|)FDcrbs8e6C;Yx8Lq~ zZmx`43rk@EIopAC{!8Hz1$y5^NfmnpfFnh6nTHO$9{r)W9w*2h^ulGl*f9P~`vnLoKn~3he)A|rsx{G? zf}-M)IlVHj=Eq-84+(Y!&n;y6&&xXaohS>^S{b%Yi{y<_$n2NDEI&=0{ot#xNHrB=hY6 z&s{0+Jyaiw7udN|unhB4)gZSF!$3xI2`VdmqEz=Yd!qeU@ncD2;Dzqp=>?z{I_LJ%3TGH|lwtYu9mL0rPn4+*aMEc5$oMqDFnFkjj@4e2)UV4glc zaX85>;6p&Lf|~rE4@%qYv5* zPxj$loulHt#tN}^TckI=y#9b68d_KPY5FgCP+^S0{A6bvl< zMq5K6jyZh)65_k9AmxdVmZOM@w_B~!Q`pyP@jB{6>1D9X2kFCJAgiWy7MTUiE_O8~ zTX}q4;NJn4uZA0^jLl+a75qCZZY_FOT%^oJ5`0GCq!LHFg7SdFuTAZ*GO}!RwhRZF z^?k*i0(=kH5B>C~DHCh<|C~Q&g#?KB<$(ctyIICFxE3_P>5&{$igsp{lK1Q6k?DOf zPtlY5-D%B_3d#bG!OT9DS))tGn8TG;J{m8DB(4!OGFz;Ym)_#Ww(r=%hi1~+@G|yZ zK~)-@YcW@`)w7Jgu?K7Myd_J8q^XuH`cv4lswG=>h!MAUI&%7bZ+>F38ADVA4+x;Z ztbb`fwXeqMx8EL={?iW-^rux+N>{%twVagS3v6IZitOE)v|LI(*DtNkZfTH1x(xvpL zXD0cbb6$0Bn3Xu4;7y=OW8wM!;y`%t(|~OHlRvFSob38qQ_?+2*AoYEa!he`v^4Em zft@UE2fiCrkjsGvQI!&&WG9(1P&thnKzZY)L=E%q0@cTY7Jt zZjo<+r5~Tmx@M8iQGF&F7dF~W-SWnTgY2aGO@PNsPbXMd0@2f*rGKoL;bTYMm#i0r z-EmvJzZ!=82Hf!};fJaKocr56g~1O5Ts1b#u&9&bih~J)w=Fj#D`lR)JI31OU*4L` z#Y%^rucEt39I&$7jNX)Y(HfoRHxB-AVR>gA_%`*V`)Dgln_uHq`Z11OJ`OYlxXh&c zObeXo?!f|zWNzhs=w=jG?y+)f{rN<=-)8V|dxgmO6(J1Q+w}e}=H|!5W0?fISE;&4 z(r)Fnv%pXKeJxieIN3vAbCx!=Hk(|zRFZsl=2xp9)elwhBx9XzeH5e;ek%2NXc=yA6nSp_2{c7PGQb$WfZw9~NdJDG|PyI9IwuAx=@7OZD_K)X01L#fUfA#2p@s`H0t=0On zeT)Hz<)|HHAWLgY5lvh*jt-n_s5ZK=V*byUa8W;ajr?gOxjpOI&~JxQAaBd!qq&5W z?`?(;Kde;`D116oYnR$5N2C@$%Y0pG4-Mwr4T`zKxf68sU+?AHA+IDJv13OK zmGE^kE&T@FrH#7s`Ol{lmVEoJ;AF3LxM5bS%@uCp2%B`Xux*Sdzl zF@e&H75YpC%l&efG&v8Pmy@RetVwTp#QV&c)A7t5Q9Odw6@bmOL=DpuY{k zp+mr6xdF>7i1cY5%oVHs*`5D0tb%*Eet~DH`}Lo>mv3Pq56(QRy&K`Nd}i270_r_< zfo$vUR6#ynub(n36!+oR@ZXUEJZwFseFF6&=*Rj>!H~B;;9viHK;;E`|6vFuAZ0$((z?ElRmtYfgqonB2e0`-%^{(M?LT}e@deci zvf|-S7A-Iu%Pmr;OKA{Nh^$uEhX9}8pKK6?st4j@IPFC`A6(jOZ{%$0n!Lj-LF$- zux=k>5xIVQE%|Bz%OUGFJ6dLtZ~z_=A%hNYE%F@DZ(ooJGRY6nZ0W}iS|SKpizACtw_@<9SmeO%YBG5eMs4EnZ=<;t*XMh#|E{~- zJ<3^^SuSVj=2zbJTP_`)rn@}uibP;b9Ok}2A!S(77jYs$~DY;Wn1U1`1#UT1mFkA<{3tzK_<8BM&I4HuCwWQ3PY zH5BCpE9t4hRauAX=2XghE)I>N-a$BeK6L0}!JYw)i1G_*gD^;NWqRw}^!nVizsp#7 z%f*<2D}of<9#!klRF;?rt8bouK+x?ZB#Z~=kCt{2cj z++H-#XxdTzOKj;$Qzb!x0=m`0)fHjjkBu{93%#;?H1vkoeq`{Zt&cO~3)T)Pew~(D ziSgMRz42*^HKu~gkDwoBBaSbkPRMjuE}}0&q$>}xXJO5NOV+lr1$Hl_0@BzX(qG%xnN5hcQS*vr z0+82eHPuWAMT241k+=et?v1&5(3es3QF`xJs%O1vn*W@xyiTn}lMMN3IyH*yQ_@IJ zMe|aySaQ(dBFS2koHj<`M+^7**=1uQ8ulks>1I40(tqnw`3VbYxvzp!8qzwr6a5#1 z-tb4tU{JGEKbz!AXKE0# z(zXmclViuC{n2HI1)lEMU*iiE6O8>+Kftg};jO?C3}`mqOVHZ;MRbp0XI;Q5L%A^N zcqGSmC%M!sg`X3B*txRoQ8T4peSB5ZCYmm=Ai5mDZ^ilz`6iud^}VRBAqJ(w>>Cf0 zTOZA zqZ%W$2;Rjmj@fBAYA^L7+vr~0oL@6LbaL9G|1c5Iz+Xn(3xk$R|$L;#$xCog3cf>GJ ze{b-o&crj%d!6 zfp%mG-4gMlIeSfkKUot9{+7qDFNas;L z{38)Gg1A4l%bIl%yDa~wF?TEYWy}L>0HeWzMqtcoT0l^^dEsn+WcxPtu~pp>NBC%*vlG*tIhF)# zNxO7H1uys`M=FSZCHB)#S}@;;Z9Tv$p$n_)h}4P=Bx5#kY?aqDey-?01@I39lWQl+ zEUVSX0@bVFdjV&*;Y5+ACJQ^OlNL(&il1 zeOY$vJob~3FDULBXiUTe+?0}J)h(Aa3xihCyLZCMCM34I1c>EU_W9j&L9wSXQATC{ zdBxA>`WJFwy_iJ)dnd{R@TSYIujnL}Bcz~eL?o76VI4)q$=|{;4-a%w!wU@1!~GR0 zUK7oyXjP_1H!Ept9r4=xYZFY-o&mDI=EC19ZR?I``IuRfUbuK9RZpWkMsn2-dG?+; z=-q9e6x>$rt)GSBz5P_DBmK)+sa0R)QD0$+lk?7YA|GGC^M<##q-8b4a`4ZL4^265 z83u)`QcJ#UZ(%vAy%w$D^Lg4v!?zKm=NN4c+MpIzLna~IB(sFK462rPX2|_kIx@+E% z6UBX$ny5FpZb?(e-qnTY0*^1XMhqw|xYvNxls^v8ThUYzxprXJiZHA#guKJqP|M*K}i-Fo=Ad57f_a(5S7Zaf0K z*6$23V~p@xK5)v*+5(-OKf2iJR7$ojZGiCRS4X?4ZL zbslaF@_tD;7X;J1c-;oyK<23_2>Y$uAaH?+ghP0@Li_{xl=nZ#_f9GpH-{H}-(FTB zLO2hmK6M$T54y=%tq0mbmtaH3E>!}#k=b{V$bhpEkwI0mYUqB|W@u#uLdlEIy1|ap zbA48S;(HN2m16Thy(FFRPA+H*W3A}G?A_btGm&;TSBg^Pt0hU4b~!ilWWx|ZoV*ZU zE@0!Qbq99a3!tC2M$ZC?vAWU9ROV`-`M1LMu4hBdh?Y{mZDF~a2|!?fij+WWRYu;rzT zGhOB}`xo^x$46b|@@cD+$B6M-JbghiAJs4P?2@k@gkCQD5V_@zk40X)VJ;zQkV?68 zcZ`8Pde5Tsr$D+78}RQy)BB<0YYo2naGZHQ4tjSC!M8)%ix8e%#-Mu$rA_zTnazEt z1~_jK5f%{ibFKyZE~+?G|Ca$8{FuviRqo(|Z-6X>(tRmbOOWNUPdWDgTkYHny_AGjI!Y<&ji6jMUibnBVF&YSWWp9cz z*RvN5#y>vvJad(%WX9}=x=f@a9!-(-q?jYr`v@_6mR%{@anueyc4Wj37cb3K`vly+uIBRF1F;U-Us#I6&YlC|FkTpEL-0<&hZZ z$jTFaYFO2EJz2{2_dp|#pqTKn2{)VQ5&Q@Sj+Q;GN z^L#Fp^25J*Am3$D6N8PBrC;hvEE$qTTTnBUI~p#hNfL%O~wQJ7o_$Ei-$gOUfdliC#V5;zPC)lkE zZk&v8B?nisbvlvkOq5kw;CGHOB4~L@nTG0~iXO^P(_CM|&QyrI9r+jAhpQ;P(7))u z8|eK4a!RPE-#vrA8M*Di_(_6z;5fEV$@k*zXo(XW?g8jcKNY?B-zT1@!BzB&AD4_I^9Q_ zI3EZRNg*~UYl;Tp^uZE<*<3id)`(S2^n`xygm#AyArq2R14_%%GWDs6w;k}HBL_o> zo2gTr;U7+8Z4}^^^xp=2cg@_y-2PYYrfJ&M$;J~9w+;(ej=ZzE&-uB#Z&w;g1-HFd zLnNM5`f{o%LpkeJ^ZL`*Hn_l!>}Le!yDK7+{R>ibbLZN7G7J?c%a3@;rGrw3RPG#I z&^$>D`v7HC74%2D(?7ZO7QP9ALEF3~8-mjQVa@*ZxX{nX>f6;0S|VrSpYGbZgu1}r z_k5v+lhN_`h0Wl7{I=>|iK-lmD+d8r!zrF^BsntX(UXH}Zl1%*5G`L?W{_!e8B;xP zmnPeMS{^Ivx;{65e;gw?Y+7#d6qiJ=2Y(4;d=g{25r8nlmv_E6G?;qpiwcUE0M1)-I__@@_kHr-$s#QZ56dAGGFjzpoS?vEbz92(Rq7^MYq^2+eRMidob?}*SBQ& zzK(3DJl$wv0DMc||C&M}4A=#R*y{GzETRuSJmC zGF%0r3xCys@E%Ru1<*TM=;DDIlYb2Y#kv3uQ-}lB*m^Z;@wVjD-EXDk?9#Ac8G2t=Fv6{KDIcJ`F8Mr$YJLxE;`d3z3XcXS4eJHFy}&- zT2QzD__sW0JKha%V3c^fZ?5UV8S(Bo#BTI1>LmhG%yp=6_YSzk(PS)9yaSy@q7H_4 zs}?6m_ZL(eK1+NK)AFG-KF69o zyG!A&f?I~;!Q3^}fz{(xc^P>e_oLVR!5mII2GFk*4LWbU6~@&o0wdBrz|Os@ZzcL< zg9a)Z<+S0YR{4~5RTx`R3gyTJvq8vhnst8!sg>!{35AKDx8| z&8S;y#3IVvsvTW6EQoPCd2PjQ(luH#WY{`F={GA?OoHCuJ^g=(X)4-*^(YBDk&h*Y zp#(L`WmLVEG=WkyxOB}E{h(VFLmTL|4ZR>w4~weoO3wEx=ZOMN9yzs}&a~(`Vi&3Evqw)gFcd`n)*xsXP76&I8Z`RfR0r441N~R8PxHzx5ZnIC4Db@R z>_ycX94i_LLak&>{@tVgo7`|IQ%PAC>Ghly1=vq@v0?%sD z;;ZDzS4`9`uF$%qANv`~{~<=%e8sUj{5oRoTG2!i{atdh&z8~od0<30qfGjLZl(ga zQ6n`yXape3SHe;AmV~5W9i6pi?y4D}C=>{#!T-5u8t_JDPni_c5+j)GH^+tWhPzhp z1)AyaV<$5>(+5g`K)=tk_n%@>o6s?|I@v&HqBzW?=59~dAnPh7H>xpYlZDTh$hM%- zF3S!+1Y*GN9F27w(%%B&&CxVWurNm~uUsM7i7jv&X=XB>8ItTar6YHh#A~*&easBT7-P)L^BL7$eZSx5^?H8K>sjXyf0+54bDis4=Q{7}eO>2#h#=!!|1=E# zAL;-Qj{Gvw_RUJSdfgftZJ(MI!FvTEmS8tdY4&>L(XA4 z;5S%y86D)5(eNL^EReiYFG^If?oQvB%hgSE`?5XVI64rQ{7nu4Wy>G1|E$56WQ?04 zBEL0J5vqU*=VKAnZ+6X=v3mrn$l2v9-}8h1-k6@AclCzR5a4HJV2YNHJ-Kr;lQ=B* z3wbg+Y*XWJ60~H_7XbXOoH}kU4*zmFV4_TPv&H&ff4ZT!KH#^)$6Dk|YgM~lH=gC} zL0Y^Sy15K*{j$4yh=M3dolbY}4tNh*?n{WztI6#49y}{5F7!3Z+=lWWpXfZ4J6lMt zvF$`GX8v*iQz-PWp}}wo`YI0SYCf@c`TY!Tv!DI@eq?h1Sld|quG-L8mz<(Uo9mQQ zK4PJVeLWM<%6O*;YalNH*Et@6>PG#$c$cc70hBdrTCaW(9lUqn-Xcu$J#-pOSWJuz zSS^y-?tw2u+mOG@`RBtA>{R|{($ycQrLFz$S+^H#yr}lIOnSgsVA7Uvb`A}9=N&YR zX3q$4XHISNQ_6L~39@~i#^hHPM;|Gv_xhrBGY(S+Kw?N41aeVi|7Ei_a}=5THv zBCE$+hz(q&cJVjv`mu>lwA-D%UOu`6ykb1N%o@a8iZ(wQv=-~(>VG?KO6^32?BNq5 z|M9VGu?rih^cpPBcK5rkSIzw@LPNt&C}{v{Wi5NVxO#@d0jO2KmIrmHeA_@nLy zyJlb$me$Z#=$u29F45v^_@a3{cH?;(w%pnnM1N3AD?s+FeR(+JoiCPZec{ptPsCp= zCW!@aST16=qp$1y2ZOLNJc~N6q2bf8J-yQ#aTwLuNEsn9K2c6?beoI! iT@?V-r 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. + */ +/** + * Author: josh.north + * Created: Oct 15, 2018 + */ + +SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; +SET time_zone = "+00:00"; + + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8mb4 */; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `lsio_idtypes` +-- + +CREATE TABLE `lsio_idtypes` ( + `id` tinyint(3) UNSIGNED NOT NULL COMMENT 'UNIQUE ID', + `name` char(8) COLLATE utf8mb4_unicode_520_ci NOT NULL COMMENT 'LANG FILE CODE' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; + +-- +-- Dumping data for table `lsio_idtypes` +-- + +INSERT INTO `lsio_idtypes` (`id`, `name`) VALUES +(3, 'PASSPORT'), +(2, 'STATEID'), +(1, 'UNAVAIL'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `lsio_sites` +-- + +CREATE TABLE `lsio_sites` ( + `id` tinyint(3) UNSIGNED NOT NULL COMMENT 'UNIQUE ID', + `name` varchar(50) COLLATE utf8mb4_unicode_520_ci NOT NULL COMMENT 'LOCATION CODE', + `timezone` varchar(50) COLLATE utf8mb4_unicode_520_ci NOT NULL COMMENT 'ISO TIMEZONE' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; + +-- +-- Dumping data for table `lsio_sites` +-- + +INSERT INTO `lsio_sites` (`id`, `name`, `timezone`) VALUES +(1, 'NOSITE', 'UTC'), +(2, 'Default', 'America/New_York'); +-- -------------------------------------------------------- + +-- +-- Table structure for table `lsio_users` +-- + +CREATE TABLE `lsio_users` ( + `id` int(11) UNSIGNED NOT NULL, + `username` varchar(50) COLLATE utf8mb4_unicode_520_ci NOT NULL, + `password` varchar(60) COLLATE utf8mb4_unicode_520_ci NOT NULL, + `email` varchar(100) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL, + `created` datetime NOT NULL, + `firstname` varchar(50) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL, + `lastname` varchar(50) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL, + `usertype` int(11) UNSIGNED NOT NULL, + `timezone` varchar(20) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; + +-- +-- Dumping data for table `lsio_users` +-- + +INSERT INTO `lsio_users` (`id`, `username`, `password`, `email`, `created`, `firstname`, `lastname`, `usertype`, `timezone`) VALUES +(1, 'admin', '$2a$08$E5C4MP0JtsTmjIDm1aksgOHoascvOVNinOKKxAImrSnwL0zkd9FxO', 'a@b.c', '2015-02-18 19:50:31', 'System', 'Administrator', 1, ''); +-- -------------------------------------------------------- + +-- +-- Table structure for table `lsio_usertypes` +-- + +CREATE TABLE `lsio_usertypes` ( + `id` tinyint(3) UNSIGNED NOT NULL COMMENT 'UNIQUE ID', + `name` char(8) COLLATE utf8mb4_unicode_520_ci NOT NULL COMMENT 'LANG FILE CODE' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; + +-- +-- Dumping data for table `lsio_usertypes` +-- + +INSERT INTO `lsio_usertypes` (`id`, `name`) VALUES +(1, 'ADMIN'), +(3, 'KIOSK'), +(2, 'USER'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `lsio_visits` +-- + +CREATE TABLE `lsio_visits` ( + `id` int(15) UNSIGNED NOT NULL, + `firstname` varchar(50) COLLATE utf8mb4_unicode_520_ci NOT NULL, + `lastname` varchar(50) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL, + `company` varchar(50) COLLATE utf8mb4_unicode_520_ci NOT NULL, + `escort` varchar(50) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL, + `intime` datetime NOT NULL, + `outtime` datetime DEFAULT NULL, + `signature` blob, + `escort_signature` blob, + `citizen` tinyint(3) UNSIGNED DEFAULT NULL, + `id_type` tinyint(3) UNSIGNED DEFAULT NULL, + `id_checked` tinyint(3) UNSIGNED DEFAULT NULL, + `initials` varchar(5) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL, + `badge` varchar(15) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL, + `notes` varchar(255) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL, + `site_id` tinyint(3) UNSIGNED DEFAULT NULL, + `reason` tinyint(3) UNSIGNED DEFAULT NULL, + `approved` tinyint(4) DEFAULT '1' COMMENT '0 void, 1 unapproved, 2 approved' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; + + +-- +-- Table structure for table `lsio_visittypes` +-- + +CREATE TABLE `lsio_visittypes` ( + `id` tinyint(3) UNSIGNED NOT NULL COMMENT 'UNIQUE ID', + `name` char(8) COLLATE utf8mb4_unicode_520_ci NOT NULL COMMENT 'LANG FILE CODE' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; + +-- +-- Dumping data for table `lsio_visittypes` +-- + +INSERT INTO `lsio_visittypes` (`id`, `name`) VALUES +(2, 'ADDEQPT'), +(7, 'INSTHARD'), +(8, 'INSTSOFT'), +(9, 'MAINHARD'), +(10, 'MAINSOFT'), +(4, 'MEETING'), +(1, 'NONEAVA'), +(3, 'REMEQPT'), +(6, 'TESTING'), +(5, 'TOUR'); + +-- +-- Indexes for dumped tables +-- + +-- +-- Indexes for table `lsio_idtypes` +-- +ALTER TABLE `lsio_idtypes` + ADD PRIMARY KEY (`id`), + ADD UNIQUE KEY `id` (`id`), + ADD UNIQUE KEY `name` (`name`); + +-- +-- Indexes for table `lsio_sites` +-- +ALTER TABLE `lsio_sites` + ADD PRIMARY KEY (`id`), + ADD UNIQUE KEY `id` (`id`), + ADD UNIQUE KEY `name` (`name`); + +-- +-- Indexes for table `lsio_users` +-- +ALTER TABLE `lsio_users` + ADD PRIMARY KEY (`id`), + ADD KEY `users_ibfk_1` (`usertype`); + +-- +-- Indexes for table `lsio_usertypes` +-- +ALTER TABLE `lsio_usertypes` + ADD PRIMARY KEY (`id`), + ADD UNIQUE KEY `id` (`id`), + ADD UNIQUE KEY `name` (`name`); + +-- +-- Indexes for table `lsio_visits` +-- +ALTER TABLE `lsio_visits` + ADD PRIMARY KEY (`id`), + ADD KEY `site_id` (`site_id`), + ADD KEY `reason` (`reason`), + ADD KEY `id_checked` (`id_checked`), + ADD KEY `citizen` (`citizen`), + ADD KEY `id_type` (`id_type`); + +-- +-- Indexes for table `lsio_visittypes` +-- +ALTER TABLE `lsio_visittypes` + ADD PRIMARY KEY (`id`), + ADD UNIQUE KEY `id` (`id`), + ADD UNIQUE KEY `name` (`name`); + +-- +-- AUTO_INCREMENT for dumped tables +-- + +-- +-- AUTO_INCREMENT for table `lsio_idtypes` +-- +ALTER TABLE `lsio_idtypes` + MODIFY `id` tinyint(3) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'UNIQUE ID', AUTO_INCREMENT=4; +-- +-- AUTO_INCREMENT for table `lsio_sites` +-- +ALTER TABLE `lsio_sites` + MODIFY `id` tinyint(3) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'UNIQUE ID', AUTO_INCREMENT=25; +-- +-- AUTO_INCREMENT for table `lsio_users` +-- +ALTER TABLE `lsio_users` + MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=35; +-- +-- AUTO_INCREMENT for table `lsio_usertypes` +-- +ALTER TABLE `lsio_usertypes` + MODIFY `id` tinyint(3) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'UNIQUE ID', AUTO_INCREMENT=4; +-- +-- AUTO_INCREMENT for table `lsio_visits` +-- +ALTER TABLE `lsio_visits` + MODIFY `id` int(15) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=59; +-- +-- AUTO_INCREMENT for table `lsio_visittypes` +-- +ALTER TABLE `lsio_visittypes` + MODIFY `id` tinyint(3) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'UNIQUE ID', AUTO_INCREMENT=11; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; diff --git a/autoload.php b/autoload.php new file mode 100755 index 0000000..8e49188 --- /dev/null +++ b/autoload.php @@ -0,0 +1,33 @@ +. + */ + +//Autoloader +spl_autoload_register( function( $class ) { + $prefix = 'App\\LobbySIO\\'; + $base_dir = __DIR__ . '/src/'; + $len = strlen( $prefix ); + if ( strncmp( $prefix, $class, $len ) !== 0 ) { + return; + } + $class_name = str_replace( $prefix, '', $class ); + $file = $base_dir . str_replace('\\', '/', $class_name ) . '.php'; + if( file_exists( $file ) ) { + require $file; + } +}); diff --git a/changelang.php b/changelang.php new file mode 100755 index 0000000..277e480 --- /dev/null +++ b/changelang.php @@ -0,0 +1,22 @@ +. + */ + + $app_disp_lang = filter_input(INPUT_POST, 'app_disp_lang'); // GET SANITARY LANG CHOICE + setcookie ( 'app_disp_lang', $app_disp_lang, time() + 60*60*24*90); // SET LONG COOKIE + header('Location: index.php'); // GO HOME UNTIL WE ADD REFERER LOGIC diff --git a/changesite.php b/changesite.php new file mode 100755 index 0000000..3506625 --- /dev/null +++ b/changesite.php @@ -0,0 +1,22 @@ +. + */ + + $site = filter_input(INPUT_POST, 'site'); // GET SANITARY SITE CHOICE + setcookie ( 'app_site', $site, time() + 60*60*24*90); // SET SITE COOKIE + header('Location: index.php'); // GO HOME UNTIL WE ADD REFERER LOGIC diff --git a/css/all.min.css b/css/all.min.css new file mode 100755 index 0000000..03c0a79 --- /dev/null +++ b/css/all.min.css @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.3.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa,.fab,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{animation:fa-spin 2s infinite linear}.fa-pulse{animation:fa-spin 1s infinite steps(8)}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-balance-scale:before{content:"\f24e"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blind:before{content:"\f29d"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-certificate:before{content:"\f0a3"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-concierge-bell:before{content:"\f562"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-credit-card:before{content:"\f09d"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-diagnoses:before{content:"\f470"}.fa-dice:before{content:"\f522"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-gift:before{content:"\f06b"}.fa-git:before{content:"\f1d3"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-handshake:before{content:"\f2b5"}.fa-hashtag:before{content:"\f292"}.fa-haykal:before{content:"\f666"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hot-tub:before{content:"\f593"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-houzz:before{content:"\f27c"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-internet-explorer:before{content:"\f26b"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mouse-pointer:before{content:"\f245"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-nintendo-switch:before{content:"\f418"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-osi:before{content:"\f41a"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-people-carry:before{content:"\f4ce"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-volume:before{content:"\f2a0"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-random:before{content:"\f074"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-rendact:before{content:"\f3e4"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-sass:before{content:"\f41e"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skull:before{content:"\f54c"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowflake:before{content:"\f2dc"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-swatchbook:before{content:"\f5c3"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toolbox:before{content:"\f552"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-train:before{content:"\f238"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-uikit:before{content:"\f403"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:normal;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-weight:400}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900} \ No newline at end of file diff --git a/css/animate.min.css b/css/animate.min.css new file mode 100755 index 0000000..8ae4afd --- /dev/null +++ b/css/animate.min.css @@ -0,0 +1,12 @@ +@charset "UTF-8";/*! +Animate.css - http://daneden.me/animate +Licensed under the MIT license + +Copyright (c) 2013 Daniel Eden + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +*/.animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.hinge{-webkit-animation-duration:2s;animation-duration:2s}@-webkit-keyframes bounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px);transform:translateY(-15px)}}@keyframes bounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-30px);-ms-transform:translateY(-30px);transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px);-ms-transform:translateY(-15px);transform:translateY(-15px)}}.bounce{-webkit-animation-name:bounce;animation-name:bounce}@-webkit-keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}.flash{-webkit-animation-name:flash;animation-name:flash}@-webkit-keyframes pulse{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.1);transform:scale(1.1)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes pulse{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}100%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.pulse{-webkit-animation-name:pulse;animation-name:pulse}@-webkit-keyframes rubberBand{0%{-webkit-transform:scale(1);transform:scale(1)}30%{-webkit-transform:scaleX(1.25) scaleY(0.75);transform:scaleX(1.25) scaleY(0.75)}40%{-webkit-transform:scaleX(0.75) scaleY(1.25);transform:scaleX(0.75) scaleY(1.25)}60%{-webkit-transform:scaleX(1.15) scaleY(0.85);transform:scaleX(1.15) scaleY(0.85)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes rubberBand{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}30%{-webkit-transform:scaleX(1.25) scaleY(0.75);-ms-transform:scaleX(1.25) scaleY(0.75);transform:scaleX(1.25) scaleY(0.75)}40%{-webkit-transform:scaleX(0.75) scaleY(1.25);-ms-transform:scaleX(0.75) scaleY(1.25);transform:scaleX(0.75) scaleY(1.25)}60%{-webkit-transform:scaleX(1.15) scaleY(0.85);-ms-transform:scaleX(1.15) scaleY(0.85);transform:scaleX(1.15) scaleY(0.85)}100%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.rubberBand{-webkit-animation-name:rubberBand;animation-name:rubberBand}@-webkit-keyframes shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.shake{-webkit-animation-name:shake;animation-name:shake}@-webkit-keyframes swing{20%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}100%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes swing{20%{-webkit-transform:rotate(15deg);-ms-transform:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);-ms-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);-ms-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);-ms-transform:rotate(-5deg);transform:rotate(-5deg)}100%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}}.swing{-webkit-transform-origin:top center;-ms-transform-origin:top center;transform-origin:top center;-webkit-animation-name:swing;animation-name:swing}@-webkit-keyframes tada{0%{-webkit-transform:scale(1);transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg);transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg);transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg);transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0);transform:scale(1) rotate(0)}}@keyframes tada{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg);-ms-transform:scale(0.9) rotate(-3deg);transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg);-ms-transform:scale(1.1) rotate(3deg);transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg);-ms-transform:scale(1.1) rotate(-3deg);transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0);-ms-transform:scale(1) rotate(0);transform:scale(1) rotate(0)}}.tada{-webkit-animation-name:tada;animation-name:tada}@-webkit-keyframes wobble{0%{-webkit-transform:translateX(0%);transform:translateX(0%)}15%{-webkit-transform:translateX(-25%) rotate(-5deg);transform:translateX(-25%) rotate(-5deg)}30%{-webkit-transform:translateX(20%) rotate(3deg);transform:translateX(20%) rotate(3deg)}45%{-webkit-transform:translateX(-15%) rotate(-3deg);transform:translateX(-15%) rotate(-3deg)}60%{-webkit-transform:translateX(10%) rotate(2deg);transform:translateX(10%) rotate(2deg)}75%{-webkit-transform:translateX(-5%) rotate(-1deg);transform:translateX(-5%) rotate(-1deg)}100%{-webkit-transform:translateX(0%);transform:translateX(0%)}}@keyframes wobble{0%{-webkit-transform:translateX(0%);-ms-transform:translateX(0%);transform:translateX(0%)}15%{-webkit-transform:translateX(-25%) rotate(-5deg);-ms-transform:translateX(-25%) rotate(-5deg);transform:translateX(-25%) rotate(-5deg)}30%{-webkit-transform:translateX(20%) rotate(3deg);-ms-transform:translateX(20%) rotate(3deg);transform:translateX(20%) rotate(3deg)}45%{-webkit-transform:translateX(-15%) rotate(-3deg);-ms-transform:translateX(-15%) rotate(-3deg);transform:translateX(-15%) rotate(-3deg)}60%{-webkit-transform:translateX(10%) rotate(2deg);-ms-transform:translateX(10%) rotate(2deg);transform:translateX(10%) rotate(2deg)}75%{-webkit-transform:translateX(-5%) rotate(-1deg);-ms-transform:translateX(-5%) rotate(-1deg);transform:translateX(-5%) rotate(-1deg)}100%{-webkit-transform:translateX(0%);-ms-transform:translateX(0%);transform:translateX(0%)}}.wobble{-webkit-animation-name:wobble;animation-name:wobble}@-webkit-keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05);transform:scale(1.05)}70%{-webkit-transform:scale(.9);transform:scale(.9)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05);-ms-transform:scale(1.05);transform:scale(1.05)}70%{-webkit-transform:scale(.9);-ms-transform:scale(.9);transform:scale(.9)}100%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.bounceIn{-webkit-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}60%{opacity:1;-webkit-transform:translateY(30px);transform:translateY(30px)}80%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes bounceInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}60%{opacity:1;-webkit-transform:translateY(30px);-ms-transform:translateY(30px);transform:translateY(30px)}80%{-webkit-transform:translateY(-10px);-ms-transform:translateY(-10px);transform:translateY(-10px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.bounceInDown{-webkit-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}60%{opacity:1;-webkit-transform:translateX(30px);transform:translateX(30px)}80%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes bounceInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}60%{opacity:1;-webkit-transform:translateX(30px);-ms-transform:translateX(30px);transform:translateX(30px)}80%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.bounceInLeft{-webkit-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}60%{opacity:1;-webkit-transform:translateX(-30px);transform:translateX(-30px)}80%{-webkit-transform:translateX(10px);transform:translateX(10px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes bounceInRight{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}60%{opacity:1;-webkit-transform:translateX(-30px);-ms-transform:translateX(-30px);transform:translateX(-30px)}80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.bounceInRight{-webkit-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceInUp{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}60%{opacity:1;-webkit-transform:translateY(-30px);transform:translateY(-30px)}80%{-webkit-transform:translateY(10px);transform:translateY(10px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes bounceInUp{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}60%{opacity:1;-webkit-transform:translateY(-30px);-ms-transform:translateY(-30px);transform:translateY(-30px)}80%{-webkit-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.bounceInUp{-webkit-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes bounceOut{0%{-webkit-transform:scale(1);transform:scale(1)}25%{-webkit-transform:scale(.95);transform:scale(.95)}50%{opacity:1;-webkit-transform:scale(1.1);transform:scale(1.1)}100%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}}@keyframes bounceOut{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}25%{-webkit-transform:scale(.95);-ms-transform:scale(.95);transform:scale(.95)}50%{opacity:1;-webkit-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}100%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}}.bounceOut{-webkit-animation-name:bounceOut;animation-name:bounceOut}@-webkit-keyframes bounceOutDown{0%{-webkit-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes bounceOutDown{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.bounceOutDown{-webkit-animation-name:bounceOutDown;animation-name:bounceOutDown}@-webkit-keyframes bounceOutLeft{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(20px);transform:translateX(20px)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes bounceOutLeft{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.bounceOutLeft{-webkit-animation-name:bounceOutLeft;animation-name:bounceOutLeft}@-webkit-keyframes bounceOutRight{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes bounceOutRight{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.bounceOutRight{-webkit-animation-name:bounceOutRight;animation-name:bounceOutRight}@-webkit-keyframes bounceOutUp{0%{-webkit-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(20px);transform:translateY(20px)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes bounceOutUp{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.bounceOutUp{-webkit-animation-name:bounceOutUp;animation-name:bounceOutUp}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInDownBig{-webkit-animation-name:fadeInDownBig;animation-name:fadeInDownBig}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInLeftBig{-webkit-animation-name:fadeInLeftBig;animation-name:fadeInLeftBig}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInRightBig{-webkit-animation-name:fadeInRightBig;animation-name:fadeInRightBig}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInUpBig{-webkit-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.fadeOut{-webkit-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}}@keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}}.fadeOutDown{-webkit-animation-name:fadeOutDown;animation-name:fadeOutDown}@-webkit-keyframes fadeOutDownBig{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes fadeOutDownBig{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.fadeOutDownBig{-webkit-animation-name:fadeOutDownBig;animation-name:fadeOutDownBig}@-webkit-keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px)}}@keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}}.fadeOutLeft{-webkit-animation-name:fadeOutLeft;animation-name:fadeOutLeft}@-webkit-keyframes fadeOutLeftBig{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes fadeOutLeftBig{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.fadeOutLeftBig{-webkit-animation-name:fadeOutLeftBig;animation-name:fadeOutLeftBig}@-webkit-keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}}@keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}}.fadeOutRight{-webkit-animation-name:fadeOutRight;animation-name:fadeOutRight}@-webkit-keyframes fadeOutRightBig{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes fadeOutRightBig{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.fadeOutRightBig{-webkit-animation-name:fadeOutRightBig;animation-name:fadeOutRightBig}@-webkit-keyframes fadeOutUp{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}}@keyframes fadeOutUp{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}}.fadeOutUp{-webkit-animation-name:fadeOutUp;animation-name:fadeOutUp}@-webkit-keyframes fadeOutUpBig{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes fadeOutUpBig{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.fadeOutUpBig{-webkit-animation-name:fadeOutUpBig;animation-name:fadeOutUpBig}@-webkit-keyframes flip{0%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0) scale(1);transform:perspective(400px) translateZ(0) rotateY(0) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(170deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(170deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(.95);transform:perspective(400px) translateZ(0) rotateY(360deg) scale(.95);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}100%{-webkit-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(360deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}@keyframes flip{0%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0) scale(1);-ms-transform:perspective(400px) translateZ(0) rotateY(0) scale(1);transform:perspective(400px) translateZ(0) rotateY(0) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(170deg) scale(1);-ms-transform:perspective(400px) translateZ(150px) rotateY(170deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(170deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-ms-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(.95);-ms-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(.95);transform:perspective(400px) translateZ(0) rotateY(360deg) scale(.95);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}100%{-webkit-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(1);-ms-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(360deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}.animated.flip{-webkit-backface-visibility:visible;-ms-backface-visibility:visible;backface-visibility:visible;-webkit-animation-name:flip;animation-name:flip}@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-10deg);transform:perspective(400px) rotateX(-10deg)}70%{-webkit-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg)}100%{-webkit-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}}@keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);-ms-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-10deg);-ms-transform:perspective(400px) rotateX(-10deg);transform:perspective(400px) rotateX(-10deg)}70%{-webkit-transform:perspective(400px) rotateX(10deg);-ms-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg)}100%{-webkit-transform:perspective(400px) rotateX(0deg);-ms-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}}.flipInX{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInX;animation-name:flipInX}@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-10deg);transform:perspective(400px) rotateY(-10deg)}70%{-webkit-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg)}100%{-webkit-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}}@keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);-ms-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-10deg);-ms-transform:perspective(400px) rotateY(-10deg);transform:perspective(400px) rotateY(-10deg)}70%{-webkit-transform:perspective(400px) rotateY(10deg);-ms-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg)}100%{-webkit-transform:perspective(400px) rotateY(0deg);-ms-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}}.flipInY{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInY;animation-name:flipInY}@-webkit-keyframes flipOutX{0%{-webkit-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}@keyframes flipOutX{0%{-webkit-transform:perspective(400px) rotateX(0deg);-ms-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateX(90deg);-ms-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}.flipOutX{-webkit-animation-name:flipOutX;animation-name:flipOutX;-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important}@-webkit-keyframes flipOutY{0%{-webkit-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}@keyframes flipOutY{0%{-webkit-transform:perspective(400px) rotateY(0deg);-ms-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateY(90deg);-ms-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}.flipOutY{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipOutY;animation-name:flipOutY}@-webkit-keyframes lightSpeedIn{0%{-webkit-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}60%{-webkit-transform:translateX(-20%) skewX(30deg);transform:translateX(-20%) skewX(30deg);opacity:1}80%{-webkit-transform:translateX(0%) skewX(-15deg);transform:translateX(0%) skewX(-15deg);opacity:1}100%{-webkit-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}}@keyframes lightSpeedIn{0%{-webkit-transform:translateX(100%) skewX(-30deg);-ms-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}60%{-webkit-transform:translateX(-20%) skewX(30deg);-ms-transform:translateX(-20%) skewX(30deg);transform:translateX(-20%) skewX(30deg);opacity:1}80%{-webkit-transform:translateX(0%) skewX(-15deg);-ms-transform:translateX(0%) skewX(-15deg);transform:translateX(0%) skewX(-15deg);opacity:1}100%{-webkit-transform:translateX(0%) skewX(0deg);-ms-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}}.lightSpeedIn{-webkit-animation-name:lightSpeedIn;animation-name:lightSpeedIn;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}@-webkit-keyframes lightSpeedOut{0%{-webkit-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}100%{-webkit-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}}@keyframes lightSpeedOut{0%{-webkit-transform:translateX(0%) skewX(0deg);-ms-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}100%{-webkit-transform:translateX(100%) skewX(-30deg);-ms-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}}.lightSpeedOut{-webkit-animation-name:lightSpeedOut;animation-name:lightSpeedOut;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}@-webkit-keyframes rotateIn{0%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(-200deg);transform:rotate(-200deg);opacity:0}100%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateIn{0%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(-200deg);-ms-transform:rotate(-200deg);transform:rotate(-200deg);opacity:0}100%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateIn{-webkit-animation-name:rotateIn;animation-name:rotateIn}@-webkit-keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInDownLeft{-webkit-animation-name:rotateInDownLeft;animation-name:rotateInDownLeft}@-webkit-keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInDownRight{-webkit-animation-name:rotateInDownRight;animation-name:rotateInDownRight}@-webkit-keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInUpLeft{-webkit-animation-name:rotateInUpLeft;animation-name:rotateInUpLeft}@-webkit-keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInUpRight{-webkit-animation-name:rotateInUpRight;animation-name:rotateInUpRight}@-webkit-keyframes rotateOut{0%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(200deg);transform:rotate(200deg);opacity:0}}@keyframes rotateOut{0%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(200deg);-ms-transform:rotate(200deg);transform:rotate(200deg);opacity:0}}.rotateOut{-webkit-animation-name:rotateOut;animation-name:rotateOut}@-webkit-keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}@keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}.rotateOutDownLeft{-webkit-animation-name:rotateOutDownLeft;animation-name:rotateOutDownLeft}@-webkit-keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}@keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}.rotateOutDownRight{-webkit-animation-name:rotateOutDownRight;animation-name:rotateOutDownRight}@-webkit-keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}@keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}.rotateOutUpLeft{-webkit-animation-name:rotateOutUpLeft;animation-name:rotateOutUpLeft}@-webkit-keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}@keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}.rotateOutUpRight{-webkit-animation-name:rotateOutUpRight;animation-name:rotateOutUpRight}@-webkit-keyframes slideInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.slideInDown{-webkit-animation-name:slideInDown;animation-name:slideInDown}@-webkit-keyframes slideInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.slideInLeft{-webkit-animation-name:slideInLeft;animation-name:slideInLeft}@-webkit-keyframes slideInRight{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.slideInRight{-webkit-animation-name:slideInRight;animation-name:slideInRight}@-webkit-keyframes slideOutLeft{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes slideOutLeft{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.slideOutLeft{-webkit-animation-name:slideOutLeft;animation-name:slideOutLeft}@-webkit-keyframes slideOutRight{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes slideOutRight{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.slideOutRight{-webkit-animation-name:slideOutRight;animation-name:slideOutRight}@-webkit-keyframes slideOutUp{0%{-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes slideOutUp{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.slideOutUp{-webkit-animation-name:slideOutUp;animation-name:slideOutUp}@-webkit-keyframes slideInUp{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.slideInUp{-webkit-animation-name:slideInUp;animation-name:slideInUp}@-webkit-keyframes slideOutDown{0%{-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes slideOutDown{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.slideOutDown{-webkit-animation-name:slideOutDown;animation-name:slideOutDown}@-webkit-keyframes hinge{0%{-webkit-transform:rotate(0);transform:rotate(0);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate(80deg);transform:rotate(80deg);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%{-webkit-transform:rotate(60deg);transform:rotate(60deg);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}80%{-webkit-transform:rotate(60deg) translateY(0);transform:rotate(60deg) translateY(0);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}100%{-webkit-transform:translateY(700px);transform:translateY(700px);opacity:0}}@keyframes hinge{0%{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate(80deg);-ms-transform:rotate(80deg);transform:rotate(80deg);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%{-webkit-transform:rotate(60deg);-ms-transform:rotate(60deg);transform:rotate(60deg);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}80%{-webkit-transform:rotate(60deg) translateY(0);-ms-transform:rotate(60deg) translateY(0);transform:rotate(60deg) translateY(0);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}100%{-webkit-transform:translateY(700px);-ms-transform:translateY(700px);transform:translateY(700px);opacity:0}}.hinge{-webkit-animation-name:hinge;animation-name:hinge}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}}@keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);-ms-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}}.rollIn{-webkit-animation-name:rollIn;animation-name:rollIn}@-webkit-keyframes rollOut{0%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}100%{opacity:0;-webkit-transform:translateX(100%) rotate(120deg);transform:translateX(100%) rotate(120deg)}}@keyframes rollOut{0%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);-ms-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}100%{opacity:0;-webkit-transform:translateX(100%) rotate(120deg);-ms-transform:translateX(100%) rotate(120deg);transform:translateX(100%) rotate(120deg)}}.rollOut{-webkit-animation-name:rollOut;animation-name:rollOut}@-webkit-keyframes zoomIn{0%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}50%{opacity:1}}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}50%{opacity:1}}.zoomIn{-webkit-animation-name:zoomIn;animation-name:zoomIn}@-webkit-keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInDown{-webkit-animation-name:zoomInDown;animation-name:zoomInDown}@-webkit-keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInLeft{-webkit-animation-name:zoomInLeft;animation-name:zoomInLeft}@-webkit-keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(-48px);transform:scale(.475) translateX(-48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);-ms-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(-48px);-ms-transform:scale(.475) translateX(-48px);transform:scale(.475) translateX(-48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInRight{-webkit-animation-name:zoomInRight;animation-name:zoomInRight}@-webkit-keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);-ms-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);-ms-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInUp{-webkit-animation-name:zoomInUp;animation-name:zoomInUp}@-webkit-keyframes zoomOut{0%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}100%{opacity:0}}@keyframes zoomOut{0%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}50%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}100%{opacity:0}}.zoomOut{-webkit-animation-name:zoomOut;animation-name:zoomOut}@-webkit-keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-transform-origin:center bottom;transform-origin:center bottom}}@keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);-ms-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);-ms-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-transform-origin:center bottom;-ms-transform-origin:center bottom;transform-origin:center bottom}}.zoomOutDown{-webkit-animation-name:zoomOutDown;animation-name:zoomOutDown}@-webkit-keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale(.475) translateX(42px);transform:scale(.475) translateX(42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-transform-origin:left center;transform-origin:left center}}@keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale(.475) translateX(42px);-ms-transform:scale(.475) translateX(42px);transform:scale(.475) translateX(42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center}}.zoomOutLeft{-webkit-animation-name:zoomOutLeft;animation-name:zoomOutLeft}@-webkit-keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale(.475) translateX(-42px);transform:scale(.475) translateX(-42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-transform-origin:right center;transform-origin:right center}}@keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale(.475) translateX(-42px);-ms-transform:scale(.475) translateX(-42px);transform:scale(.475) translateX(-42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);-ms-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}}.zoomOutRight{-webkit-animation-name:zoomOutRight;animation-name:zoomOutRight}@-webkit-keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-transform-origin:center top;transform-origin:center top}}@keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-transform-origin:center top;-ms-transform-origin:center top;transform-origin:center top}}.zoomOutUp{-webkit-animation-name:zoomOutUp;animation-name:zoomOutUp} \ No newline at end of file diff --git a/css/bootstrap-grid.css b/css/bootstrap-grid.css new file mode 100755 index 0000000..a36cd32 --- /dev/null +++ b/css/bootstrap-grid.css @@ -0,0 +1,1912 @@ +/*! + * Bootstrap Grid v4.1.3 (https://getbootstrap.com/) + * Copyright 2011-2018 The Bootstrap Authors + * Copyright 2011-2018 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +@-ms-viewport { + width: device-width; +} + +html { + box-sizing: border-box; + -ms-overflow-style: scrollbar; +} + +*, +*::before, +*::after { + box-sizing: inherit; +} + +.container { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} + +@media (min-width: 576px) { + .container { + max-width: 540px; + } +} + +@media (min-width: 768px) { + .container { + max-width: 720px; + } +} + +@media (min-width: 992px) { + .container { + max-width: 960px; + } +} + +@media (min-width: 1200px) { + .container { + max-width: 1140px; + } +} + +.container-fluid { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} + +.row { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-right: -15px; + margin-left: -15px; +} + +.no-gutters { + margin-right: 0; + margin-left: 0; +} + +.no-gutters > .col, +.no-gutters > [class*="col-"] { + padding-right: 0; + padding-left: 0; +} + +.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, +.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, +.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, +.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, +.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, +.col-xl-auto { + position: relative; + width: 100%; + min-height: 1px; + padding-right: 15px; + padding-left: 15px; +} + +.col { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; +} + +.col-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: none; +} + +.col-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; +} + +.col-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; +} + +.col-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; +} + +.col-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; +} + +.col-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; +} + +.col-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; +} + +.col-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; +} + +.col-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; +} + +.col-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; +} + +.col-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; +} + +.col-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; +} + +.col-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; +} + +.order-first { + -ms-flex-order: -1; + order: -1; +} + +.order-last { + -ms-flex-order: 13; + order: 13; +} + +.order-0 { + -ms-flex-order: 0; + order: 0; +} + +.order-1 { + -ms-flex-order: 1; + order: 1; +} + +.order-2 { + -ms-flex-order: 2; + order: 2; +} + +.order-3 { + -ms-flex-order: 3; + order: 3; +} + +.order-4 { + -ms-flex-order: 4; + order: 4; +} + +.order-5 { + -ms-flex-order: 5; + order: 5; +} + +.order-6 { + -ms-flex-order: 6; + order: 6; +} + +.order-7 { + -ms-flex-order: 7; + order: 7; +} + +.order-8 { + -ms-flex-order: 8; + order: 8; +} + +.order-9 { + -ms-flex-order: 9; + order: 9; +} + +.order-10 { + -ms-flex-order: 10; + order: 10; +} + +.order-11 { + -ms-flex-order: 11; + order: 11; +} + +.order-12 { + -ms-flex-order: 12; + order: 12; +} + +.offset-1 { + margin-left: 8.333333%; +} + +.offset-2 { + margin-left: 16.666667%; +} + +.offset-3 { + margin-left: 25%; +} + +.offset-4 { + margin-left: 33.333333%; +} + +.offset-5 { + margin-left: 41.666667%; +} + +.offset-6 { + margin-left: 50%; +} + +.offset-7 { + margin-left: 58.333333%; +} + +.offset-8 { + margin-left: 66.666667%; +} + +.offset-9 { + margin-left: 75%; +} + +.offset-10 { + margin-left: 83.333333%; +} + +.offset-11 { + margin-left: 91.666667%; +} + +@media (min-width: 576px) { + .col-sm { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-sm-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: none; + } + .col-sm-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-sm-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-sm-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-sm-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-sm-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-sm-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-sm-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-sm-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-sm-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-sm-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-sm-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-sm-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-sm-first { + -ms-flex-order: -1; + order: -1; + } + .order-sm-last { + -ms-flex-order: 13; + order: 13; + } + .order-sm-0 { + -ms-flex-order: 0; + order: 0; + } + .order-sm-1 { + -ms-flex-order: 1; + order: 1; + } + .order-sm-2 { + -ms-flex-order: 2; + order: 2; + } + .order-sm-3 { + -ms-flex-order: 3; + order: 3; + } + .order-sm-4 { + -ms-flex-order: 4; + order: 4; + } + .order-sm-5 { + -ms-flex-order: 5; + order: 5; + } + .order-sm-6 { + -ms-flex-order: 6; + order: 6; + } + .order-sm-7 { + -ms-flex-order: 7; + order: 7; + } + .order-sm-8 { + -ms-flex-order: 8; + order: 8; + } + .order-sm-9 { + -ms-flex-order: 9; + order: 9; + } + .order-sm-10 { + -ms-flex-order: 10; + order: 10; + } + .order-sm-11 { + -ms-flex-order: 11; + order: 11; + } + .order-sm-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-sm-0 { + margin-left: 0; + } + .offset-sm-1 { + margin-left: 8.333333%; + } + .offset-sm-2 { + margin-left: 16.666667%; + } + .offset-sm-3 { + margin-left: 25%; + } + .offset-sm-4 { + margin-left: 33.333333%; + } + .offset-sm-5 { + margin-left: 41.666667%; + } + .offset-sm-6 { + margin-left: 50%; + } + .offset-sm-7 { + margin-left: 58.333333%; + } + .offset-sm-8 { + margin-left: 66.666667%; + } + .offset-sm-9 { + margin-left: 75%; + } + .offset-sm-10 { + margin-left: 83.333333%; + } + .offset-sm-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 768px) { + .col-md { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-md-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: none; + } + .col-md-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-md-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-md-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-md-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-md-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-md-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-md-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-md-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-md-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-md-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-md-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-md-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-md-first { + -ms-flex-order: -1; + order: -1; + } + .order-md-last { + -ms-flex-order: 13; + order: 13; + } + .order-md-0 { + -ms-flex-order: 0; + order: 0; + } + .order-md-1 { + -ms-flex-order: 1; + order: 1; + } + .order-md-2 { + -ms-flex-order: 2; + order: 2; + } + .order-md-3 { + -ms-flex-order: 3; + order: 3; + } + .order-md-4 { + -ms-flex-order: 4; + order: 4; + } + .order-md-5 { + -ms-flex-order: 5; + order: 5; + } + .order-md-6 { + -ms-flex-order: 6; + order: 6; + } + .order-md-7 { + -ms-flex-order: 7; + order: 7; + } + .order-md-8 { + -ms-flex-order: 8; + order: 8; + } + .order-md-9 { + -ms-flex-order: 9; + order: 9; + } + .order-md-10 { + -ms-flex-order: 10; + order: 10; + } + .order-md-11 { + -ms-flex-order: 11; + order: 11; + } + .order-md-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-md-0 { + margin-left: 0; + } + .offset-md-1 { + margin-left: 8.333333%; + } + .offset-md-2 { + margin-left: 16.666667%; + } + .offset-md-3 { + margin-left: 25%; + } + .offset-md-4 { + margin-left: 33.333333%; + } + .offset-md-5 { + margin-left: 41.666667%; + } + .offset-md-6 { + margin-left: 50%; + } + .offset-md-7 { + margin-left: 58.333333%; + } + .offset-md-8 { + margin-left: 66.666667%; + } + .offset-md-9 { + margin-left: 75%; + } + .offset-md-10 { + margin-left: 83.333333%; + } + .offset-md-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 992px) { + .col-lg { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-lg-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: none; + } + .col-lg-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-lg-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-lg-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-lg-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-lg-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-lg-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-lg-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-lg-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-lg-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-lg-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-lg-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-lg-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-lg-first { + -ms-flex-order: -1; + order: -1; + } + .order-lg-last { + -ms-flex-order: 13; + order: 13; + } + .order-lg-0 { + -ms-flex-order: 0; + order: 0; + } + .order-lg-1 { + -ms-flex-order: 1; + order: 1; + } + .order-lg-2 { + -ms-flex-order: 2; + order: 2; + } + .order-lg-3 { + -ms-flex-order: 3; + order: 3; + } + .order-lg-4 { + -ms-flex-order: 4; + order: 4; + } + .order-lg-5 { + -ms-flex-order: 5; + order: 5; + } + .order-lg-6 { + -ms-flex-order: 6; + order: 6; + } + .order-lg-7 { + -ms-flex-order: 7; + order: 7; + } + .order-lg-8 { + -ms-flex-order: 8; + order: 8; + } + .order-lg-9 { + -ms-flex-order: 9; + order: 9; + } + .order-lg-10 { + -ms-flex-order: 10; + order: 10; + } + .order-lg-11 { + -ms-flex-order: 11; + order: 11; + } + .order-lg-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-lg-0 { + margin-left: 0; + } + .offset-lg-1 { + margin-left: 8.333333%; + } + .offset-lg-2 { + margin-left: 16.666667%; + } + .offset-lg-3 { + margin-left: 25%; + } + .offset-lg-4 { + margin-left: 33.333333%; + } + .offset-lg-5 { + margin-left: 41.666667%; + } + .offset-lg-6 { + margin-left: 50%; + } + .offset-lg-7 { + margin-left: 58.333333%; + } + .offset-lg-8 { + margin-left: 66.666667%; + } + .offset-lg-9 { + margin-left: 75%; + } + .offset-lg-10 { + margin-left: 83.333333%; + } + .offset-lg-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 1200px) { + .col-xl { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-xl-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: none; + } + .col-xl-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-xl-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-xl-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-xl-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-xl-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-xl-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-xl-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-xl-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-xl-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-xl-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-xl-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-xl-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-xl-first { + -ms-flex-order: -1; + order: -1; + } + .order-xl-last { + -ms-flex-order: 13; + order: 13; + } + .order-xl-0 { + -ms-flex-order: 0; + order: 0; + } + .order-xl-1 { + -ms-flex-order: 1; + order: 1; + } + .order-xl-2 { + -ms-flex-order: 2; + order: 2; + } + .order-xl-3 { + -ms-flex-order: 3; + order: 3; + } + .order-xl-4 { + -ms-flex-order: 4; + order: 4; + } + .order-xl-5 { + -ms-flex-order: 5; + order: 5; + } + .order-xl-6 { + -ms-flex-order: 6; + order: 6; + } + .order-xl-7 { + -ms-flex-order: 7; + order: 7; + } + .order-xl-8 { + -ms-flex-order: 8; + order: 8; + } + .order-xl-9 { + -ms-flex-order: 9; + order: 9; + } + .order-xl-10 { + -ms-flex-order: 10; + order: 10; + } + .order-xl-11 { + -ms-flex-order: 11; + order: 11; + } + .order-xl-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-xl-0 { + margin-left: 0; + } + .offset-xl-1 { + margin-left: 8.333333%; + } + .offset-xl-2 { + margin-left: 16.666667%; + } + .offset-xl-3 { + margin-left: 25%; + } + .offset-xl-4 { + margin-left: 33.333333%; + } + .offset-xl-5 { + margin-left: 41.666667%; + } + .offset-xl-6 { + margin-left: 50%; + } + .offset-xl-7 { + margin-left: 58.333333%; + } + .offset-xl-8 { + margin-left: 66.666667%; + } + .offset-xl-9 { + margin-left: 75%; + } + .offset-xl-10 { + margin-left: 83.333333%; + } + .offset-xl-11 { + margin-left: 91.666667%; + } +} + +.d-none { + display: none !important; +} + +.d-inline { + display: inline !important; +} + +.d-inline-block { + display: inline-block !important; +} + +.d-block { + display: block !important; +} + +.d-table { + display: table !important; +} + +.d-table-row { + display: table-row !important; +} + +.d-table-cell { + display: table-cell !important; +} + +.d-flex { + display: -ms-flexbox !important; + display: flex !important; +} + +.d-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; +} + +@media (min-width: 576px) { + .d-sm-none { + display: none !important; + } + .d-sm-inline { + display: inline !important; + } + .d-sm-inline-block { + display: inline-block !important; + } + .d-sm-block { + display: block !important; + } + .d-sm-table { + display: table !important; + } + .d-sm-table-row { + display: table-row !important; + } + .d-sm-table-cell { + display: table-cell !important; + } + .d-sm-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-sm-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 768px) { + .d-md-none { + display: none !important; + } + .d-md-inline { + display: inline !important; + } + .d-md-inline-block { + display: inline-block !important; + } + .d-md-block { + display: block !important; + } + .d-md-table { + display: table !important; + } + .d-md-table-row { + display: table-row !important; + } + .d-md-table-cell { + display: table-cell !important; + } + .d-md-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-md-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 992px) { + .d-lg-none { + display: none !important; + } + .d-lg-inline { + display: inline !important; + } + .d-lg-inline-block { + display: inline-block !important; + } + .d-lg-block { + display: block !important; + } + .d-lg-table { + display: table !important; + } + .d-lg-table-row { + display: table-row !important; + } + .d-lg-table-cell { + display: table-cell !important; + } + .d-lg-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-lg-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 1200px) { + .d-xl-none { + display: none !important; + } + .d-xl-inline { + display: inline !important; + } + .d-xl-inline-block { + display: inline-block !important; + } + .d-xl-block { + display: block !important; + } + .d-xl-table { + display: table !important; + } + .d-xl-table-row { + display: table-row !important; + } + .d-xl-table-cell { + display: table-cell !important; + } + .d-xl-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-xl-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media print { + .d-print-none { + display: none !important; + } + .d-print-inline { + display: inline !important; + } + .d-print-inline-block { + display: inline-block !important; + } + .d-print-block { + display: block !important; + } + .d-print-table { + display: table !important; + } + .d-print-table-row { + display: table-row !important; + } + .d-print-table-cell { + display: table-cell !important; + } + .d-print-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-print-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +.flex-row { + -ms-flex-direction: row !important; + flex-direction: row !important; +} + +.flex-column { + -ms-flex-direction: column !important; + flex-direction: column !important; +} + +.flex-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; +} + +.flex-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; +} + +.flex-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; +} + +.flex-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; +} + +.flex-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; +} + +.flex-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; +} + +.flex-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; +} + +.flex-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; +} + +.flex-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; +} + +.flex-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; +} + +.justify-content-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; +} + +.justify-content-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; +} + +.justify-content-center { + -ms-flex-pack: center !important; + justify-content: center !important; +} + +.justify-content-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; +} + +.justify-content-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; +} + +.align-items-start { + -ms-flex-align: start !important; + align-items: flex-start !important; +} + +.align-items-end { + -ms-flex-align: end !important; + align-items: flex-end !important; +} + +.align-items-center { + -ms-flex-align: center !important; + align-items: center !important; +} + +.align-items-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; +} + +.align-items-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; +} + +.align-content-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; +} + +.align-content-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; +} + +.align-content-center { + -ms-flex-line-pack: center !important; + align-content: center !important; +} + +.align-content-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; +} + +.align-content-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; +} + +.align-content-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; +} + +.align-self-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; +} + +.align-self-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; +} + +.align-self-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; +} + +.align-self-center { + -ms-flex-item-align: center !important; + align-self: center !important; +} + +.align-self-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; +} + +.align-self-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; +} + +@media (min-width: 576px) { + .flex-sm-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-sm-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-sm-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-sm-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-sm-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-sm-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-sm-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-sm-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-sm-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-sm-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-sm-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-sm-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-sm-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-sm-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-sm-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-sm-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-sm-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-sm-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-sm-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-sm-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-sm-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-sm-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-sm-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-sm-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-sm-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-sm-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-sm-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-sm-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-sm-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-sm-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-sm-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-sm-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-sm-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-sm-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 768px) { + .flex-md-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-md-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-md-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-md-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-md-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-md-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-md-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-md-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-md-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-md-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-md-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-md-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-md-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-md-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-md-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-md-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-md-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-md-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-md-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-md-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-md-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-md-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-md-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-md-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-md-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-md-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-md-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-md-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-md-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-md-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-md-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-md-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-md-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-md-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 992px) { + .flex-lg-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-lg-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-lg-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-lg-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-lg-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-lg-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-lg-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-lg-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-lg-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-lg-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-lg-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-lg-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-lg-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-lg-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-lg-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-lg-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-lg-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-lg-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-lg-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-lg-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-lg-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-lg-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-lg-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-lg-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-lg-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-lg-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-lg-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-lg-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-lg-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-lg-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-lg-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-lg-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-lg-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-lg-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 1200px) { + .flex-xl-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-xl-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-xl-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-xl-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-xl-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-xl-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-xl-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-xl-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-xl-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-xl-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-xl-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-xl-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-xl-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-xl-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-xl-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-xl-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-xl-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-xl-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-xl-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-xl-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-xl-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-xl-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-xl-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-xl-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-xl-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-xl-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-xl-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-xl-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-xl-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-xl-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-xl-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-xl-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-xl-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-xl-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} +/*# sourceMappingURL=bootstrap-grid.css.map */ \ No newline at end of file diff --git a/css/bootstrap-grid.css.map b/css/bootstrap-grid.css.map new file mode 100755 index 0000000..a636cce --- /dev/null +++ b/css/bootstrap-grid.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../../scss/bootstrap-grid.scss","bootstrap-grid.css","../../scss/_grid.scss","../../scss/mixins/_grid.scss","../../scss/mixins/_breakpoints.scss","../../scss/_variables.scss","../../scss/mixins/_grid-framework.scss","../../scss/utilities/_display.scss","../../scss/utilities/_flex.scss"],"names":[],"mappings":"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","file":"bootstrap-grid.css","sourcesContent":["/*!\n * Bootstrap Grid v4.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n@at-root {\n @-ms-viewport { width: device-width; } // stylelint-disable-line at-rule-no-vendor-prefix\n}\n\nhtml {\n box-sizing: border-box;\n -ms-overflow-style: scrollbar;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n@import \"functions\";\n@import \"variables\";\n\n@import \"mixins/breakpoints\";\n@import \"mixins/grid-framework\";\n@import \"mixins/grid\";\n\n@import \"grid\";\n@import \"utilities/display\";\n@import \"utilities/flex\";\n","/*!\n * Bootstrap Grid v4.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n@-ms-viewport {\n width: device-width;\n}\n\nhtml {\n box-sizing: border-box;\n -ms-overflow-style: scrollbar;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n.container {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container {\n max-width: 1140px;\n }\n}\n\n.container-fluid {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n.row {\n display: flex;\n flex-wrap: wrap;\n margin-right: -15px;\n margin-left: -15px;\n}\n\n.no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n\n.no-gutters > .col,\n.no-gutters > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n\n.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,\n.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,\n.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,\n.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,\n.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,\n.col-xl-auto {\n position: relative;\n width: 100%;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n.col {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n}\n\n.col-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n}\n\n.col-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n}\n\n.col-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n}\n\n.col-3 {\n flex: 0 0 25%;\n max-width: 25%;\n}\n\n.col-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n}\n\n.col-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n}\n\n.col-6 {\n flex: 0 0 50%;\n max-width: 50%;\n}\n\n.col-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n}\n\n.col-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n}\n\n.col-9 {\n flex: 0 0 75%;\n max-width: 75%;\n}\n\n.col-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n}\n\n.col-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n}\n\n.col-12 {\n flex: 0 0 100%;\n max-width: 100%;\n}\n\n.order-first {\n order: -1;\n}\n\n.order-last {\n order: 13;\n}\n\n.order-0 {\n order: 0;\n}\n\n.order-1 {\n order: 1;\n}\n\n.order-2 {\n order: 2;\n}\n\n.order-3 {\n order: 3;\n}\n\n.order-4 {\n order: 4;\n}\n\n.order-5 {\n order: 5;\n}\n\n.order-6 {\n order: 6;\n}\n\n.order-7 {\n order: 7;\n}\n\n.order-8 {\n order: 8;\n}\n\n.order-9 {\n order: 9;\n}\n\n.order-10 {\n order: 10;\n}\n\n.order-11 {\n order: 11;\n}\n\n.order-12 {\n order: 12;\n}\n\n.offset-1 {\n margin-left: 8.333333%;\n}\n\n.offset-2 {\n margin-left: 16.666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.333333%;\n}\n\n.offset-5 {\n margin-left: 41.666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.333333%;\n}\n\n.offset-8 {\n margin-left: 66.666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.333333%;\n}\n\n.offset-11 {\n margin-left: 91.666667%;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-sm-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-sm-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-sm-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-sm-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-sm-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-sm-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-sm-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-sm-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-sm-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-sm-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-sm-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-sm-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-sm-first {\n order: -1;\n }\n .order-sm-last {\n order: 13;\n }\n .order-sm-0 {\n order: 0;\n }\n .order-sm-1 {\n order: 1;\n }\n .order-sm-2 {\n order: 2;\n }\n .order-sm-3 {\n order: 3;\n }\n .order-sm-4 {\n order: 4;\n }\n .order-sm-5 {\n order: 5;\n }\n .order-sm-6 {\n order: 6;\n }\n .order-sm-7 {\n order: 7;\n }\n .order-sm-8 {\n order: 8;\n }\n .order-sm-9 {\n order: 9;\n }\n .order-sm-10 {\n order: 10;\n }\n .order-sm-11 {\n order: 11;\n }\n .order-sm-12 {\n order: 12;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.333333%;\n }\n .offset-sm-2 {\n margin-left: 16.666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.333333%;\n }\n .offset-sm-5 {\n margin-left: 41.666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.333333%;\n }\n .offset-sm-8 {\n margin-left: 66.666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.333333%;\n }\n .offset-sm-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 768px) {\n .col-md {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-md-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-md-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-md-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-md-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-md-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-md-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-md-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-md-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-md-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-md-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-md-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-md-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-md-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-md-first {\n order: -1;\n }\n .order-md-last {\n order: 13;\n }\n .order-md-0 {\n order: 0;\n }\n .order-md-1 {\n order: 1;\n }\n .order-md-2 {\n order: 2;\n }\n .order-md-3 {\n order: 3;\n }\n .order-md-4 {\n order: 4;\n }\n .order-md-5 {\n order: 5;\n }\n .order-md-6 {\n order: 6;\n }\n .order-md-7 {\n order: 7;\n }\n .order-md-8 {\n order: 8;\n }\n .order-md-9 {\n order: 9;\n }\n .order-md-10 {\n order: 10;\n }\n .order-md-11 {\n order: 11;\n }\n .order-md-12 {\n order: 12;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.333333%;\n }\n .offset-md-2 {\n margin-left: 16.666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.333333%;\n }\n .offset-md-5 {\n margin-left: 41.666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.333333%;\n }\n .offset-md-8 {\n margin-left: 66.666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.333333%;\n }\n .offset-md-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 992px) {\n .col-lg {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-lg-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-lg-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-lg-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-lg-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-lg-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-lg-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-lg-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-lg-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-lg-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-lg-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-lg-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-lg-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-lg-first {\n order: -1;\n }\n .order-lg-last {\n order: 13;\n }\n .order-lg-0 {\n order: 0;\n }\n .order-lg-1 {\n order: 1;\n }\n .order-lg-2 {\n order: 2;\n }\n .order-lg-3 {\n order: 3;\n }\n .order-lg-4 {\n order: 4;\n }\n .order-lg-5 {\n order: 5;\n }\n .order-lg-6 {\n order: 6;\n }\n .order-lg-7 {\n order: 7;\n }\n .order-lg-8 {\n order: 8;\n }\n .order-lg-9 {\n order: 9;\n }\n .order-lg-10 {\n order: 10;\n }\n .order-lg-11 {\n order: 11;\n }\n .order-lg-12 {\n order: 12;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.333333%;\n }\n .offset-lg-2 {\n margin-left: 16.666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.333333%;\n }\n .offset-lg-5 {\n margin-left: 41.666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.333333%;\n }\n .offset-lg-8 {\n margin-left: 66.666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.333333%;\n }\n .offset-lg-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 1200px) {\n .col-xl {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-xl-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-xl-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-xl-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-xl-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-xl-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-xl-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-xl-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-xl-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-xl-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-xl-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-xl-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-xl-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-xl-first {\n order: -1;\n }\n .order-xl-last {\n order: 13;\n }\n .order-xl-0 {\n order: 0;\n }\n .order-xl-1 {\n order: 1;\n }\n .order-xl-2 {\n order: 2;\n }\n .order-xl-3 {\n order: 3;\n }\n .order-xl-4 {\n order: 4;\n }\n .order-xl-5 {\n order: 5;\n }\n .order-xl-6 {\n order: 6;\n }\n .order-xl-7 {\n order: 7;\n }\n .order-xl-8 {\n order: 8;\n }\n .order-xl-9 {\n order: 9;\n }\n .order-xl-10 {\n order: 10;\n }\n .order-xl-11 {\n order: 11;\n }\n .order-xl-12 {\n order: 12;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.333333%;\n }\n .offset-xl-2 {\n margin-left: 16.666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.333333%;\n }\n .offset-xl-5 {\n margin-left: 41.666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.333333%;\n }\n .offset-xl-8 {\n margin-left: 66.666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.333333%;\n }\n .offset-xl-11 {\n margin-left: 91.666667%;\n }\n}\n\n.d-none {\n display: none !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: flex !important;\n}\n\n.d-inline-flex {\n display: inline-flex !important;\n}\n\n@media (min-width: 576px) {\n .d-sm-none {\n display: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 768px) {\n .d-md-none {\n display: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: flex !important;\n }\n .d-md-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 992px) {\n .d-lg-none {\n display: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 1200px) {\n .d-xl-none {\n display: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media print {\n .d-print-none {\n display: none !important;\n }\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: flex !important;\n }\n .d-print-inline-flex {\n display: inline-flex !important;\n }\n}\n\n.flex-row {\n flex-direction: row !important;\n}\n\n.flex-column {\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n flex-direction: column-reverse !important;\n}\n\n.flex-wrap {\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n.flex-fill {\n flex: 1 1 auto !important;\n}\n\n.flex-grow-0 {\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n flex-shrink: 1 !important;\n}\n\n.justify-content-start {\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n justify-content: center !important;\n}\n\n.justify-content-between {\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n justify-content: space-around !important;\n}\n\n.align-items-start {\n align-items: flex-start !important;\n}\n\n.align-items-end {\n align-items: flex-end !important;\n}\n\n.align-items-center {\n align-items: center !important;\n}\n\n.align-items-baseline {\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n align-items: stretch !important;\n}\n\n.align-content-start {\n align-content: flex-start !important;\n}\n\n.align-content-end {\n align-content: flex-end !important;\n}\n\n.align-content-center {\n align-content: center !important;\n}\n\n.align-content-between {\n align-content: space-between !important;\n}\n\n.align-content-around {\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n align-content: stretch !important;\n}\n\n.align-self-auto {\n align-self: auto !important;\n}\n\n.align-self-start {\n align-self: flex-start !important;\n}\n\n.align-self-end {\n align-self: flex-end !important;\n}\n\n.align-self-center {\n align-self: center !important;\n}\n\n.align-self-baseline {\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n align-self: stretch !important;\n}\n\n@media (min-width: 576px) {\n .flex-sm-row {\n flex-direction: row !important;\n }\n .flex-sm-column {\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-sm-wrap {\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-sm-fill {\n flex: 1 1 auto !important;\n }\n .flex-sm-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-sm-start {\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n justify-content: center !important;\n }\n .justify-content-sm-between {\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n justify-content: space-around !important;\n }\n .align-items-sm-start {\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n align-items: center !important;\n }\n .align-items-sm-baseline {\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n align-items: stretch !important;\n }\n .align-content-sm-start {\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n align-content: center !important;\n }\n .align-content-sm-between {\n align-content: space-between !important;\n }\n .align-content-sm-around {\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n align-self: auto !important;\n }\n .align-self-sm-start {\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n align-self: center !important;\n }\n .align-self-sm-baseline {\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 768px) {\n .flex-md-row {\n flex-direction: row !important;\n }\n .flex-md-column {\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-md-wrap {\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-md-fill {\n flex: 1 1 auto !important;\n }\n .flex-md-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-md-start {\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n justify-content: center !important;\n }\n .justify-content-md-between {\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n justify-content: space-around !important;\n }\n .align-items-md-start {\n align-items: flex-start !important;\n }\n .align-items-md-end {\n align-items: flex-end !important;\n }\n .align-items-md-center {\n align-items: center !important;\n }\n .align-items-md-baseline {\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n align-items: stretch !important;\n }\n .align-content-md-start {\n align-content: flex-start !important;\n }\n .align-content-md-end {\n align-content: flex-end !important;\n }\n .align-content-md-center {\n align-content: center !important;\n }\n .align-content-md-between {\n align-content: space-between !important;\n }\n .align-content-md-around {\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n align-content: stretch !important;\n }\n .align-self-md-auto {\n align-self: auto !important;\n }\n .align-self-md-start {\n align-self: flex-start !important;\n }\n .align-self-md-end {\n align-self: flex-end !important;\n }\n .align-self-md-center {\n align-self: center !important;\n }\n .align-self-md-baseline {\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 992px) {\n .flex-lg-row {\n flex-direction: row !important;\n }\n .flex-lg-column {\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-lg-wrap {\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-lg-fill {\n flex: 1 1 auto !important;\n }\n .flex-lg-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-lg-start {\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n justify-content: center !important;\n }\n .justify-content-lg-between {\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n justify-content: space-around !important;\n }\n .align-items-lg-start {\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n align-items: center !important;\n }\n .align-items-lg-baseline {\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n align-items: stretch !important;\n }\n .align-content-lg-start {\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n align-content: center !important;\n }\n .align-content-lg-between {\n align-content: space-between !important;\n }\n .align-content-lg-around {\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n align-self: auto !important;\n }\n .align-self-lg-start {\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n align-self: center !important;\n }\n .align-self-lg-baseline {\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 1200px) {\n .flex-xl-row {\n flex-direction: row !important;\n }\n .flex-xl-column {\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-xl-wrap {\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-xl-fill {\n flex: 1 1 auto !important;\n }\n .flex-xl-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-xl-start {\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n justify-content: center !important;\n }\n .justify-content-xl-between {\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n justify-content: space-around !important;\n }\n .align-items-xl-start {\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n align-items: center !important;\n }\n .align-items-xl-baseline {\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n align-items: stretch !important;\n }\n .align-content-xl-start {\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n align-content: center !important;\n }\n .align-content-xl-between {\n align-content: space-between !important;\n }\n .align-content-xl-around {\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n align-self: auto !important;\n }\n .align-self-xl-start {\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n align-self: center !important;\n }\n .align-self-xl-baseline {\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n align-self: stretch !important;\n }\n}\n\n/*# sourceMappingURL=bootstrap-grid.css.map */","// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n@if $enable-grid-classes {\n .container {\n @include make-container();\n @include make-container-max-widths();\n }\n}\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but with 100% width for\n// fluid, full width layouts.\n\n@if $enable-grid-classes {\n .container-fluid {\n @include make-container();\n }\n}\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n@if $enable-grid-classes {\n .row {\n @include make-row();\n }\n\n // Remove the negative margin from default .row, then the horizontal padding\n // from all immediate children columns (to prevent runaway style inheritance).\n .no-gutters {\n margin-right: 0;\n margin-left: 0;\n\n > .col,\n > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n }\n }\n}\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n@if $enable-grid-classes {\n @include make-grid-columns();\n}\n","/// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n@mixin make-container() {\n width: 100%;\n padding-right: ($grid-gutter-width / 2);\n padding-left: ($grid-gutter-width / 2);\n margin-right: auto;\n margin-left: auto;\n}\n\n\n// For each breakpoint, define the maximum width of the container in a media query\n@mixin make-container-max-widths($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {\n @each $breakpoint, $container-max-width in $max-widths {\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n max-width: $container-max-width;\n }\n }\n}\n\n@mixin make-row() {\n display: flex;\n flex-wrap: wrap;\n margin-right: ($grid-gutter-width / -2);\n margin-left: ($grid-gutter-width / -2);\n}\n\n@mixin make-col-ready() {\n position: relative;\n // Prevent columns from becoming too narrow when at smaller grid tiers by\n // always setting `width: 100%;`. This works because we use `flex` values\n // later on to override this initial width.\n width: 100%;\n min-height: 1px; // Prevent collapsing\n padding-right: ($grid-gutter-width / 2);\n padding-left: ($grid-gutter-width / 2);\n}\n\n@mixin make-col($size, $columns: $grid-columns) {\n flex: 0 0 percentage($size / $columns);\n // Add a `max-width` to ensure content within each column does not blow out\n // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari\n // do not appear to require this.\n max-width: percentage($size / $columns);\n}\n\n@mixin make-col-offset($size, $columns: $grid-columns) {\n $num: $size / $columns;\n margin-left: if($num == 0, 0, percentage($num));\n}\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width. Null for the largest (last) breakpoint.\n// The maximum value is calculated as the minimum of the next one less 0.02px\n// to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $next: breakpoint-next($name, $breakpoints);\n @return if($next, breakpoint-min($next, $breakpoints) - .02px, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $max: breakpoint-max($name, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($name, $breakpoints) {\n @content;\n }\n }\n}\n","// Variables\n//\n// Variables should follow the `$component-state-property-size` formula for\n// consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.\n\n\n//\n// Color system\n//\n\n$white: #fff !default;\n$gray-100: #f8f9fa !default;\n$gray-200: #e9ecef !default;\n$gray-300: #dee2e6 !default;\n$gray-400: #ced4da !default;\n$gray-500: #adb5bd !default;\n$gray-600: #6c757d !default;\n$gray-700: #495057 !default;\n$gray-800: #343a40 !default;\n$gray-900: #212529 !default;\n$black: #000 !default;\n\n$grays: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$grays: map-merge(\n (\n \"100\": $gray-100,\n \"200\": $gray-200,\n \"300\": $gray-300,\n \"400\": $gray-400,\n \"500\": $gray-500,\n \"600\": $gray-600,\n \"700\": $gray-700,\n \"800\": $gray-800,\n \"900\": $gray-900\n ),\n $grays\n);\n\n\n$blue: #007bff !default;\n$indigo: #6610f2 !default;\n$purple: #6f42c1 !default;\n$pink: #e83e8c !default;\n$red: #dc3545 !default;\n$orange: #fd7e14 !default;\n$yellow: #ffc107 !default;\n$green: #28a745 !default;\n$teal: #20c997 !default;\n$cyan: #17a2b8 !default;\n\n$colors: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$colors: map-merge(\n (\n \"blue\": $blue,\n \"indigo\": $indigo,\n \"purple\": $purple,\n \"pink\": $pink,\n \"red\": $red,\n \"orange\": $orange,\n \"yellow\": $yellow,\n \"green\": $green,\n \"teal\": $teal,\n \"cyan\": $cyan,\n \"white\": $white,\n \"gray\": $gray-600,\n \"gray-dark\": $gray-800\n ),\n $colors\n);\n\n$primary: $blue !default;\n$secondary: $gray-600 !default;\n$success: $green !default;\n$info: $cyan !default;\n$warning: $yellow !default;\n$danger: $red !default;\n$light: $gray-100 !default;\n$dark: $gray-800 !default;\n\n$theme-colors: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$theme-colors: map-merge(\n (\n \"primary\": $primary,\n \"secondary\": $secondary,\n \"success\": $success,\n \"info\": $info,\n \"warning\": $warning,\n \"danger\": $danger,\n \"light\": $light,\n \"dark\": $dark\n ),\n $theme-colors\n);\n\n// Set a specific jump point for requesting color jumps\n$theme-color-interval: 8% !default;\n\n// The yiq lightness value that determines when the lightness of color changes from \"dark\" to \"light\". Acceptable values are between 0 and 255.\n$yiq-contrasted-threshold: 150 !default;\n\n// Customize the light and dark text colors for use in our YIQ color contrast function.\n$yiq-text-dark: $gray-900 !default;\n$yiq-text-light: $white !default;\n\n// Options\n//\n// Quickly modify global styling by enabling or disabling optional features.\n\n$enable-caret: true !default;\n$enable-rounded: true !default;\n$enable-shadows: false !default;\n$enable-gradients: false !default;\n$enable-transitions: true !default;\n$enable-hover-media-query: false !default; // Deprecated, no longer affects any compiled CSS\n$enable-grid-classes: true !default;\n$enable-print-styles: true !default;\n\n\n// Spacing\n//\n// Control the default styling of most Bootstrap elements by modifying these\n// variables. Mostly focused on spacing.\n// You can add more entries to the $spacers map, should you need more variation.\n\n$spacer: 1rem !default;\n$spacers: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$spacers: map-merge(\n (\n 0: 0,\n 1: ($spacer * .25),\n 2: ($spacer * .5),\n 3: $spacer,\n 4: ($spacer * 1.5),\n 5: ($spacer * 3)\n ),\n $spacers\n);\n\n// This variable affects the `.h-*` and `.w-*` classes.\n$sizes: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$sizes: map-merge(\n (\n 25: 25%,\n 50: 50%,\n 75: 75%,\n 100: 100%,\n auto: auto\n ),\n $sizes\n);\n\n// Body\n//\n// Settings for the `` element.\n\n$body-bg: $white !default;\n$body-color: $gray-900 !default;\n\n// Links\n//\n// Style anchor elements.\n\n$link-color: theme-color(\"primary\") !default;\n$link-decoration: none !default;\n$link-hover-color: darken($link-color, 15%) !default;\n$link-hover-decoration: underline !default;\n\n// Paragraphs\n//\n// Style p element.\n\n$paragraph-margin-bottom: 1rem !default;\n\n\n// Grid breakpoints\n//\n// Define the minimum dimensions at which your layout will change,\n// adapting to different screen sizes, for use in media queries.\n\n$grid-breakpoints: (\n xs: 0,\n sm: 576px,\n md: 768px,\n lg: 992px,\n xl: 1200px\n) !default;\n\n@include _assert-ascending($grid-breakpoints, \"$grid-breakpoints\");\n@include _assert-starts-at-zero($grid-breakpoints);\n\n\n// Grid containers\n//\n// Define the maximum width of `.container` for different screen sizes.\n\n$container-max-widths: (\n sm: 540px,\n md: 720px,\n lg: 960px,\n xl: 1140px\n) !default;\n\n@include _assert-ascending($container-max-widths, \"$container-max-widths\");\n\n\n// Grid columns\n//\n// Set the number of columns and specify the width of the gutters.\n\n$grid-columns: 12 !default;\n$grid-gutter-width: 30px !default;\n\n// Components\n//\n// Define common padding and border radius sizes and more.\n\n$line-height-lg: 1.5 !default;\n$line-height-sm: 1.5 !default;\n\n$border-width: 1px !default;\n$border-color: $gray-300 !default;\n\n$border-radius: .25rem !default;\n$border-radius-lg: .3rem !default;\n$border-radius-sm: .2rem !default;\n\n$box-shadow-sm: 0 .125rem .25rem rgba($black, .075) !default;\n$box-shadow: 0 .5rem 1rem rgba($black, .15) !default;\n$box-shadow-lg: 0 1rem 3rem rgba($black, .175) !default;\n\n$component-active-color: $white !default;\n$component-active-bg: theme-color(\"primary\") !default;\n\n$caret-width: .3em !default;\n\n$transition-base: all .2s ease-in-out !default;\n$transition-fade: opacity .15s linear !default;\n$transition-collapse: height .35s ease !default;\n\n\n// Fonts\n//\n// Font, line-height, and color for body text, headings, and more.\n\n// stylelint-disable value-keyword-case\n$font-family-sans-serif: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\" !default;\n$font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace !default;\n$font-family-base: $font-family-sans-serif !default;\n// stylelint-enable value-keyword-case\n\n$font-size-base: 1rem !default; // Assumes the browser default, typically `16px`\n$font-size-lg: ($font-size-base * 1.25) !default;\n$font-size-sm: ($font-size-base * .875) !default;\n\n$font-weight-light: 300 !default;\n$font-weight-normal: 400 !default;\n$font-weight-bold: 700 !default;\n\n$font-weight-base: $font-weight-normal !default;\n$line-height-base: 1.5 !default;\n\n$h1-font-size: $font-size-base * 2.5 !default;\n$h2-font-size: $font-size-base * 2 !default;\n$h3-font-size: $font-size-base * 1.75 !default;\n$h4-font-size: $font-size-base * 1.5 !default;\n$h5-font-size: $font-size-base * 1.25 !default;\n$h6-font-size: $font-size-base !default;\n\n$headings-margin-bottom: ($spacer / 2) !default;\n$headings-font-family: inherit !default;\n$headings-font-weight: 500 !default;\n$headings-line-height: 1.2 !default;\n$headings-color: inherit !default;\n\n$display1-size: 6rem !default;\n$display2-size: 5.5rem !default;\n$display3-size: 4.5rem !default;\n$display4-size: 3.5rem !default;\n\n$display1-weight: 300 !default;\n$display2-weight: 300 !default;\n$display3-weight: 300 !default;\n$display4-weight: 300 !default;\n$display-line-height: $headings-line-height !default;\n\n$lead-font-size: ($font-size-base * 1.25) !default;\n$lead-font-weight: 300 !default;\n\n$small-font-size: 80% !default;\n\n$text-muted: $gray-600 !default;\n\n$blockquote-small-color: $gray-600 !default;\n$blockquote-font-size: ($font-size-base * 1.25) !default;\n\n$hr-border-color: rgba($black, .1) !default;\n$hr-border-width: $border-width !default;\n\n$mark-padding: .2em !default;\n\n$dt-font-weight: $font-weight-bold !default;\n\n$kbd-box-shadow: inset 0 -.1rem 0 rgba($black, .25) !default;\n$nested-kbd-font-weight: $font-weight-bold !default;\n\n$list-inline-padding: .5rem !default;\n\n$mark-bg: #fcf8e3 !default;\n\n$hr-margin-y: $spacer !default;\n\n\n// Tables\n//\n// Customizes the `.table` component with basic values, each used across all table variations.\n\n$table-cell-padding: .75rem !default;\n$table-cell-padding-sm: .3rem !default;\n\n$table-bg: transparent !default;\n$table-accent-bg: rgba($black, .05) !default;\n$table-hover-bg: rgba($black, .075) !default;\n$table-active-bg: $table-hover-bg !default;\n\n$table-border-width: $border-width !default;\n$table-border-color: $gray-300 !default;\n\n$table-head-bg: $gray-200 !default;\n$table-head-color: $gray-700 !default;\n\n$table-dark-bg: $gray-900 !default;\n$table-dark-accent-bg: rgba($white, .05) !default;\n$table-dark-hover-bg: rgba($white, .075) !default;\n$table-dark-border-color: lighten($gray-900, 7.5%) !default;\n$table-dark-color: $body-bg !default;\n\n$table-striped-order: odd !default;\n\n$table-caption-color: $text-muted !default;\n\n// Buttons + Forms\n//\n// Shared variables that are reassigned to `$input-` and `$btn-` specific variables.\n\n$input-btn-padding-y: .375rem !default;\n$input-btn-padding-x: .75rem !default;\n$input-btn-line-height: $line-height-base !default;\n\n$input-btn-focus-width: .2rem !default;\n$input-btn-focus-color: rgba($component-active-bg, .25) !default;\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color !default;\n\n$input-btn-padding-y-sm: .25rem !default;\n$input-btn-padding-x-sm: .5rem !default;\n$input-btn-line-height-sm: $line-height-sm !default;\n\n$input-btn-padding-y-lg: .5rem !default;\n$input-btn-padding-x-lg: 1rem !default;\n$input-btn-line-height-lg: $line-height-lg !default;\n\n$input-btn-border-width: $border-width !default;\n\n\n// Buttons\n//\n// For each of Bootstrap's buttons, define text, background, and border color.\n\n$btn-padding-y: $input-btn-padding-y !default;\n$btn-padding-x: $input-btn-padding-x !default;\n$btn-line-height: $input-btn-line-height !default;\n\n$btn-padding-y-sm: $input-btn-padding-y-sm !default;\n$btn-padding-x-sm: $input-btn-padding-x-sm !default;\n$btn-line-height-sm: $input-btn-line-height-sm !default;\n\n$btn-padding-y-lg: $input-btn-padding-y-lg !default;\n$btn-padding-x-lg: $input-btn-padding-x-lg !default;\n$btn-line-height-lg: $input-btn-line-height-lg !default;\n\n$btn-border-width: $input-btn-border-width !default;\n\n$btn-font-weight: $font-weight-normal !default;\n$btn-box-shadow: inset 0 1px 0 rgba($white, .15), 0 1px 1px rgba($black, .075) !default;\n$btn-focus-width: $input-btn-focus-width !default;\n$btn-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$btn-disabled-opacity: .65 !default;\n$btn-active-box-shadow: inset 0 3px 5px rgba($black, .125) !default;\n\n$btn-link-disabled-color: $gray-600 !default;\n\n$btn-block-spacing-y: .5rem !default;\n\n// Allows for customizing button radius independently from global border radius\n$btn-border-radius: $border-radius !default;\n$btn-border-radius-lg: $border-radius-lg !default;\n$btn-border-radius-sm: $border-radius-sm !default;\n\n$btn-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n\n// Forms\n\n$label-margin-bottom: .5rem !default;\n\n$input-padding-y: $input-btn-padding-y !default;\n$input-padding-x: $input-btn-padding-x !default;\n$input-line-height: $input-btn-line-height !default;\n\n$input-padding-y-sm: $input-btn-padding-y-sm !default;\n$input-padding-x-sm: $input-btn-padding-x-sm !default;\n$input-line-height-sm: $input-btn-line-height-sm !default;\n\n$input-padding-y-lg: $input-btn-padding-y-lg !default;\n$input-padding-x-lg: $input-btn-padding-x-lg !default;\n$input-line-height-lg: $input-btn-line-height-lg !default;\n\n$input-bg: $white !default;\n$input-disabled-bg: $gray-200 !default;\n\n$input-color: $gray-700 !default;\n$input-border-color: $gray-400 !default;\n$input-border-width: $input-btn-border-width !default;\n$input-box-shadow: inset 0 1px 1px rgba($black, .075) !default;\n\n$input-border-radius: $border-radius !default;\n$input-border-radius-lg: $border-radius-lg !default;\n$input-border-radius-sm: $border-radius-sm !default;\n\n$input-focus-bg: $input-bg !default;\n$input-focus-border-color: lighten($component-active-bg, 25%) !default;\n$input-focus-color: $input-color !default;\n$input-focus-width: $input-btn-focus-width !default;\n$input-focus-box-shadow: $input-btn-focus-box-shadow !default;\n\n$input-placeholder-color: $gray-600 !default;\n$input-plaintext-color: $body-color !default;\n\n$input-height-border: $input-border-width * 2 !default;\n\n$input-height-inner: ($font-size-base * $input-btn-line-height) + ($input-btn-padding-y * 2) !default;\n$input-height: calc(#{$input-height-inner} + #{$input-height-border}) !default;\n\n$input-height-inner-sm: ($font-size-sm * $input-btn-line-height-sm) + ($input-btn-padding-y-sm * 2) !default;\n$input-height-sm: calc(#{$input-height-inner-sm} + #{$input-height-border}) !default;\n\n$input-height-inner-lg: ($font-size-lg * $input-btn-line-height-lg) + ($input-btn-padding-y-lg * 2) !default;\n$input-height-lg: calc(#{$input-height-inner-lg} + #{$input-height-border}) !default;\n\n$input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n$form-text-margin-top: .25rem !default;\n\n$form-check-input-gutter: 1.25rem !default;\n$form-check-input-margin-y: .3rem !default;\n$form-check-input-margin-x: .25rem !default;\n\n$form-check-inline-margin-x: .75rem !default;\n$form-check-inline-input-margin-x: .3125rem !default;\n\n$form-group-margin-bottom: 1rem !default;\n\n$input-group-addon-color: $input-color !default;\n$input-group-addon-bg: $gray-200 !default;\n$input-group-addon-border-color: $input-border-color !default;\n\n$custom-forms-transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n$custom-control-gutter: 1.5rem !default;\n$custom-control-spacer-x: 1rem !default;\n\n$custom-control-indicator-size: 1rem !default;\n$custom-control-indicator-bg: $gray-300 !default;\n$custom-control-indicator-bg-size: 50% 50% !default;\n$custom-control-indicator-box-shadow: inset 0 .25rem .25rem rgba($black, .1) !default;\n\n$custom-control-indicator-disabled-bg: $gray-200 !default;\n$custom-control-label-disabled-color: $gray-600 !default;\n\n$custom-control-indicator-checked-color: $component-active-color !default;\n$custom-control-indicator-checked-bg: $component-active-bg !default;\n$custom-control-indicator-checked-disabled-bg: rgba(theme-color(\"primary\"), .5) !default;\n$custom-control-indicator-checked-box-shadow: none !default;\n\n$custom-control-indicator-focus-box-shadow: 0 0 0 1px $body-bg, $input-btn-focus-box-shadow !default;\n\n$custom-control-indicator-active-color: $component-active-color !default;\n$custom-control-indicator-active-bg: lighten($component-active-bg, 35%) !default;\n$custom-control-indicator-active-box-shadow: none !default;\n\n$custom-checkbox-indicator-border-radius: $border-radius !default;\n$custom-checkbox-indicator-icon-checked: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$custom-checkbox-indicator-indeterminate-bg: $component-active-bg !default;\n$custom-checkbox-indicator-indeterminate-color: $custom-control-indicator-checked-color !default;\n$custom-checkbox-indicator-icon-indeterminate: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='#{$custom-checkbox-indicator-indeterminate-color}' d='M0 2h4'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$custom-checkbox-indicator-indeterminate-box-shadow: none !default;\n\n$custom-radio-indicator-border-radius: 50% !default;\n$custom-radio-indicator-icon-checked: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='#{$custom-control-indicator-checked-color}'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$custom-select-padding-y: .375rem !default;\n$custom-select-padding-x: .75rem !default;\n$custom-select-height: $input-height !default;\n$custom-select-indicator-padding: 1rem !default; // Extra padding to account for the presence of the background-image based indicator\n$custom-select-line-height: $input-btn-line-height !default;\n$custom-select-color: $input-color !default;\n$custom-select-disabled-color: $gray-600 !default;\n$custom-select-bg: $input-bg !default;\n$custom-select-disabled-bg: $gray-200 !default;\n$custom-select-bg-size: 8px 10px !default; // In pixels because image dimensions\n$custom-select-indicator-color: $gray-800 !default;\n$custom-select-indicator: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$custom-select-border-width: $input-btn-border-width !default;\n$custom-select-border-color: $input-border-color !default;\n$custom-select-border-radius: $border-radius !default;\n$custom-select-box-shadow: inset 0 1px 2px rgba($black, .075) !default;\n\n$custom-select-focus-border-color: $input-focus-border-color !default;\n$custom-select-focus-width: $input-btn-focus-width !default;\n$custom-select-focus-box-shadow: 0 0 0 $custom-select-focus-width rgba($custom-select-focus-border-color, .5) !default;\n\n$custom-select-font-size-sm: 75% !default;\n$custom-select-height-sm: $input-height-sm !default;\n\n$custom-select-font-size-lg: 125% !default;\n$custom-select-height-lg: $input-height-lg !default;\n\n$custom-range-track-width: 100% !default;\n$custom-range-track-height: .5rem !default;\n$custom-range-track-cursor: pointer !default;\n$custom-range-track-bg: $gray-300 !default;\n$custom-range-track-border-radius: 1rem !default;\n$custom-range-track-box-shadow: inset 0 .25rem .25rem rgba($black, .1) !default;\n\n$custom-range-thumb-width: 1rem !default;\n$custom-range-thumb-height: $custom-range-thumb-width !default;\n$custom-range-thumb-bg: $component-active-bg !default;\n$custom-range-thumb-border: 0 !default;\n$custom-range-thumb-border-radius: 1rem !default;\n$custom-range-thumb-box-shadow: 0 .1rem .25rem rgba($black, .1) !default;\n$custom-range-thumb-focus-box-shadow: 0 0 0 1px $body-bg, $input-btn-focus-box-shadow !default;\n$custom-range-thumb-focus-box-shadow-width: $input-btn-focus-width !default; // For focus box shadow issue in IE/Edge\n$custom-range-thumb-active-bg: lighten($component-active-bg, 35%) !default;\n\n$custom-file-height: $input-height !default;\n$custom-file-height-inner: $input-height-inner !default;\n$custom-file-focus-border-color: $input-focus-border-color !default;\n$custom-file-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$custom-file-disabled-bg: $input-disabled-bg !default;\n\n$custom-file-padding-y: $input-btn-padding-y !default;\n$custom-file-padding-x: $input-btn-padding-x !default;\n$custom-file-line-height: $input-btn-line-height !default;\n$custom-file-color: $input-color !default;\n$custom-file-bg: $input-bg !default;\n$custom-file-border-width: $input-btn-border-width !default;\n$custom-file-border-color: $input-border-color !default;\n$custom-file-border-radius: $input-border-radius !default;\n$custom-file-box-shadow: $input-box-shadow !default;\n$custom-file-button-color: $custom-file-color !default;\n$custom-file-button-bg: $input-group-addon-bg !default;\n$custom-file-text: (\n en: \"Browse\"\n) !default;\n\n\n// Form validation\n$form-feedback-margin-top: $form-text-margin-top !default;\n$form-feedback-font-size: $small-font-size !default;\n$form-feedback-valid-color: theme-color(\"success\") !default;\n$form-feedback-invalid-color: theme-color(\"danger\") !default;\n\n\n// Dropdowns\n//\n// Dropdown menu container and contents.\n\n$dropdown-min-width: 10rem !default;\n$dropdown-padding-y: .5rem !default;\n$dropdown-spacer: .125rem !default;\n$dropdown-bg: $white !default;\n$dropdown-border-color: rgba($black, .15) !default;\n$dropdown-border-radius: $border-radius !default;\n$dropdown-border-width: $border-width !default;\n$dropdown-divider-bg: $gray-200 !default;\n$dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;\n\n$dropdown-link-color: $gray-900 !default;\n$dropdown-link-hover-color: darken($gray-900, 5%) !default;\n$dropdown-link-hover-bg: $gray-100 !default;\n\n$dropdown-link-active-color: $component-active-color !default;\n$dropdown-link-active-bg: $component-active-bg !default;\n\n$dropdown-link-disabled-color: $gray-600 !default;\n\n$dropdown-item-padding-y: .25rem !default;\n$dropdown-item-padding-x: 1.5rem !default;\n\n$dropdown-header-color: $gray-600 !default;\n\n\n// Z-index master list\n//\n// Warning: Avoid customizing these values. They're used for a bird's eye view\n// of components dependent on the z-axis and are designed to all work together.\n\n$zindex-dropdown: 1000 !default;\n$zindex-sticky: 1020 !default;\n$zindex-fixed: 1030 !default;\n$zindex-modal-backdrop: 1040 !default;\n$zindex-modal: 1050 !default;\n$zindex-popover: 1060 !default;\n$zindex-tooltip: 1070 !default;\n\n// Navs\n\n$nav-link-padding-y: .5rem !default;\n$nav-link-padding-x: 1rem !default;\n$nav-link-disabled-color: $gray-600 !default;\n\n$nav-tabs-border-color: $gray-300 !default;\n$nav-tabs-border-width: $border-width !default;\n$nav-tabs-border-radius: $border-radius !default;\n$nav-tabs-link-hover-border-color: $gray-200 $gray-200 $nav-tabs-border-color !default;\n$nav-tabs-link-active-color: $gray-700 !default;\n$nav-tabs-link-active-bg: $body-bg !default;\n$nav-tabs-link-active-border-color: $gray-300 $gray-300 $nav-tabs-link-active-bg !default;\n\n$nav-pills-border-radius: $border-radius !default;\n$nav-pills-link-active-color: $component-active-color !default;\n$nav-pills-link-active-bg: $component-active-bg !default;\n\n$nav-divider-color: $gray-200 !default;\n$nav-divider-margin-y: ($spacer / 2) !default;\n\n// Navbar\n\n$navbar-padding-y: ($spacer / 2) !default;\n$navbar-padding-x: $spacer !default;\n\n$navbar-nav-link-padding-x: .5rem !default;\n\n$navbar-brand-font-size: $font-size-lg !default;\n// Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link\n$nav-link-height: ($font-size-base * $line-height-base + $nav-link-padding-y * 2) !default;\n$navbar-brand-height: $navbar-brand-font-size * $line-height-base !default;\n$navbar-brand-padding-y: ($nav-link-height - $navbar-brand-height) / 2 !default;\n\n$navbar-toggler-padding-y: .25rem !default;\n$navbar-toggler-padding-x: .75rem !default;\n$navbar-toggler-font-size: $font-size-lg !default;\n$navbar-toggler-border-radius: $btn-border-radius !default;\n\n$navbar-dark-color: rgba($white, .5) !default;\n$navbar-dark-hover-color: rgba($white, .75) !default;\n$navbar-dark-active-color: $white !default;\n$navbar-dark-disabled-color: rgba($white, .25) !default;\n$navbar-dark-toggler-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-dark-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$navbar-dark-toggler-border-color: rgba($white, .1) !default;\n\n$navbar-light-color: rgba($black, .5) !default;\n$navbar-light-hover-color: rgba($black, .7) !default;\n$navbar-light-active-color: rgba($black, .9) !default;\n$navbar-light-disabled-color: rgba($black, .3) !default;\n$navbar-light-toggler-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-light-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$navbar-light-toggler-border-color: rgba($black, .1) !default;\n\n// Pagination\n\n$pagination-padding-y: .5rem !default;\n$pagination-padding-x: .75rem !default;\n$pagination-padding-y-sm: .25rem !default;\n$pagination-padding-x-sm: .5rem !default;\n$pagination-padding-y-lg: .75rem !default;\n$pagination-padding-x-lg: 1.5rem !default;\n$pagination-line-height: 1.25 !default;\n\n$pagination-color: $link-color !default;\n$pagination-bg: $white !default;\n$pagination-border-width: $border-width !default;\n$pagination-border-color: $gray-300 !default;\n\n$pagination-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$pagination-focus-outline: 0 !default;\n\n$pagination-hover-color: $link-hover-color !default;\n$pagination-hover-bg: $gray-200 !default;\n$pagination-hover-border-color: $gray-300 !default;\n\n$pagination-active-color: $component-active-color !default;\n$pagination-active-bg: $component-active-bg !default;\n$pagination-active-border-color: $pagination-active-bg !default;\n\n$pagination-disabled-color: $gray-600 !default;\n$pagination-disabled-bg: $white !default;\n$pagination-disabled-border-color: $gray-300 !default;\n\n\n// Jumbotron\n\n$jumbotron-padding: 2rem !default;\n$jumbotron-bg: $gray-200 !default;\n\n\n// Cards\n\n$card-spacer-y: .75rem !default;\n$card-spacer-x: 1.25rem !default;\n$card-border-width: $border-width !default;\n$card-border-radius: $border-radius !default;\n$card-border-color: rgba($black, .125) !default;\n$card-inner-border-radius: calc(#{$card-border-radius} - #{$card-border-width}) !default;\n$card-cap-bg: rgba($black, .03) !default;\n$card-bg: $white !default;\n\n$card-img-overlay-padding: 1.25rem !default;\n\n$card-group-margin: ($grid-gutter-width / 2) !default;\n$card-deck-margin: $card-group-margin !default;\n\n$card-columns-count: 3 !default;\n$card-columns-gap: 1.25rem !default;\n$card-columns-margin: $card-spacer-y !default;\n\n\n// Tooltips\n\n$tooltip-font-size: $font-size-sm !default;\n$tooltip-max-width: 200px !default;\n$tooltip-color: $white !default;\n$tooltip-bg: $black !default;\n$tooltip-border-radius: $border-radius !default;\n$tooltip-opacity: .9 !default;\n$tooltip-padding-y: .25rem !default;\n$tooltip-padding-x: .5rem !default;\n$tooltip-margin: 0 !default;\n\n$tooltip-arrow-width: .8rem !default;\n$tooltip-arrow-height: .4rem !default;\n$tooltip-arrow-color: $tooltip-bg !default;\n\n\n// Popovers\n\n$popover-font-size: $font-size-sm !default;\n$popover-bg: $white !default;\n$popover-max-width: 276px !default;\n$popover-border-width: $border-width !default;\n$popover-border-color: rgba($black, .2) !default;\n$popover-border-radius: $border-radius-lg !default;\n$popover-box-shadow: 0 .25rem .5rem rgba($black, .2) !default;\n\n$popover-header-bg: darken($popover-bg, 3%) !default;\n$popover-header-color: $headings-color !default;\n$popover-header-padding-y: .5rem !default;\n$popover-header-padding-x: .75rem !default;\n\n$popover-body-color: $body-color !default;\n$popover-body-padding-y: $popover-header-padding-y !default;\n$popover-body-padding-x: $popover-header-padding-x !default;\n\n$popover-arrow-width: 1rem !default;\n$popover-arrow-height: .5rem !default;\n$popover-arrow-color: $popover-bg !default;\n\n$popover-arrow-outer-color: fade-in($popover-border-color, .05) !default;\n\n\n// Badges\n\n$badge-font-size: 75% !default;\n$badge-font-weight: $font-weight-bold !default;\n$badge-padding-y: .25em !default;\n$badge-padding-x: .4em !default;\n$badge-border-radius: $border-radius !default;\n\n$badge-pill-padding-x: .6em !default;\n// Use a higher than normal value to ensure completely rounded edges when\n// customizing padding or font-size on labels.\n$badge-pill-border-radius: 10rem !default;\n\n\n// Modals\n\n// Padding applied to the modal body\n$modal-inner-padding: 1rem !default;\n\n$modal-dialog-margin: .5rem !default;\n$modal-dialog-margin-y-sm-up: 1.75rem !default;\n\n$modal-title-line-height: $line-height-base !default;\n\n$modal-content-bg: $white !default;\n$modal-content-border-color: rgba($black, .2) !default;\n$modal-content-border-width: $border-width !default;\n$modal-content-border-radius: $border-radius-lg !default;\n$modal-content-box-shadow-xs: 0 .25rem .5rem rgba($black, .5) !default;\n$modal-content-box-shadow-sm-up: 0 .5rem 1rem rgba($black, .5) !default;\n\n$modal-backdrop-bg: $black !default;\n$modal-backdrop-opacity: .5 !default;\n$modal-header-border-color: $gray-200 !default;\n$modal-footer-border-color: $modal-header-border-color !default;\n$modal-header-border-width: $modal-content-border-width !default;\n$modal-footer-border-width: $modal-header-border-width !default;\n$modal-header-padding: 1rem !default;\n\n$modal-lg: 800px !default;\n$modal-md: 500px !default;\n$modal-sm: 300px !default;\n\n$modal-transition: transform .3s ease-out !default;\n\n\n// Alerts\n//\n// Define alert colors, border radius, and padding.\n\n$alert-padding-y: .75rem !default;\n$alert-padding-x: 1.25rem !default;\n$alert-margin-bottom: 1rem !default;\n$alert-border-radius: $border-radius !default;\n$alert-link-font-weight: $font-weight-bold !default;\n$alert-border-width: $border-width !default;\n\n$alert-bg-level: -10 !default;\n$alert-border-level: -9 !default;\n$alert-color-level: 6 !default;\n\n\n// Progress bars\n\n$progress-height: 1rem !default;\n$progress-font-size: ($font-size-base * .75) !default;\n$progress-bg: $gray-200 !default;\n$progress-border-radius: $border-radius !default;\n$progress-box-shadow: inset 0 .1rem .1rem rgba($black, .1) !default;\n$progress-bar-color: $white !default;\n$progress-bar-bg: theme-color(\"primary\") !default;\n$progress-bar-animation-timing: 1s linear infinite !default;\n$progress-bar-transition: width .6s ease !default;\n\n// List group\n\n$list-group-bg: $white !default;\n$list-group-border-color: rgba($black, .125) !default;\n$list-group-border-width: $border-width !default;\n$list-group-border-radius: $border-radius !default;\n\n$list-group-item-padding-y: .75rem !default;\n$list-group-item-padding-x: 1.25rem !default;\n\n$list-group-hover-bg: $gray-100 !default;\n$list-group-active-color: $component-active-color !default;\n$list-group-active-bg: $component-active-bg !default;\n$list-group-active-border-color: $list-group-active-bg !default;\n\n$list-group-disabled-color: $gray-600 !default;\n$list-group-disabled-bg: $list-group-bg !default;\n\n$list-group-action-color: $gray-700 !default;\n$list-group-action-hover-color: $list-group-action-color !default;\n\n$list-group-action-active-color: $body-color !default;\n$list-group-action-active-bg: $gray-200 !default;\n\n\n// Image thumbnails\n\n$thumbnail-padding: .25rem !default;\n$thumbnail-bg: $body-bg !default;\n$thumbnail-border-width: $border-width !default;\n$thumbnail-border-color: $gray-300 !default;\n$thumbnail-border-radius: $border-radius !default;\n$thumbnail-box-shadow: 0 1px 2px rgba($black, .075) !default;\n\n\n// Figures\n\n$figure-caption-font-size: 90% !default;\n$figure-caption-color: $gray-600 !default;\n\n\n// Breadcrumbs\n\n$breadcrumb-padding-y: .75rem !default;\n$breadcrumb-padding-x: 1rem !default;\n$breadcrumb-item-padding: .5rem !default;\n\n$breadcrumb-margin-bottom: 1rem !default;\n\n$breadcrumb-bg: $gray-200 !default;\n$breadcrumb-divider-color: $gray-600 !default;\n$breadcrumb-active-color: $gray-600 !default;\n$breadcrumb-divider: quote(\"/\") !default;\n\n$breadcrumb-border-radius: $border-radius !default;\n\n\n// Carousel\n\n$carousel-control-color: $white !default;\n$carousel-control-width: 15% !default;\n$carousel-control-opacity: .5 !default;\n\n$carousel-indicator-width: 30px !default;\n$carousel-indicator-height: 3px !default;\n$carousel-indicator-spacer: 3px !default;\n$carousel-indicator-active-bg: $white !default;\n\n$carousel-caption-width: 70% !default;\n$carousel-caption-color: $white !default;\n\n$carousel-control-icon-width: 20px !default;\n\n$carousel-control-prev-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$carousel-control-next-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$carousel-transition: transform .6s ease !default; // Define transform transition first if using multiple transitions (e.g., `transform 2s ease, opacity .5s ease-out`)\n\n\n// Close\n\n$close-font-size: $font-size-base * 1.5 !default;\n$close-font-weight: $font-weight-bold !default;\n$close-color: $black !default;\n$close-text-shadow: 0 1px 0 $white !default;\n\n// Code\n\n$code-font-size: 87.5% !default;\n$code-color: $pink !default;\n\n$kbd-padding-y: .2rem !default;\n$kbd-padding-x: .4rem !default;\n$kbd-font-size: $code-font-size !default;\n$kbd-color: $white !default;\n$kbd-bg: $gray-900 !default;\n\n$pre-color: $gray-900 !default;\n$pre-scrollable-max-height: 340px !default;\n\n\n// Printing\n$print-page-size: a3 !default;\n$print-body-min-width: map-get($grid-breakpoints, \"lg\") !default;\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `$grid-columns`.\n\n@mixin make-grid-columns($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {\n // Common properties for all breakpoints\n %grid-column {\n position: relative;\n width: 100%;\n min-height: 1px; // Prevent columns from collapsing when empty\n padding-right: ($gutter / 2);\n padding-left: ($gutter / 2);\n }\n\n @each $breakpoint in map-keys($breakpoints) {\n $infix: breakpoint-infix($breakpoint, $breakpoints);\n\n // Allow columns to stretch full width below their breakpoints\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @extend %grid-column;\n }\n }\n .col#{$infix},\n .col#{$infix}-auto {\n @extend %grid-column;\n }\n\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n // Provide basic `.col-{bp}` classes for equal-width flexbox columns\n .col#{$infix} {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col#{$infix}-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none; // Reset earlier grid tiers\n }\n\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @include make-col($i, $columns);\n }\n }\n\n .order#{$infix}-first { order: -1; }\n\n .order#{$infix}-last { order: $columns + 1; }\n\n @for $i from 0 through $columns {\n .order#{$infix}-#{$i} { order: $i; }\n }\n\n // `$columns - 1` because offsetting by the width of an entire row isn't possible\n @for $i from 0 through ($columns - 1) {\n @if not ($infix == \"\" and $i == 0) { // Avoid emitting useless .offset-0\n .offset#{$infix}-#{$i} {\n @include make-col-offset($i, $columns);\n }\n }\n }\n }\n }\n}\n","// stylelint-disable declaration-no-important\n\n//\n// Utilities for common `display` values\n//\n\n@each $breakpoint in map-keys($grid-breakpoints) {\n @include media-breakpoint-up($breakpoint) {\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\n\n .d#{$infix}-none { display: none !important; }\n .d#{$infix}-inline { display: inline !important; }\n .d#{$infix}-inline-block { display: inline-block !important; }\n .d#{$infix}-block { display: block !important; }\n .d#{$infix}-table { display: table !important; }\n .d#{$infix}-table-row { display: table-row !important; }\n .d#{$infix}-table-cell { display: table-cell !important; }\n .d#{$infix}-flex { display: flex !important; }\n .d#{$infix}-inline-flex { display: inline-flex !important; }\n }\n}\n\n\n//\n// Utilities for toggling `display` in print\n//\n\n@media print {\n .d-print-none { display: none !important; }\n .d-print-inline { display: inline !important; }\n .d-print-inline-block { display: inline-block !important; }\n .d-print-block { display: block !important; }\n .d-print-table { display: table !important; }\n .d-print-table-row { display: table-row !important; }\n .d-print-table-cell { display: table-cell !important; }\n .d-print-flex { display: flex !important; }\n .d-print-inline-flex { display: inline-flex !important; }\n}\n","// stylelint-disable declaration-no-important\n\n// Flex variation\n//\n// Custom styles for additional flex alignment options.\n\n@each $breakpoint in map-keys($grid-breakpoints) {\n @include media-breakpoint-up($breakpoint) {\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\n\n .flex#{$infix}-row { flex-direction: row !important; }\n .flex#{$infix}-column { flex-direction: column !important; }\n .flex#{$infix}-row-reverse { flex-direction: row-reverse !important; }\n .flex#{$infix}-column-reverse { flex-direction: column-reverse !important; }\n\n .flex#{$infix}-wrap { flex-wrap: wrap !important; }\n .flex#{$infix}-nowrap { flex-wrap: nowrap !important; }\n .flex#{$infix}-wrap-reverse { flex-wrap: wrap-reverse !important; }\n .flex#{$infix}-fill { flex: 1 1 auto !important; }\n .flex#{$infix}-grow-0 { flex-grow: 0 !important; }\n .flex#{$infix}-grow-1 { flex-grow: 1 !important; }\n .flex#{$infix}-shrink-0 { flex-shrink: 0 !important; }\n .flex#{$infix}-shrink-1 { flex-shrink: 1 !important; }\n\n .justify-content#{$infix}-start { justify-content: flex-start !important; }\n .justify-content#{$infix}-end { justify-content: flex-end !important; }\n .justify-content#{$infix}-center { justify-content: center !important; }\n .justify-content#{$infix}-between { justify-content: space-between !important; }\n .justify-content#{$infix}-around { justify-content: space-around !important; }\n\n .align-items#{$infix}-start { align-items: flex-start !important; }\n .align-items#{$infix}-end { align-items: flex-end !important; }\n .align-items#{$infix}-center { align-items: center !important; }\n .align-items#{$infix}-baseline { align-items: baseline !important; }\n .align-items#{$infix}-stretch { align-items: stretch !important; }\n\n .align-content#{$infix}-start { align-content: flex-start !important; }\n .align-content#{$infix}-end { align-content: flex-end !important; }\n .align-content#{$infix}-center { align-content: center !important; }\n .align-content#{$infix}-between { align-content: space-between !important; }\n .align-content#{$infix}-around { align-content: space-around !important; }\n .align-content#{$infix}-stretch { align-content: stretch !important; }\n\n .align-self#{$infix}-auto { align-self: auto !important; }\n .align-self#{$infix}-start { align-self: flex-start !important; }\n .align-self#{$infix}-end { align-self: flex-end !important; }\n .align-self#{$infix}-center { align-self: center !important; }\n .align-self#{$infix}-baseline { align-self: baseline !important; }\n .align-self#{$infix}-stretch { align-self: stretch !important; }\n }\n}\n"]} \ No newline at end of file diff --git a/css/bootstrap-grid.min.css b/css/bootstrap-grid.min.css new file mode 100755 index 0000000..63e1bc6 --- /dev/null +++ b/css/bootstrap-grid.min.css @@ -0,0 +1,7 @@ +/*! + * Bootstrap Grid v4.1.3 (https://getbootstrap.com/) + * Copyright 2011-2018 The Bootstrap Authors + * Copyright 2011-2018 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */@-ms-viewport{width:device-width}html{box-sizing:border-box;-ms-overflow-style:scrollbar}*,::after,::before{box-sizing:inherit}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}} +/*# sourceMappingURL=bootstrap-grid.min.css.map */ \ No newline at end of file diff --git a/css/bootstrap-grid.min.css.map b/css/bootstrap-grid.min.css.map new file mode 100755 index 0000000..4cc3aa6 --- /dev/null +++ b/css/bootstrap-grid.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../../scss/bootstrap-grid.scss","dist/css/bootstrap-grid.css","../../scss/_grid.scss","../../scss/mixins/_grid.scss","../../scss/mixins/_breakpoints.scss","../../scss/mixins/_grid-framework.scss","../../scss/utilities/_display.scss","../../scss/utilities/_flex.scss"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Bootstrap Grid v4.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n@at-root {\n @-ms-viewport { width: device-width; } // stylelint-disable-line at-rule-no-vendor-prefix\n}\n\nhtml {\n box-sizing: border-box;\n -ms-overflow-style: scrollbar;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n@import \"functions\";\n@import \"variables\";\n\n@import \"mixins/breakpoints\";\n@import \"mixins/grid-framework\";\n@import \"mixins/grid\";\n\n@import \"grid\";\n@import \"utilities/display\";\n@import \"utilities/flex\";\n","/*!\n * Bootstrap Grid v4.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n@-ms-viewport {\n width: device-width;\n}\n\nhtml {\n box-sizing: border-box;\n -ms-overflow-style: scrollbar;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n.container {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container {\n max-width: 1140px;\n }\n}\n\n.container-fluid {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n.row {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n margin-right: -15px;\n margin-left: -15px;\n}\n\n.no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n\n.no-gutters > .col,\n.no-gutters > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n\n.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,\n.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,\n.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,\n.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,\n.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,\n.col-xl-auto {\n position: relative;\n width: 100%;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n.col {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n}\n\n.col-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n}\n\n.col-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n}\n\n.col-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n}\n\n.col-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n}\n\n.col-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n}\n\n.col-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n}\n\n.col-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n}\n\n.col-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n}\n\n.col-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n}\n\n.col-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n}\n\n.col-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n}\n\n.col-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n}\n\n.col-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n}\n\n.order-first {\n -ms-flex-order: -1;\n order: -1;\n}\n\n.order-last {\n -ms-flex-order: 13;\n order: 13;\n}\n\n.order-0 {\n -ms-flex-order: 0;\n order: 0;\n}\n\n.order-1 {\n -ms-flex-order: 1;\n order: 1;\n}\n\n.order-2 {\n -ms-flex-order: 2;\n order: 2;\n}\n\n.order-3 {\n -ms-flex-order: 3;\n order: 3;\n}\n\n.order-4 {\n -ms-flex-order: 4;\n order: 4;\n}\n\n.order-5 {\n -ms-flex-order: 5;\n order: 5;\n}\n\n.order-6 {\n -ms-flex-order: 6;\n order: 6;\n}\n\n.order-7 {\n -ms-flex-order: 7;\n order: 7;\n}\n\n.order-8 {\n -ms-flex-order: 8;\n order: 8;\n}\n\n.order-9 {\n -ms-flex-order: 9;\n order: 9;\n}\n\n.order-10 {\n -ms-flex-order: 10;\n order: 10;\n}\n\n.order-11 {\n -ms-flex-order: 11;\n order: 11;\n}\n\n.order-12 {\n -ms-flex-order: 12;\n order: 12;\n}\n\n.offset-1 {\n margin-left: 8.333333%;\n}\n\n.offset-2 {\n margin-left: 16.666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.333333%;\n}\n\n.offset-5 {\n margin-left: 41.666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.333333%;\n}\n\n.offset-8 {\n margin-left: 66.666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.333333%;\n}\n\n.offset-11 {\n margin-left: 91.666667%;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-sm-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-sm-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-sm-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-sm-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-sm-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-sm-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-sm-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-sm-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-sm-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-sm-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-sm-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-sm-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-sm-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-sm-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-sm-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-sm-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-sm-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-sm-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-sm-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-sm-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-sm-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-sm-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-sm-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-sm-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-sm-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-sm-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-sm-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-sm-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.333333%;\n }\n .offset-sm-2 {\n margin-left: 16.666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.333333%;\n }\n .offset-sm-5 {\n margin-left: 41.666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.333333%;\n }\n .offset-sm-8 {\n margin-left: 66.666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.333333%;\n }\n .offset-sm-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 768px) {\n .col-md {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-md-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-md-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-md-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-md-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-md-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-md-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-md-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-md-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-md-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-md-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-md-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-md-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-md-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-md-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-md-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-md-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-md-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-md-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-md-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-md-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-md-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-md-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-md-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-md-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-md-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-md-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-md-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-md-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.333333%;\n }\n .offset-md-2 {\n margin-left: 16.666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.333333%;\n }\n .offset-md-5 {\n margin-left: 41.666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.333333%;\n }\n .offset-md-8 {\n margin-left: 66.666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.333333%;\n }\n .offset-md-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 992px) {\n .col-lg {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-lg-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-lg-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-lg-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-lg-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-lg-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-lg-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-lg-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-lg-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-lg-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-lg-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-lg-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-lg-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-lg-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-lg-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-lg-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-lg-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-lg-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-lg-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-lg-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-lg-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-lg-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-lg-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-lg-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-lg-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-lg-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-lg-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-lg-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-lg-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.333333%;\n }\n .offset-lg-2 {\n margin-left: 16.666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.333333%;\n }\n .offset-lg-5 {\n margin-left: 41.666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.333333%;\n }\n .offset-lg-8 {\n margin-left: 66.666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.333333%;\n }\n .offset-lg-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 1200px) {\n .col-xl {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-xl-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-xl-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-xl-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-xl-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-xl-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-xl-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-xl-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-xl-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-xl-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-xl-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-xl-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-xl-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-xl-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-xl-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-xl-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-xl-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-xl-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-xl-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-xl-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-xl-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-xl-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-xl-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-xl-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-xl-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-xl-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-xl-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-xl-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-xl-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.333333%;\n }\n .offset-xl-2 {\n margin-left: 16.666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.333333%;\n }\n .offset-xl-5 {\n margin-left: 41.666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.333333%;\n }\n .offset-xl-8 {\n margin-left: 66.666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.333333%;\n }\n .offset-xl-11 {\n margin-left: 91.666667%;\n }\n}\n\n.d-none {\n display: none !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n}\n\n.d-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n}\n\n@media (min-width: 576px) {\n .d-sm-none {\n display: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 768px) {\n .d-md-none {\n display: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-md-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 992px) {\n .d-lg-none {\n display: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 1200px) {\n .d-xl-none {\n display: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media print {\n .d-print-none {\n display: none !important;\n }\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-print-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n.flex-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n}\n\n.flex-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n}\n\n.flex-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n}\n\n.flex-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n}\n\n.flex-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n}\n\n.justify-content-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n}\n\n.justify-content-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n}\n\n.align-items-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n}\n\n.align-items-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n}\n\n.align-items-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n}\n\n.align-items-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n}\n\n.align-content-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n}\n\n.align-content-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n}\n\n.align-content-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n}\n\n.align-content-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n}\n\n.align-content-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n}\n\n.align-self-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n}\n\n.align-self-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n}\n\n.align-self-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n}\n\n.align-self-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n}\n\n.align-self-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n}\n\n@media (min-width: 576px) {\n .flex-sm-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-sm-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-sm-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-sm-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-sm-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-sm-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-sm-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-sm-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-sm-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-sm-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-sm-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-sm-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-sm-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-sm-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 768px) {\n .flex-md-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-md-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-md-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-md-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-md-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-md-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-md-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-md-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-md-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-md-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-md-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-md-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-md-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-md-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-md-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-md-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-md-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-md-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-md-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-md-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-md-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 992px) {\n .flex-lg-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-lg-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-lg-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-lg-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-lg-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-lg-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-lg-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-lg-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-lg-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-lg-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-lg-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-lg-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-lg-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-lg-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 1200px) {\n .flex-xl-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-xl-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-xl-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-xl-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-xl-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-xl-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-xl-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-xl-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-xl-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-xl-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-xl-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-xl-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-xl-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-xl-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n/*# sourceMappingURL=bootstrap-grid.css.map */","// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n@if $enable-grid-classes {\n .container {\n @include make-container();\n @include make-container-max-widths();\n }\n}\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but with 100% width for\n// fluid, full width layouts.\n\n@if $enable-grid-classes {\n .container-fluid {\n @include make-container();\n }\n}\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n@if $enable-grid-classes {\n .row {\n @include make-row();\n }\n\n // Remove the negative margin from default .row, then the horizontal padding\n // from all immediate children columns (to prevent runaway style inheritance).\n .no-gutters {\n margin-right: 0;\n margin-left: 0;\n\n > .col,\n > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n }\n }\n}\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n@if $enable-grid-classes {\n @include make-grid-columns();\n}\n","/// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n@mixin make-container() {\n width: 100%;\n padding-right: ($grid-gutter-width / 2);\n padding-left: ($grid-gutter-width / 2);\n margin-right: auto;\n margin-left: auto;\n}\n\n\n// For each breakpoint, define the maximum width of the container in a media query\n@mixin make-container-max-widths($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {\n @each $breakpoint, $container-max-width in $max-widths {\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n max-width: $container-max-width;\n }\n }\n}\n\n@mixin make-row() {\n display: flex;\n flex-wrap: wrap;\n margin-right: ($grid-gutter-width / -2);\n margin-left: ($grid-gutter-width / -2);\n}\n\n@mixin make-col-ready() {\n position: relative;\n // Prevent columns from becoming too narrow when at smaller grid tiers by\n // always setting `width: 100%;`. This works because we use `flex` values\n // later on to override this initial width.\n width: 100%;\n min-height: 1px; // Prevent collapsing\n padding-right: ($grid-gutter-width / 2);\n padding-left: ($grid-gutter-width / 2);\n}\n\n@mixin make-col($size, $columns: $grid-columns) {\n flex: 0 0 percentage($size / $columns);\n // Add a `max-width` to ensure content within each column does not blow out\n // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari\n // do not appear to require this.\n max-width: percentage($size / $columns);\n}\n\n@mixin make-col-offset($size, $columns: $grid-columns) {\n $num: $size / $columns;\n margin-left: if($num == 0, 0, percentage($num));\n}\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width. Null for the largest (last) breakpoint.\n// The maximum value is calculated as the minimum of the next one less 0.02px\n// to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $next: breakpoint-next($name, $breakpoints);\n @return if($next, breakpoint-min($next, $breakpoints) - .02px, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $max: breakpoint-max($name, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($name, $breakpoints) {\n @content;\n }\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `$grid-columns`.\n\n@mixin make-grid-columns($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {\n // Common properties for all breakpoints\n %grid-column {\n position: relative;\n width: 100%;\n min-height: 1px; // Prevent columns from collapsing when empty\n padding-right: ($gutter / 2);\n padding-left: ($gutter / 2);\n }\n\n @each $breakpoint in map-keys($breakpoints) {\n $infix: breakpoint-infix($breakpoint, $breakpoints);\n\n // Allow columns to stretch full width below their breakpoints\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @extend %grid-column;\n }\n }\n .col#{$infix},\n .col#{$infix}-auto {\n @extend %grid-column;\n }\n\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n // Provide basic `.col-{bp}` classes for equal-width flexbox columns\n .col#{$infix} {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col#{$infix}-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none; // Reset earlier grid tiers\n }\n\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @include make-col($i, $columns);\n }\n }\n\n .order#{$infix}-first { order: -1; }\n\n .order#{$infix}-last { order: $columns + 1; }\n\n @for $i from 0 through $columns {\n .order#{$infix}-#{$i} { order: $i; }\n }\n\n // `$columns - 1` because offsetting by the width of an entire row isn't possible\n @for $i from 0 through ($columns - 1) {\n @if not ($infix == \"\" and $i == 0) { // Avoid emitting useless .offset-0\n .offset#{$infix}-#{$i} {\n @include make-col-offset($i, $columns);\n }\n }\n }\n }\n }\n}\n","// stylelint-disable declaration-no-important\n\n//\n// Utilities for common `display` values\n//\n\n@each $breakpoint in map-keys($grid-breakpoints) {\n @include media-breakpoint-up($breakpoint) {\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\n\n .d#{$infix}-none { display: none !important; }\n .d#{$infix}-inline { display: inline !important; }\n .d#{$infix}-inline-block { display: inline-block !important; }\n .d#{$infix}-block { display: block !important; }\n .d#{$infix}-table { display: table !important; }\n .d#{$infix}-table-row { display: table-row !important; }\n .d#{$infix}-table-cell { display: table-cell !important; }\n .d#{$infix}-flex { display: flex !important; }\n .d#{$infix}-inline-flex { display: inline-flex !important; }\n }\n}\n\n\n//\n// Utilities for toggling `display` in print\n//\n\n@media print {\n .d-print-none { display: none !important; }\n .d-print-inline { display: inline !important; }\n .d-print-inline-block { display: inline-block !important; }\n .d-print-block { display: block !important; }\n .d-print-table { display: table !important; }\n .d-print-table-row { display: table-row !important; }\n .d-print-table-cell { display: table-cell !important; }\n .d-print-flex { display: flex !important; }\n .d-print-inline-flex { display: inline-flex !important; }\n}\n","// stylelint-disable declaration-no-important\n\n// Flex variation\n//\n// Custom styles for additional flex alignment options.\n\n@each $breakpoint in map-keys($grid-breakpoints) {\n @include media-breakpoint-up($breakpoint) {\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\n\n .flex#{$infix}-row { flex-direction: row !important; }\n .flex#{$infix}-column { flex-direction: column !important; }\n .flex#{$infix}-row-reverse { flex-direction: row-reverse !important; }\n .flex#{$infix}-column-reverse { flex-direction: column-reverse !important; }\n\n .flex#{$infix}-wrap { flex-wrap: wrap !important; }\n .flex#{$infix}-nowrap { flex-wrap: nowrap !important; }\n .flex#{$infix}-wrap-reverse { flex-wrap: wrap-reverse !important; }\n .flex#{$infix}-fill { flex: 1 1 auto !important; }\n .flex#{$infix}-grow-0 { flex-grow: 0 !important; }\n .flex#{$infix}-grow-1 { flex-grow: 1 !important; }\n .flex#{$infix}-shrink-0 { flex-shrink: 0 !important; }\n .flex#{$infix}-shrink-1 { flex-shrink: 1 !important; }\n\n .justify-content#{$infix}-start { justify-content: flex-start !important; }\n .justify-content#{$infix}-end { justify-content: flex-end !important; }\n .justify-content#{$infix}-center { justify-content: center !important; }\n .justify-content#{$infix}-between { justify-content: space-between !important; }\n .justify-content#{$infix}-around { justify-content: space-around !important; }\n\n .align-items#{$infix}-start { align-items: flex-start !important; }\n .align-items#{$infix}-end { align-items: flex-end !important; }\n .align-items#{$infix}-center { align-items: center !important; }\n .align-items#{$infix}-baseline { align-items: baseline !important; }\n .align-items#{$infix}-stretch { align-items: stretch !important; }\n\n .align-content#{$infix}-start { align-content: flex-start !important; }\n .align-content#{$infix}-end { align-content: flex-end !important; }\n .align-content#{$infix}-center { align-content: center !important; }\n .align-content#{$infix}-between { align-content: space-between !important; }\n .align-content#{$infix}-around { align-content: space-around !important; }\n .align-content#{$infix}-stretch { align-content: stretch !important; }\n\n .align-self#{$infix}-auto { align-self: auto !important; }\n .align-self#{$infix}-start { align-self: flex-start !important; }\n .align-self#{$infix}-end { align-self: flex-end !important; }\n .align-self#{$infix}-center { align-self: center !important; }\n .align-self#{$infix}-baseline { align-self: baseline !important; }\n .align-self#{$infix}-stretch { align-self: stretch !important; }\n }\n}\n"]} \ No newline at end of file diff --git a/css/bootstrap-reboot.css b/css/bootstrap-reboot.css new file mode 100755 index 0000000..b3d7f4c --- /dev/null +++ b/css/bootstrap-reboot.css @@ -0,0 +1,331 @@ +/*! + * Bootstrap Reboot v4.1.3 (https://getbootstrap.com/) + * Copyright 2011-2018 The Bootstrap Authors + * Copyright 2011-2018 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md) + */ +*, +*::before, +*::after { + box-sizing: border-box; +} + +html { + font-family: sans-serif; + line-height: 1.15; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; + -ms-overflow-style: scrollbar; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +@-ms-viewport { + width: device-width; +} + +article, aside, figcaption, figure, footer, header, hgroup, main, nav, section { + display: block; +} + +body { + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: left; + background-color: #fff; +} + +[tabindex="-1"]:focus { + outline: 0 !important; +} + +hr { + box-sizing: content-box; + height: 0; + overflow: visible; +} + +h1, h2, h3, h4, h5, h6 { + margin-top: 0; + margin-bottom: 0.5rem; +} + +p { + margin-top: 0; + margin-bottom: 1rem; +} + +abbr[title], +abbr[data-original-title] { + text-decoration: underline; + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; + cursor: help; + border-bottom: 0; +} + +address { + margin-bottom: 1rem; + font-style: normal; + line-height: inherit; +} + +ol, +ul, +dl { + margin-top: 0; + margin-bottom: 1rem; +} + +ol ol, +ul ul, +ol ul, +ul ol { + margin-bottom: 0; +} + +dt { + font-weight: 700; +} + +dd { + margin-bottom: .5rem; + margin-left: 0; +} + +blockquote { + margin: 0 0 1rem; +} + +dfn { + font-style: italic; +} + +b, +strong { + font-weight: bolder; +} + +small { + font-size: 80%; +} + +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} + +sub { + bottom: -.25em; +} + +sup { + top: -.5em; +} + +a { + color: #007bff; + text-decoration: none; + background-color: transparent; + -webkit-text-decoration-skip: objects; +} + +a:hover { + color: #0056b3; + text-decoration: underline; +} + +a:not([href]):not([tabindex]) { + color: inherit; + text-decoration: none; +} + +a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus { + color: inherit; + text-decoration: none; +} + +a:not([href]):not([tabindex]):focus { + outline: 0; +} + +pre, +code, +kbd, +samp { + font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + font-size: 1em; +} + +pre { + margin-top: 0; + margin-bottom: 1rem; + overflow: auto; + -ms-overflow-style: scrollbar; +} + +figure { + margin: 0 0 1rem; +} + +img { + vertical-align: middle; + border-style: none; +} + +svg { + overflow: hidden; + vertical-align: middle; +} + +table { + border-collapse: collapse; +} + +caption { + padding-top: 0.75rem; + padding-bottom: 0.75rem; + color: #6c757d; + text-align: left; + caption-side: bottom; +} + +th { + text-align: inherit; +} + +label { + display: inline-block; + margin-bottom: 0.5rem; +} + +button { + border-radius: 0; +} + +button:focus { + outline: 1px dotted; + outline: 5px auto -webkit-focus-ring-color; +} + +input, +button, +select, +optgroup, +textarea { + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; +} + +button, +input { + overflow: visible; +} + +button, +select { + text-transform: none; +} + +button, +html [type="button"], +[type="reset"], +[type="submit"] { + -webkit-appearance: button; +} + +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + padding: 0; + border-style: none; +} + +input[type="radio"], +input[type="checkbox"] { + box-sizing: border-box; + padding: 0; +} + +input[type="date"], +input[type="time"], +input[type="datetime-local"], +input[type="month"] { + -webkit-appearance: listbox; +} + +textarea { + overflow: auto; + resize: vertical; +} + +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} + +legend { + display: block; + width: 100%; + max-width: 100%; + padding: 0; + margin-bottom: .5rem; + font-size: 1.5rem; + line-height: inherit; + color: inherit; + white-space: normal; +} + +progress { + vertical-align: baseline; +} + +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +[type="search"] { + outline-offset: -2px; + -webkit-appearance: none; +} + +[type="search"]::-webkit-search-cancel-button, +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-file-upload-button { + font: inherit; + -webkit-appearance: button; +} + +output { + display: inline-block; +} + +summary { + display: list-item; + cursor: pointer; +} + +template { + display: none; +} + +[hidden] { + display: none !important; +} +/*# sourceMappingURL=bootstrap-reboot.css.map */ \ No newline at end of file diff --git a/css/bootstrap-reboot.css.map b/css/bootstrap-reboot.css.map new file mode 100755 index 0000000..3a17ed9 --- /dev/null +++ b/css/bootstrap-reboot.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../../scss/bootstrap-reboot.scss","../../scss/_reboot.scss","../../scss/_variables.scss","bootstrap-reboot.css","../../scss/mixins/_hover.scss"],"names":[],"mappings":"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","file":"bootstrap-reboot.css","sourcesContent":["/*!\n * Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)\n */\n\n@import \"functions\";\n@import \"variables\";\n@import \"mixins\";\n@import \"reboot\";\n","// stylelint-disable at-rule-no-vendor-prefix, declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix\n\n// Reboot\n//\n// Normalization of HTML elements, manually forked from Normalize.css to remove\n// styles targeting irrelevant browsers while applying new styles.\n//\n// Normalize is licensed MIT. https://github.com/necolas/normalize.css\n\n\n// Document\n//\n// 1. Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.\n// 2. Change the default font family in all browsers.\n// 3. Correct the line height in all browsers.\n// 4. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS.\n// 5. Setting @viewport causes scrollbars to overlap content in IE11 and Edge, so\n// we force a non-overlapping, non-auto-hiding scrollbar to counteract.\n// 6. Change the default tap highlight to be completely transparent in iOS.\n\n*,\n*::before,\n*::after {\n box-sizing: border-box; // 1\n}\n\nhtml {\n font-family: sans-serif; // 2\n line-height: 1.15; // 3\n -webkit-text-size-adjust: 100%; // 4\n -ms-text-size-adjust: 100%; // 4\n -ms-overflow-style: scrollbar; // 5\n -webkit-tap-highlight-color: rgba($black, 0); // 6\n}\n\n// IE10+ doesn't honor `` in some cases.\n@at-root {\n @-ms-viewport {\n width: device-width;\n }\n}\n\n// stylelint-disable selector-list-comma-newline-after\n// Shim for \"new\" HTML5 structural elements to display correctly (IE10, older browsers)\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n// stylelint-enable selector-list-comma-newline-after\n\n// Body\n//\n// 1. Remove the margin in all browsers.\n// 2. As a best practice, apply a default `background-color`.\n// 3. Set an explicit initial text-align value so that we can later use the\n// the `inherit` value on things like `` elements.\n\nbody {\n margin: 0; // 1\n font-family: $font-family-base;\n font-size: $font-size-base;\n font-weight: $font-weight-base;\n line-height: $line-height-base;\n color: $body-color;\n text-align: left; // 3\n background-color: $body-bg; // 2\n}\n\n// Suppress the focus outline on elements that cannot be accessed via keyboard.\n// This prevents an unwanted focus outline from appearing around elements that\n// might still respond to pointer events.\n//\n// Credit: https://github.com/suitcss/base\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\n\n// Content grouping\n//\n// 1. Add the correct box sizing in Firefox.\n// 2. Show the overflow in Edge and IE.\n\nhr {\n box-sizing: content-box; // 1\n height: 0; // 1\n overflow: visible; // 2\n}\n\n\n//\n// Typography\n//\n\n// Remove top margins from headings\n//\n// By default, `

`-`
` all receive top and bottom margins. We nuke the top\n// margin for easier control within type scales as it avoids margin collapsing.\n// stylelint-disable selector-list-comma-newline-after\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: $headings-margin-bottom;\n}\n// stylelint-enable selector-list-comma-newline-after\n\n// Reset margins on paragraphs\n//\n// Similarly, the top margin on `

`s get reset. However, we also reset the\n// bottom margin to use `rem` units instead of `em`.\np {\n margin-top: 0;\n margin-bottom: $paragraph-margin-bottom;\n}\n\n// Abbreviations\n//\n// 1. Remove the bottom border in Firefox 39-.\n// 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n// 3. Add explicit cursor to indicate changed behavior.\n// 4. Duplicate behavior to the data-* attribute for our tooltip plugin\n\nabbr[title],\nabbr[data-original-title] { // 4\n text-decoration: underline; // 2\n text-decoration: underline dotted; // 2\n cursor: help; // 3\n border-bottom: 0; // 1\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: $dt-font-weight;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0; // Undo browser default\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\ndfn {\n font-style: italic; // Add the correct font style in Android 4.3-\n}\n\n// stylelint-disable font-weight-notation\nb,\nstrong {\n font-weight: bolder; // Add the correct font weight in Chrome, Edge, and Safari\n}\n// stylelint-enable font-weight-notation\n\nsmall {\n font-size: 80%; // Add the correct font size in all browsers\n}\n\n//\n// Prevent `sub` and `sup` elements from affecting the line height in\n// all browsers.\n//\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub { bottom: -.25em; }\nsup { top: -.5em; }\n\n\n//\n// Links\n//\n\na {\n color: $link-color;\n text-decoration: $link-decoration;\n background-color: transparent; // Remove the gray background on active links in IE 10.\n -webkit-text-decoration-skip: objects; // Remove gaps in links underline in iOS 8+ and Safari 8+.\n\n @include hover {\n color: $link-hover-color;\n text-decoration: $link-hover-decoration;\n }\n}\n\n// And undo these styles for placeholder links/named anchors (without href)\n// which have not been made explicitly keyboard-focusable (without tabindex).\n// It would be more straightforward to just use a[href] in previous block, but that\n// causes specificity issues in many other styles that are too complex to fix.\n// See https://github.com/twbs/bootstrap/issues/19402\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n\n @include hover-focus {\n color: inherit;\n text-decoration: none;\n }\n\n &:focus {\n outline: 0;\n }\n}\n\n\n//\n// Code\n//\n\npre,\ncode,\nkbd,\nsamp {\n font-family: $font-family-monospace;\n font-size: 1em; // Correct the odd `em` font sizing in all browsers.\n}\n\npre {\n // Remove browser default top margin\n margin-top: 0;\n // Reset browser default of `1em` to use `rem`s\n margin-bottom: 1rem;\n // Don't allow content to break outside\n overflow: auto;\n // We have @viewport set which causes scrollbars to overlap content in IE11 and Edge, so\n // we force a non-overlapping, non-auto-hiding scrollbar to counteract.\n -ms-overflow-style: scrollbar;\n}\n\n\n//\n// Figures\n//\n\nfigure {\n // Apply a consistent margin strategy (matches our type styles).\n margin: 0 0 1rem;\n}\n\n\n//\n// Images and content\n//\n\nimg {\n vertical-align: middle;\n border-style: none; // Remove the border on images inside links in IE 10-.\n}\n\nsvg {\n // Workaround for the SVG overflow bug in IE10/11 is still required.\n // See https://github.com/twbs/bootstrap/issues/26878\n overflow: hidden;\n vertical-align: middle;\n}\n\n\n//\n// Tables\n//\n\ntable {\n border-collapse: collapse; // Prevent double borders\n}\n\ncaption {\n padding-top: $table-cell-padding;\n padding-bottom: $table-cell-padding;\n color: $table-caption-color;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n // Matches default `` alignment by inheriting from the ``, or the\n // closest parent with a set `text-align`.\n text-align: inherit;\n}\n\n\n//\n// Forms\n//\n\nlabel {\n // Allow labels to use `margin` for spacing.\n display: inline-block;\n margin-bottom: $label-margin-bottom;\n}\n\n// Remove the default `border-radius` that macOS Chrome adds.\n//\n// Details at https://github.com/twbs/bootstrap/issues/24093\nbutton {\n border-radius: 0;\n}\n\n// Work around a Firefox/IE bug where the transparent `button` background\n// results in a loss of the default `button` focus styles.\n//\n// Credit: https://github.com/suitcss/base/\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0; // Remove the margin in Firefox and Safari\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible; // Show the overflow in Edge\n}\n\nbutton,\nselect {\n text-transform: none; // Remove the inheritance of text transform in Firefox\n}\n\n// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`\n// controls in Android 4.\n// 2. Correct the inability to style clickable types in iOS and Safari.\nbutton,\nhtml [type=\"button\"], // 1\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button; // 2\n}\n\n// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box; // 1. Add the correct box sizing in IE 10-\n padding: 0; // 2. Remove the padding in IE 10-\n}\n\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n // Remove the default appearance of temporal inputs to avoid a Mobile Safari\n // bug where setting a custom line-height prevents text from being vertically\n // centered within the input.\n // See https://bugs.webkit.org/show_bug.cgi?id=139848\n // and https://github.com/twbs/bootstrap/issues/11266\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto; // Remove the default vertical scrollbar in IE.\n // Textareas should really only resize vertically so they don't break their (horizontal) containers.\n resize: vertical;\n}\n\nfieldset {\n // Browsers set a default `min-width: min-content;` on fieldsets,\n // unlike e.g. `

`s, which have `min-width: 0;` by default.\n // So we reset that to ensure fieldsets behave more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359\n // and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements\n min-width: 0;\n // Reset the default outline behavior of fieldsets so they don't affect page layout.\n padding: 0;\n margin: 0;\n border: 0;\n}\n\n// 1. Correct the text wrapping in Edge and IE.\n// 2. Correct the color inheritance from `fieldset` elements in IE.\nlegend {\n display: block;\n width: 100%;\n max-width: 100%; // 1\n padding: 0;\n margin-bottom: .5rem;\n font-size: 1.5rem;\n line-height: inherit;\n color: inherit; // 2\n white-space: normal; // 1\n}\n\nprogress {\n vertical-align: baseline; // Add the correct vertical alignment in Chrome, Firefox, and Opera.\n}\n\n// Correct the cursor style of increment and decrement buttons in Chrome.\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n // This overrides the extra rounded corners on search inputs in iOS so that our\n // `.form-control` class can properly style them. Note that this cannot simply\n // be added to `.form-control` as it's not specific enough. For details, see\n // https://github.com/twbs/bootstrap/issues/11586.\n outline-offset: -2px; // 2. Correct the outline style in Safari.\n -webkit-appearance: none;\n}\n\n//\n// Remove the inner padding and cancel buttons in Chrome and Safari on macOS.\n//\n\n[type=\"search\"]::-webkit-search-cancel-button,\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// 1. Correct the inability to style clickable types in iOS and Safari.\n// 2. Change font properties to `inherit` in Safari.\n//\n\n::-webkit-file-upload-button {\n font: inherit; // 2\n -webkit-appearance: button; // 1\n}\n\n//\n// Correct element displays\n//\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item; // Add the correct display in all browsers\n cursor: pointer;\n}\n\ntemplate {\n display: none; // Add the correct display in IE\n}\n\n// Always hide an element with the `hidden` HTML attribute (from PureCSS).\n// Needed for proper display in IE 10-.\n[hidden] {\n display: none !important;\n}\n","// Variables\n//\n// Variables should follow the `$component-state-property-size` formula for\n// consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.\n\n\n//\n// Color system\n//\n\n$white: #fff !default;\n$gray-100: #f8f9fa !default;\n$gray-200: #e9ecef !default;\n$gray-300: #dee2e6 !default;\n$gray-400: #ced4da !default;\n$gray-500: #adb5bd !default;\n$gray-600: #6c757d !default;\n$gray-700: #495057 !default;\n$gray-800: #343a40 !default;\n$gray-900: #212529 !default;\n$black: #000 !default;\n\n$grays: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$grays: map-merge(\n (\n \"100\": $gray-100,\n \"200\": $gray-200,\n \"300\": $gray-300,\n \"400\": $gray-400,\n \"500\": $gray-500,\n \"600\": $gray-600,\n \"700\": $gray-700,\n \"800\": $gray-800,\n \"900\": $gray-900\n ),\n $grays\n);\n\n\n$blue: #007bff !default;\n$indigo: #6610f2 !default;\n$purple: #6f42c1 !default;\n$pink: #e83e8c !default;\n$red: #dc3545 !default;\n$orange: #fd7e14 !default;\n$yellow: #ffc107 !default;\n$green: #28a745 !default;\n$teal: #20c997 !default;\n$cyan: #17a2b8 !default;\n\n$colors: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$colors: map-merge(\n (\n \"blue\": $blue,\n \"indigo\": $indigo,\n \"purple\": $purple,\n \"pink\": $pink,\n \"red\": $red,\n \"orange\": $orange,\n \"yellow\": $yellow,\n \"green\": $green,\n \"teal\": $teal,\n \"cyan\": $cyan,\n \"white\": $white,\n \"gray\": $gray-600,\n \"gray-dark\": $gray-800\n ),\n $colors\n);\n\n$primary: $blue !default;\n$secondary: $gray-600 !default;\n$success: $green !default;\n$info: $cyan !default;\n$warning: $yellow !default;\n$danger: $red !default;\n$light: $gray-100 !default;\n$dark: $gray-800 !default;\n\n$theme-colors: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$theme-colors: map-merge(\n (\n \"primary\": $primary,\n \"secondary\": $secondary,\n \"success\": $success,\n \"info\": $info,\n \"warning\": $warning,\n \"danger\": $danger,\n \"light\": $light,\n \"dark\": $dark\n ),\n $theme-colors\n);\n\n// Set a specific jump point for requesting color jumps\n$theme-color-interval: 8% !default;\n\n// The yiq lightness value that determines when the lightness of color changes from \"dark\" to \"light\". Acceptable values are between 0 and 255.\n$yiq-contrasted-threshold: 150 !default;\n\n// Customize the light and dark text colors for use in our YIQ color contrast function.\n$yiq-text-dark: $gray-900 !default;\n$yiq-text-light: $white !default;\n\n// Options\n//\n// Quickly modify global styling by enabling or disabling optional features.\n\n$enable-caret: true !default;\n$enable-rounded: true !default;\n$enable-shadows: false !default;\n$enable-gradients: false !default;\n$enable-transitions: true !default;\n$enable-hover-media-query: false !default; // Deprecated, no longer affects any compiled CSS\n$enable-grid-classes: true !default;\n$enable-print-styles: true !default;\n\n\n// Spacing\n//\n// Control the default styling of most Bootstrap elements by modifying these\n// variables. Mostly focused on spacing.\n// You can add more entries to the $spacers map, should you need more variation.\n\n$spacer: 1rem !default;\n$spacers: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$spacers: map-merge(\n (\n 0: 0,\n 1: ($spacer * .25),\n 2: ($spacer * .5),\n 3: $spacer,\n 4: ($spacer * 1.5),\n 5: ($spacer * 3)\n ),\n $spacers\n);\n\n// This variable affects the `.h-*` and `.w-*` classes.\n$sizes: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$sizes: map-merge(\n (\n 25: 25%,\n 50: 50%,\n 75: 75%,\n 100: 100%,\n auto: auto\n ),\n $sizes\n);\n\n// Body\n//\n// Settings for the `` element.\n\n$body-bg: $white !default;\n$body-color: $gray-900 !default;\n\n// Links\n//\n// Style anchor elements.\n\n$link-color: theme-color(\"primary\") !default;\n$link-decoration: none !default;\n$link-hover-color: darken($link-color, 15%) !default;\n$link-hover-decoration: underline !default;\n\n// Paragraphs\n//\n// Style p element.\n\n$paragraph-margin-bottom: 1rem !default;\n\n\n// Grid breakpoints\n//\n// Define the minimum dimensions at which your layout will change,\n// adapting to different screen sizes, for use in media queries.\n\n$grid-breakpoints: (\n xs: 0,\n sm: 576px,\n md: 768px,\n lg: 992px,\n xl: 1200px\n) !default;\n\n@include _assert-ascending($grid-breakpoints, \"$grid-breakpoints\");\n@include _assert-starts-at-zero($grid-breakpoints);\n\n\n// Grid containers\n//\n// Define the maximum width of `.container` for different screen sizes.\n\n$container-max-widths: (\n sm: 540px,\n md: 720px,\n lg: 960px,\n xl: 1140px\n) !default;\n\n@include _assert-ascending($container-max-widths, \"$container-max-widths\");\n\n\n// Grid columns\n//\n// Set the number of columns and specify the width of the gutters.\n\n$grid-columns: 12 !default;\n$grid-gutter-width: 30px !default;\n\n// Components\n//\n// Define common padding and border radius sizes and more.\n\n$line-height-lg: 1.5 !default;\n$line-height-sm: 1.5 !default;\n\n$border-width: 1px !default;\n$border-color: $gray-300 !default;\n\n$border-radius: .25rem !default;\n$border-radius-lg: .3rem !default;\n$border-radius-sm: .2rem !default;\n\n$box-shadow-sm: 0 .125rem .25rem rgba($black, .075) !default;\n$box-shadow: 0 .5rem 1rem rgba($black, .15) !default;\n$box-shadow-lg: 0 1rem 3rem rgba($black, .175) !default;\n\n$component-active-color: $white !default;\n$component-active-bg: theme-color(\"primary\") !default;\n\n$caret-width: .3em !default;\n\n$transition-base: all .2s ease-in-out !default;\n$transition-fade: opacity .15s linear !default;\n$transition-collapse: height .35s ease !default;\n\n\n// Fonts\n//\n// Font, line-height, and color for body text, headings, and more.\n\n// stylelint-disable value-keyword-case\n$font-family-sans-serif: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\" !default;\n$font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace !default;\n$font-family-base: $font-family-sans-serif !default;\n// stylelint-enable value-keyword-case\n\n$font-size-base: 1rem !default; // Assumes the browser default, typically `16px`\n$font-size-lg: ($font-size-base * 1.25) !default;\n$font-size-sm: ($font-size-base * .875) !default;\n\n$font-weight-light: 300 !default;\n$font-weight-normal: 400 !default;\n$font-weight-bold: 700 !default;\n\n$font-weight-base: $font-weight-normal !default;\n$line-height-base: 1.5 !default;\n\n$h1-font-size: $font-size-base * 2.5 !default;\n$h2-font-size: $font-size-base * 2 !default;\n$h3-font-size: $font-size-base * 1.75 !default;\n$h4-font-size: $font-size-base * 1.5 !default;\n$h5-font-size: $font-size-base * 1.25 !default;\n$h6-font-size: $font-size-base !default;\n\n$headings-margin-bottom: ($spacer / 2) !default;\n$headings-font-family: inherit !default;\n$headings-font-weight: 500 !default;\n$headings-line-height: 1.2 !default;\n$headings-color: inherit !default;\n\n$display1-size: 6rem !default;\n$display2-size: 5.5rem !default;\n$display3-size: 4.5rem !default;\n$display4-size: 3.5rem !default;\n\n$display1-weight: 300 !default;\n$display2-weight: 300 !default;\n$display3-weight: 300 !default;\n$display4-weight: 300 !default;\n$display-line-height: $headings-line-height !default;\n\n$lead-font-size: ($font-size-base * 1.25) !default;\n$lead-font-weight: 300 !default;\n\n$small-font-size: 80% !default;\n\n$text-muted: $gray-600 !default;\n\n$blockquote-small-color: $gray-600 !default;\n$blockquote-font-size: ($font-size-base * 1.25) !default;\n\n$hr-border-color: rgba($black, .1) !default;\n$hr-border-width: $border-width !default;\n\n$mark-padding: .2em !default;\n\n$dt-font-weight: $font-weight-bold !default;\n\n$kbd-box-shadow: inset 0 -.1rem 0 rgba($black, .25) !default;\n$nested-kbd-font-weight: $font-weight-bold !default;\n\n$list-inline-padding: .5rem !default;\n\n$mark-bg: #fcf8e3 !default;\n\n$hr-margin-y: $spacer !default;\n\n\n// Tables\n//\n// Customizes the `.table` component with basic values, each used across all table variations.\n\n$table-cell-padding: .75rem !default;\n$table-cell-padding-sm: .3rem !default;\n\n$table-bg: transparent !default;\n$table-accent-bg: rgba($black, .05) !default;\n$table-hover-bg: rgba($black, .075) !default;\n$table-active-bg: $table-hover-bg !default;\n\n$table-border-width: $border-width !default;\n$table-border-color: $gray-300 !default;\n\n$table-head-bg: $gray-200 !default;\n$table-head-color: $gray-700 !default;\n\n$table-dark-bg: $gray-900 !default;\n$table-dark-accent-bg: rgba($white, .05) !default;\n$table-dark-hover-bg: rgba($white, .075) !default;\n$table-dark-border-color: lighten($gray-900, 7.5%) !default;\n$table-dark-color: $body-bg !default;\n\n$table-striped-order: odd !default;\n\n$table-caption-color: $text-muted !default;\n\n// Buttons + Forms\n//\n// Shared variables that are reassigned to `$input-` and `$btn-` specific variables.\n\n$input-btn-padding-y: .375rem !default;\n$input-btn-padding-x: .75rem !default;\n$input-btn-line-height: $line-height-base !default;\n\n$input-btn-focus-width: .2rem !default;\n$input-btn-focus-color: rgba($component-active-bg, .25) !default;\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color !default;\n\n$input-btn-padding-y-sm: .25rem !default;\n$input-btn-padding-x-sm: .5rem !default;\n$input-btn-line-height-sm: $line-height-sm !default;\n\n$input-btn-padding-y-lg: .5rem !default;\n$input-btn-padding-x-lg: 1rem !default;\n$input-btn-line-height-lg: $line-height-lg !default;\n\n$input-btn-border-width: $border-width !default;\n\n\n// Buttons\n//\n// For each of Bootstrap's buttons, define text, background, and border color.\n\n$btn-padding-y: $input-btn-padding-y !default;\n$btn-padding-x: $input-btn-padding-x !default;\n$btn-line-height: $input-btn-line-height !default;\n\n$btn-padding-y-sm: $input-btn-padding-y-sm !default;\n$btn-padding-x-sm: $input-btn-padding-x-sm !default;\n$btn-line-height-sm: $input-btn-line-height-sm !default;\n\n$btn-padding-y-lg: $input-btn-padding-y-lg !default;\n$btn-padding-x-lg: $input-btn-padding-x-lg !default;\n$btn-line-height-lg: $input-btn-line-height-lg !default;\n\n$btn-border-width: $input-btn-border-width !default;\n\n$btn-font-weight: $font-weight-normal !default;\n$btn-box-shadow: inset 0 1px 0 rgba($white, .15), 0 1px 1px rgba($black, .075) !default;\n$btn-focus-width: $input-btn-focus-width !default;\n$btn-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$btn-disabled-opacity: .65 !default;\n$btn-active-box-shadow: inset 0 3px 5px rgba($black, .125) !default;\n\n$btn-link-disabled-color: $gray-600 !default;\n\n$btn-block-spacing-y: .5rem !default;\n\n// Allows for customizing button radius independently from global border radius\n$btn-border-radius: $border-radius !default;\n$btn-border-radius-lg: $border-radius-lg !default;\n$btn-border-radius-sm: $border-radius-sm !default;\n\n$btn-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n\n// Forms\n\n$label-margin-bottom: .5rem !default;\n\n$input-padding-y: $input-btn-padding-y !default;\n$input-padding-x: $input-btn-padding-x !default;\n$input-line-height: $input-btn-line-height !default;\n\n$input-padding-y-sm: $input-btn-padding-y-sm !default;\n$input-padding-x-sm: $input-btn-padding-x-sm !default;\n$input-line-height-sm: $input-btn-line-height-sm !default;\n\n$input-padding-y-lg: $input-btn-padding-y-lg !default;\n$input-padding-x-lg: $input-btn-padding-x-lg !default;\n$input-line-height-lg: $input-btn-line-height-lg !default;\n\n$input-bg: $white !default;\n$input-disabled-bg: $gray-200 !default;\n\n$input-color: $gray-700 !default;\n$input-border-color: $gray-400 !default;\n$input-border-width: $input-btn-border-width !default;\n$input-box-shadow: inset 0 1px 1px rgba($black, .075) !default;\n\n$input-border-radius: $border-radius !default;\n$input-border-radius-lg: $border-radius-lg !default;\n$input-border-radius-sm: $border-radius-sm !default;\n\n$input-focus-bg: $input-bg !default;\n$input-focus-border-color: lighten($component-active-bg, 25%) !default;\n$input-focus-color: $input-color !default;\n$input-focus-width: $input-btn-focus-width !default;\n$input-focus-box-shadow: $input-btn-focus-box-shadow !default;\n\n$input-placeholder-color: $gray-600 !default;\n$input-plaintext-color: $body-color !default;\n\n$input-height-border: $input-border-width * 2 !default;\n\n$input-height-inner: ($font-size-base * $input-btn-line-height) + ($input-btn-padding-y * 2) !default;\n$input-height: calc(#{$input-height-inner} + #{$input-height-border}) !default;\n\n$input-height-inner-sm: ($font-size-sm * $input-btn-line-height-sm) + ($input-btn-padding-y-sm * 2) !default;\n$input-height-sm: calc(#{$input-height-inner-sm} + #{$input-height-border}) !default;\n\n$input-height-inner-lg: ($font-size-lg * $input-btn-line-height-lg) + ($input-btn-padding-y-lg * 2) !default;\n$input-height-lg: calc(#{$input-height-inner-lg} + #{$input-height-border}) !default;\n\n$input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n$form-text-margin-top: .25rem !default;\n\n$form-check-input-gutter: 1.25rem !default;\n$form-check-input-margin-y: .3rem !default;\n$form-check-input-margin-x: .25rem !default;\n\n$form-check-inline-margin-x: .75rem !default;\n$form-check-inline-input-margin-x: .3125rem !default;\n\n$form-group-margin-bottom: 1rem !default;\n\n$input-group-addon-color: $input-color !default;\n$input-group-addon-bg: $gray-200 !default;\n$input-group-addon-border-color: $input-border-color !default;\n\n$custom-forms-transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n$custom-control-gutter: 1.5rem !default;\n$custom-control-spacer-x: 1rem !default;\n\n$custom-control-indicator-size: 1rem !default;\n$custom-control-indicator-bg: $gray-300 !default;\n$custom-control-indicator-bg-size: 50% 50% !default;\n$custom-control-indicator-box-shadow: inset 0 .25rem .25rem rgba($black, .1) !default;\n\n$custom-control-indicator-disabled-bg: $gray-200 !default;\n$custom-control-label-disabled-color: $gray-600 !default;\n\n$custom-control-indicator-checked-color: $component-active-color !default;\n$custom-control-indicator-checked-bg: $component-active-bg !default;\n$custom-control-indicator-checked-disabled-bg: rgba(theme-color(\"primary\"), .5) !default;\n$custom-control-indicator-checked-box-shadow: none !default;\n\n$custom-control-indicator-focus-box-shadow: 0 0 0 1px $body-bg, $input-btn-focus-box-shadow !default;\n\n$custom-control-indicator-active-color: $component-active-color !default;\n$custom-control-indicator-active-bg: lighten($component-active-bg, 35%) !default;\n$custom-control-indicator-active-box-shadow: none !default;\n\n$custom-checkbox-indicator-border-radius: $border-radius !default;\n$custom-checkbox-indicator-icon-checked: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$custom-checkbox-indicator-indeterminate-bg: $component-active-bg !default;\n$custom-checkbox-indicator-indeterminate-color: $custom-control-indicator-checked-color !default;\n$custom-checkbox-indicator-icon-indeterminate: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='#{$custom-checkbox-indicator-indeterminate-color}' d='M0 2h4'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$custom-checkbox-indicator-indeterminate-box-shadow: none !default;\n\n$custom-radio-indicator-border-radius: 50% !default;\n$custom-radio-indicator-icon-checked: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='#{$custom-control-indicator-checked-color}'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$custom-select-padding-y: .375rem !default;\n$custom-select-padding-x: .75rem !default;\n$custom-select-height: $input-height !default;\n$custom-select-indicator-padding: 1rem !default; // Extra padding to account for the presence of the background-image based indicator\n$custom-select-line-height: $input-btn-line-height !default;\n$custom-select-color: $input-color !default;\n$custom-select-disabled-color: $gray-600 !default;\n$custom-select-bg: $input-bg !default;\n$custom-select-disabled-bg: $gray-200 !default;\n$custom-select-bg-size: 8px 10px !default; // In pixels because image dimensions\n$custom-select-indicator-color: $gray-800 !default;\n$custom-select-indicator: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$custom-select-border-width: $input-btn-border-width !default;\n$custom-select-border-color: $input-border-color !default;\n$custom-select-border-radius: $border-radius !default;\n$custom-select-box-shadow: inset 0 1px 2px rgba($black, .075) !default;\n\n$custom-select-focus-border-color: $input-focus-border-color !default;\n$custom-select-focus-width: $input-btn-focus-width !default;\n$custom-select-focus-box-shadow: 0 0 0 $custom-select-focus-width rgba($custom-select-focus-border-color, .5) !default;\n\n$custom-select-font-size-sm: 75% !default;\n$custom-select-height-sm: $input-height-sm !default;\n\n$custom-select-font-size-lg: 125% !default;\n$custom-select-height-lg: $input-height-lg !default;\n\n$custom-range-track-width: 100% !default;\n$custom-range-track-height: .5rem !default;\n$custom-range-track-cursor: pointer !default;\n$custom-range-track-bg: $gray-300 !default;\n$custom-range-track-border-radius: 1rem !default;\n$custom-range-track-box-shadow: inset 0 .25rem .25rem rgba($black, .1) !default;\n\n$custom-range-thumb-width: 1rem !default;\n$custom-range-thumb-height: $custom-range-thumb-width !default;\n$custom-range-thumb-bg: $component-active-bg !default;\n$custom-range-thumb-border: 0 !default;\n$custom-range-thumb-border-radius: 1rem !default;\n$custom-range-thumb-box-shadow: 0 .1rem .25rem rgba($black, .1) !default;\n$custom-range-thumb-focus-box-shadow: 0 0 0 1px $body-bg, $input-btn-focus-box-shadow !default;\n$custom-range-thumb-focus-box-shadow-width: $input-btn-focus-width !default; // For focus box shadow issue in IE/Edge\n$custom-range-thumb-active-bg: lighten($component-active-bg, 35%) !default;\n\n$custom-file-height: $input-height !default;\n$custom-file-height-inner: $input-height-inner !default;\n$custom-file-focus-border-color: $input-focus-border-color !default;\n$custom-file-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$custom-file-disabled-bg: $input-disabled-bg !default;\n\n$custom-file-padding-y: $input-btn-padding-y !default;\n$custom-file-padding-x: $input-btn-padding-x !default;\n$custom-file-line-height: $input-btn-line-height !default;\n$custom-file-color: $input-color !default;\n$custom-file-bg: $input-bg !default;\n$custom-file-border-width: $input-btn-border-width !default;\n$custom-file-border-color: $input-border-color !default;\n$custom-file-border-radius: $input-border-radius !default;\n$custom-file-box-shadow: $input-box-shadow !default;\n$custom-file-button-color: $custom-file-color !default;\n$custom-file-button-bg: $input-group-addon-bg !default;\n$custom-file-text: (\n en: \"Browse\"\n) !default;\n\n\n// Form validation\n$form-feedback-margin-top: $form-text-margin-top !default;\n$form-feedback-font-size: $small-font-size !default;\n$form-feedback-valid-color: theme-color(\"success\") !default;\n$form-feedback-invalid-color: theme-color(\"danger\") !default;\n\n\n// Dropdowns\n//\n// Dropdown menu container and contents.\n\n$dropdown-min-width: 10rem !default;\n$dropdown-padding-y: .5rem !default;\n$dropdown-spacer: .125rem !default;\n$dropdown-bg: $white !default;\n$dropdown-border-color: rgba($black, .15) !default;\n$dropdown-border-radius: $border-radius !default;\n$dropdown-border-width: $border-width !default;\n$dropdown-divider-bg: $gray-200 !default;\n$dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;\n\n$dropdown-link-color: $gray-900 !default;\n$dropdown-link-hover-color: darken($gray-900, 5%) !default;\n$dropdown-link-hover-bg: $gray-100 !default;\n\n$dropdown-link-active-color: $component-active-color !default;\n$dropdown-link-active-bg: $component-active-bg !default;\n\n$dropdown-link-disabled-color: $gray-600 !default;\n\n$dropdown-item-padding-y: .25rem !default;\n$dropdown-item-padding-x: 1.5rem !default;\n\n$dropdown-header-color: $gray-600 !default;\n\n\n// Z-index master list\n//\n// Warning: Avoid customizing these values. They're used for a bird's eye view\n// of components dependent on the z-axis and are designed to all work together.\n\n$zindex-dropdown: 1000 !default;\n$zindex-sticky: 1020 !default;\n$zindex-fixed: 1030 !default;\n$zindex-modal-backdrop: 1040 !default;\n$zindex-modal: 1050 !default;\n$zindex-popover: 1060 !default;\n$zindex-tooltip: 1070 !default;\n\n// Navs\n\n$nav-link-padding-y: .5rem !default;\n$nav-link-padding-x: 1rem !default;\n$nav-link-disabled-color: $gray-600 !default;\n\n$nav-tabs-border-color: $gray-300 !default;\n$nav-tabs-border-width: $border-width !default;\n$nav-tabs-border-radius: $border-radius !default;\n$nav-tabs-link-hover-border-color: $gray-200 $gray-200 $nav-tabs-border-color !default;\n$nav-tabs-link-active-color: $gray-700 !default;\n$nav-tabs-link-active-bg: $body-bg !default;\n$nav-tabs-link-active-border-color: $gray-300 $gray-300 $nav-tabs-link-active-bg !default;\n\n$nav-pills-border-radius: $border-radius !default;\n$nav-pills-link-active-color: $component-active-color !default;\n$nav-pills-link-active-bg: $component-active-bg !default;\n\n$nav-divider-color: $gray-200 !default;\n$nav-divider-margin-y: ($spacer / 2) !default;\n\n// Navbar\n\n$navbar-padding-y: ($spacer / 2) !default;\n$navbar-padding-x: $spacer !default;\n\n$navbar-nav-link-padding-x: .5rem !default;\n\n$navbar-brand-font-size: $font-size-lg !default;\n// Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link\n$nav-link-height: ($font-size-base * $line-height-base + $nav-link-padding-y * 2) !default;\n$navbar-brand-height: $navbar-brand-font-size * $line-height-base !default;\n$navbar-brand-padding-y: ($nav-link-height - $navbar-brand-height) / 2 !default;\n\n$navbar-toggler-padding-y: .25rem !default;\n$navbar-toggler-padding-x: .75rem !default;\n$navbar-toggler-font-size: $font-size-lg !default;\n$navbar-toggler-border-radius: $btn-border-radius !default;\n\n$navbar-dark-color: rgba($white, .5) !default;\n$navbar-dark-hover-color: rgba($white, .75) !default;\n$navbar-dark-active-color: $white !default;\n$navbar-dark-disabled-color: rgba($white, .25) !default;\n$navbar-dark-toggler-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-dark-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$navbar-dark-toggler-border-color: rgba($white, .1) !default;\n\n$navbar-light-color: rgba($black, .5) !default;\n$navbar-light-hover-color: rgba($black, .7) !default;\n$navbar-light-active-color: rgba($black, .9) !default;\n$navbar-light-disabled-color: rgba($black, .3) !default;\n$navbar-light-toggler-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-light-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$navbar-light-toggler-border-color: rgba($black, .1) !default;\n\n// Pagination\n\n$pagination-padding-y: .5rem !default;\n$pagination-padding-x: .75rem !default;\n$pagination-padding-y-sm: .25rem !default;\n$pagination-padding-x-sm: .5rem !default;\n$pagination-padding-y-lg: .75rem !default;\n$pagination-padding-x-lg: 1.5rem !default;\n$pagination-line-height: 1.25 !default;\n\n$pagination-color: $link-color !default;\n$pagination-bg: $white !default;\n$pagination-border-width: $border-width !default;\n$pagination-border-color: $gray-300 !default;\n\n$pagination-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$pagination-focus-outline: 0 !default;\n\n$pagination-hover-color: $link-hover-color !default;\n$pagination-hover-bg: $gray-200 !default;\n$pagination-hover-border-color: $gray-300 !default;\n\n$pagination-active-color: $component-active-color !default;\n$pagination-active-bg: $component-active-bg !default;\n$pagination-active-border-color: $pagination-active-bg !default;\n\n$pagination-disabled-color: $gray-600 !default;\n$pagination-disabled-bg: $white !default;\n$pagination-disabled-border-color: $gray-300 !default;\n\n\n// Jumbotron\n\n$jumbotron-padding: 2rem !default;\n$jumbotron-bg: $gray-200 !default;\n\n\n// Cards\n\n$card-spacer-y: .75rem !default;\n$card-spacer-x: 1.25rem !default;\n$card-border-width: $border-width !default;\n$card-border-radius: $border-radius !default;\n$card-border-color: rgba($black, .125) !default;\n$card-inner-border-radius: calc(#{$card-border-radius} - #{$card-border-width}) !default;\n$card-cap-bg: rgba($black, .03) !default;\n$card-bg: $white !default;\n\n$card-img-overlay-padding: 1.25rem !default;\n\n$card-group-margin: ($grid-gutter-width / 2) !default;\n$card-deck-margin: $card-group-margin !default;\n\n$card-columns-count: 3 !default;\n$card-columns-gap: 1.25rem !default;\n$card-columns-margin: $card-spacer-y !default;\n\n\n// Tooltips\n\n$tooltip-font-size: $font-size-sm !default;\n$tooltip-max-width: 200px !default;\n$tooltip-color: $white !default;\n$tooltip-bg: $black !default;\n$tooltip-border-radius: $border-radius !default;\n$tooltip-opacity: .9 !default;\n$tooltip-padding-y: .25rem !default;\n$tooltip-padding-x: .5rem !default;\n$tooltip-margin: 0 !default;\n\n$tooltip-arrow-width: .8rem !default;\n$tooltip-arrow-height: .4rem !default;\n$tooltip-arrow-color: $tooltip-bg !default;\n\n\n// Popovers\n\n$popover-font-size: $font-size-sm !default;\n$popover-bg: $white !default;\n$popover-max-width: 276px !default;\n$popover-border-width: $border-width !default;\n$popover-border-color: rgba($black, .2) !default;\n$popover-border-radius: $border-radius-lg !default;\n$popover-box-shadow: 0 .25rem .5rem rgba($black, .2) !default;\n\n$popover-header-bg: darken($popover-bg, 3%) !default;\n$popover-header-color: $headings-color !default;\n$popover-header-padding-y: .5rem !default;\n$popover-header-padding-x: .75rem !default;\n\n$popover-body-color: $body-color !default;\n$popover-body-padding-y: $popover-header-padding-y !default;\n$popover-body-padding-x: $popover-header-padding-x !default;\n\n$popover-arrow-width: 1rem !default;\n$popover-arrow-height: .5rem !default;\n$popover-arrow-color: $popover-bg !default;\n\n$popover-arrow-outer-color: fade-in($popover-border-color, .05) !default;\n\n\n// Badges\n\n$badge-font-size: 75% !default;\n$badge-font-weight: $font-weight-bold !default;\n$badge-padding-y: .25em !default;\n$badge-padding-x: .4em !default;\n$badge-border-radius: $border-radius !default;\n\n$badge-pill-padding-x: .6em !default;\n// Use a higher than normal value to ensure completely rounded edges when\n// customizing padding or font-size on labels.\n$badge-pill-border-radius: 10rem !default;\n\n\n// Modals\n\n// Padding applied to the modal body\n$modal-inner-padding: 1rem !default;\n\n$modal-dialog-margin: .5rem !default;\n$modal-dialog-margin-y-sm-up: 1.75rem !default;\n\n$modal-title-line-height: $line-height-base !default;\n\n$modal-content-bg: $white !default;\n$modal-content-border-color: rgba($black, .2) !default;\n$modal-content-border-width: $border-width !default;\n$modal-content-border-radius: $border-radius-lg !default;\n$modal-content-box-shadow-xs: 0 .25rem .5rem rgba($black, .5) !default;\n$modal-content-box-shadow-sm-up: 0 .5rem 1rem rgba($black, .5) !default;\n\n$modal-backdrop-bg: $black !default;\n$modal-backdrop-opacity: .5 !default;\n$modal-header-border-color: $gray-200 !default;\n$modal-footer-border-color: $modal-header-border-color !default;\n$modal-header-border-width: $modal-content-border-width !default;\n$modal-footer-border-width: $modal-header-border-width !default;\n$modal-header-padding: 1rem !default;\n\n$modal-lg: 800px !default;\n$modal-md: 500px !default;\n$modal-sm: 300px !default;\n\n$modal-transition: transform .3s ease-out !default;\n\n\n// Alerts\n//\n// Define alert colors, border radius, and padding.\n\n$alert-padding-y: .75rem !default;\n$alert-padding-x: 1.25rem !default;\n$alert-margin-bottom: 1rem !default;\n$alert-border-radius: $border-radius !default;\n$alert-link-font-weight: $font-weight-bold !default;\n$alert-border-width: $border-width !default;\n\n$alert-bg-level: -10 !default;\n$alert-border-level: -9 !default;\n$alert-color-level: 6 !default;\n\n\n// Progress bars\n\n$progress-height: 1rem !default;\n$progress-font-size: ($font-size-base * .75) !default;\n$progress-bg: $gray-200 !default;\n$progress-border-radius: $border-radius !default;\n$progress-box-shadow: inset 0 .1rem .1rem rgba($black, .1) !default;\n$progress-bar-color: $white !default;\n$progress-bar-bg: theme-color(\"primary\") !default;\n$progress-bar-animation-timing: 1s linear infinite !default;\n$progress-bar-transition: width .6s ease !default;\n\n// List group\n\n$list-group-bg: $white !default;\n$list-group-border-color: rgba($black, .125) !default;\n$list-group-border-width: $border-width !default;\n$list-group-border-radius: $border-radius !default;\n\n$list-group-item-padding-y: .75rem !default;\n$list-group-item-padding-x: 1.25rem !default;\n\n$list-group-hover-bg: $gray-100 !default;\n$list-group-active-color: $component-active-color !default;\n$list-group-active-bg: $component-active-bg !default;\n$list-group-active-border-color: $list-group-active-bg !default;\n\n$list-group-disabled-color: $gray-600 !default;\n$list-group-disabled-bg: $list-group-bg !default;\n\n$list-group-action-color: $gray-700 !default;\n$list-group-action-hover-color: $list-group-action-color !default;\n\n$list-group-action-active-color: $body-color !default;\n$list-group-action-active-bg: $gray-200 !default;\n\n\n// Image thumbnails\n\n$thumbnail-padding: .25rem !default;\n$thumbnail-bg: $body-bg !default;\n$thumbnail-border-width: $border-width !default;\n$thumbnail-border-color: $gray-300 !default;\n$thumbnail-border-radius: $border-radius !default;\n$thumbnail-box-shadow: 0 1px 2px rgba($black, .075) !default;\n\n\n// Figures\n\n$figure-caption-font-size: 90% !default;\n$figure-caption-color: $gray-600 !default;\n\n\n// Breadcrumbs\n\n$breadcrumb-padding-y: .75rem !default;\n$breadcrumb-padding-x: 1rem !default;\n$breadcrumb-item-padding: .5rem !default;\n\n$breadcrumb-margin-bottom: 1rem !default;\n\n$breadcrumb-bg: $gray-200 !default;\n$breadcrumb-divider-color: $gray-600 !default;\n$breadcrumb-active-color: $gray-600 !default;\n$breadcrumb-divider: quote(\"/\") !default;\n\n$breadcrumb-border-radius: $border-radius !default;\n\n\n// Carousel\n\n$carousel-control-color: $white !default;\n$carousel-control-width: 15% !default;\n$carousel-control-opacity: .5 !default;\n\n$carousel-indicator-width: 30px !default;\n$carousel-indicator-height: 3px !default;\n$carousel-indicator-spacer: 3px !default;\n$carousel-indicator-active-bg: $white !default;\n\n$carousel-caption-width: 70% !default;\n$carousel-caption-color: $white !default;\n\n$carousel-control-icon-width: 20px !default;\n\n$carousel-control-prev-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$carousel-control-next-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$carousel-transition: transform .6s ease !default; // Define transform transition first if using multiple transitions (e.g., `transform 2s ease, opacity .5s ease-out`)\n\n\n// Close\n\n$close-font-size: $font-size-base * 1.5 !default;\n$close-font-weight: $font-weight-bold !default;\n$close-color: $black !default;\n$close-text-shadow: 0 1px 0 $white !default;\n\n// Code\n\n$code-font-size: 87.5% !default;\n$code-color: $pink !default;\n\n$kbd-padding-y: .2rem !default;\n$kbd-padding-x: .4rem !default;\n$kbd-font-size: $code-font-size !default;\n$kbd-color: $white !default;\n$kbd-bg: $gray-900 !default;\n\n$pre-color: $gray-900 !default;\n$pre-scrollable-max-height: 340px !default;\n\n\n// Printing\n$print-page-size: a3 !default;\n$print-body-min-width: map-get($grid-breakpoints, \"lg\") !default;\n","/*!\n * Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)\n */\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml {\n font-family: sans-serif;\n line-height: 1.15;\n -webkit-text-size-adjust: 100%;\n -ms-text-size-adjust: 100%;\n -ms-overflow-style: scrollbar;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\n@-ms-viewport {\n width: device-width;\n}\n\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n\nbody {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n text-align: left;\n background-color: #fff;\n}\n\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\nhr {\n box-sizing: content-box;\n height: 0;\n overflow: visible;\n}\n\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[title],\nabbr[data-original-title] {\n text-decoration: underline;\n text-decoration: underline dotted;\n cursor: help;\n border-bottom: 0;\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\ndfn {\n font-style: italic;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\na {\n color: #007bff;\n text-decoration: none;\n background-color: transparent;\n -webkit-text-decoration-skip: objects;\n}\n\na:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):focus {\n outline: 0;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n font-size: 1em;\n}\n\npre {\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n -ms-overflow-style: scrollbar;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg {\n vertical-align: middle;\n border-style: none;\n}\n\nsvg {\n overflow: hidden;\n vertical-align: middle;\n}\n\ntable {\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n color: #6c757d;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n text-align: inherit;\n}\n\nlabel {\n display: inline-block;\n margin-bottom: 0.5rem;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\nbutton,\nhtml [type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box;\n padding: 0;\n}\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto;\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n max-width: 100%;\n padding: 0;\n margin-bottom: .5rem;\n font-size: 1.5rem;\n line-height: inherit;\n color: inherit;\n white-space: normal;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n outline-offset: -2px;\n -webkit-appearance: none;\n}\n\n[type=\"search\"]::-webkit-search-cancel-button,\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\ntemplate {\n display: none;\n}\n\n[hidden] {\n display: none !important;\n}\n\n/*# sourceMappingURL=bootstrap-reboot.css.map */","// Hover mixin and `$enable-hover-media-query` are deprecated.\n//\n// Originally added during our alphas and maintained during betas, this mixin was\n// designed to prevent `:hover` stickiness on iOS-an issue where hover styles\n// would persist after initial touch.\n//\n// For backward compatibility, we've kept these mixins and updated them to\n// always return their regular pseudo-classes instead of a shimmed media query.\n//\n// Issue: https://github.com/twbs/bootstrap/issues/25195\n\n@mixin hover {\n &:hover { @content; }\n}\n\n@mixin hover-focus {\n &:hover,\n &:focus {\n @content;\n }\n}\n\n@mixin plain-hover-focus {\n &,\n &:hover,\n &:focus {\n @content;\n }\n}\n\n@mixin hover-focus-active {\n &:hover,\n &:focus,\n &:active {\n @content;\n }\n}\n"]} \ No newline at end of file diff --git a/css/bootstrap-reboot.min.css b/css/bootstrap-reboot.min.css new file mode 100755 index 0000000..402715d --- /dev/null +++ b/css/bootstrap-reboot.min.css @@ -0,0 +1,8 @@ +/*! + * Bootstrap Reboot v4.1.3 (https://getbootstrap.com/) + * Copyright 2011-2018 The Bootstrap Authors + * Copyright 2011-2018 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md) + */*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}@-ms-viewport{width:device-width}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important} +/*# sourceMappingURL=bootstrap-reboot.min.css.map */ \ No newline at end of file diff --git a/css/bootstrap-reboot.min.css.map b/css/bootstrap-reboot.min.css.map new file mode 100755 index 0000000..2d7932c --- /dev/null +++ b/css/bootstrap-reboot.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../../scss/bootstrap-reboot.scss","../../scss/_reboot.scss","dist/css/bootstrap-reboot.css","bootstrap-reboot.css","../../scss/mixins/_hover.scss"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)\n */\n\n@import \"functions\";\n@import \"variables\";\n@import \"mixins\";\n@import \"reboot\";\n","// stylelint-disable at-rule-no-vendor-prefix, declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix\n\n// Reboot\n//\n// Normalization of HTML elements, manually forked from Normalize.css to remove\n// styles targeting irrelevant browsers while applying new styles.\n//\n// Normalize is licensed MIT. https://github.com/necolas/normalize.css\n\n\n// Document\n//\n// 1. Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.\n// 2. Change the default font family in all browsers.\n// 3. Correct the line height in all browsers.\n// 4. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS.\n// 5. Setting @viewport causes scrollbars to overlap content in IE11 and Edge, so\n// we force a non-overlapping, non-auto-hiding scrollbar to counteract.\n// 6. Change the default tap highlight to be completely transparent in iOS.\n\n*,\n*::before,\n*::after {\n box-sizing: border-box; // 1\n}\n\nhtml {\n font-family: sans-serif; // 2\n line-height: 1.15; // 3\n -webkit-text-size-adjust: 100%; // 4\n -ms-text-size-adjust: 100%; // 4\n -ms-overflow-style: scrollbar; // 5\n -webkit-tap-highlight-color: rgba($black, 0); // 6\n}\n\n// IE10+ doesn't honor `` in some cases.\n@at-root {\n @-ms-viewport {\n width: device-width;\n }\n}\n\n// stylelint-disable selector-list-comma-newline-after\n// Shim for \"new\" HTML5 structural elements to display correctly (IE10, older browsers)\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n// stylelint-enable selector-list-comma-newline-after\n\n// Body\n//\n// 1. Remove the margin in all browsers.\n// 2. As a best practice, apply a default `background-color`.\n// 3. Set an explicit initial text-align value so that we can later use the\n// the `inherit` value on things like `` elements.\n\nbody {\n margin: 0; // 1\n font-family: $font-family-base;\n font-size: $font-size-base;\n font-weight: $font-weight-base;\n line-height: $line-height-base;\n color: $body-color;\n text-align: left; // 3\n background-color: $body-bg; // 2\n}\n\n// Suppress the focus outline on elements that cannot be accessed via keyboard.\n// This prevents an unwanted focus outline from appearing around elements that\n// might still respond to pointer events.\n//\n// Credit: https://github.com/suitcss/base\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\n\n// Content grouping\n//\n// 1. Add the correct box sizing in Firefox.\n// 2. Show the overflow in Edge and IE.\n\nhr {\n box-sizing: content-box; // 1\n height: 0; // 1\n overflow: visible; // 2\n}\n\n\n//\n// Typography\n//\n\n// Remove top margins from headings\n//\n// By default, `

`-`

` all receive top and bottom margins. We nuke the top\n// margin for easier control within type scales as it avoids margin collapsing.\n// stylelint-disable selector-list-comma-newline-after\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: $headings-margin-bottom;\n}\n// stylelint-enable selector-list-comma-newline-after\n\n// Reset margins on paragraphs\n//\n// Similarly, the top margin on `

`s get reset. However, we also reset the\n// bottom margin to use `rem` units instead of `em`.\np {\n margin-top: 0;\n margin-bottom: $paragraph-margin-bottom;\n}\n\n// Abbreviations\n//\n// 1. Remove the bottom border in Firefox 39-.\n// 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n// 3. Add explicit cursor to indicate changed behavior.\n// 4. Duplicate behavior to the data-* attribute for our tooltip plugin\n\nabbr[title],\nabbr[data-original-title] { // 4\n text-decoration: underline; // 2\n text-decoration: underline dotted; // 2\n cursor: help; // 3\n border-bottom: 0; // 1\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: $dt-font-weight;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0; // Undo browser default\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\ndfn {\n font-style: italic; // Add the correct font style in Android 4.3-\n}\n\n// stylelint-disable font-weight-notation\nb,\nstrong {\n font-weight: bolder; // Add the correct font weight in Chrome, Edge, and Safari\n}\n// stylelint-enable font-weight-notation\n\nsmall {\n font-size: 80%; // Add the correct font size in all browsers\n}\n\n//\n// Prevent `sub` and `sup` elements from affecting the line height in\n// all browsers.\n//\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub { bottom: -.25em; }\nsup { top: -.5em; }\n\n\n//\n// Links\n//\n\na {\n color: $link-color;\n text-decoration: $link-decoration;\n background-color: transparent; // Remove the gray background on active links in IE 10.\n -webkit-text-decoration-skip: objects; // Remove gaps in links underline in iOS 8+ and Safari 8+.\n\n @include hover {\n color: $link-hover-color;\n text-decoration: $link-hover-decoration;\n }\n}\n\n// And undo these styles for placeholder links/named anchors (without href)\n// which have not been made explicitly keyboard-focusable (without tabindex).\n// It would be more straightforward to just use a[href] in previous block, but that\n// causes specificity issues in many other styles that are too complex to fix.\n// See https://github.com/twbs/bootstrap/issues/19402\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n\n @include hover-focus {\n color: inherit;\n text-decoration: none;\n }\n\n &:focus {\n outline: 0;\n }\n}\n\n\n//\n// Code\n//\n\npre,\ncode,\nkbd,\nsamp {\n font-family: $font-family-monospace;\n font-size: 1em; // Correct the odd `em` font sizing in all browsers.\n}\n\npre {\n // Remove browser default top margin\n margin-top: 0;\n // Reset browser default of `1em` to use `rem`s\n margin-bottom: 1rem;\n // Don't allow content to break outside\n overflow: auto;\n // We have @viewport set which causes scrollbars to overlap content in IE11 and Edge, so\n // we force a non-overlapping, non-auto-hiding scrollbar to counteract.\n -ms-overflow-style: scrollbar;\n}\n\n\n//\n// Figures\n//\n\nfigure {\n // Apply a consistent margin strategy (matches our type styles).\n margin: 0 0 1rem;\n}\n\n\n//\n// Images and content\n//\n\nimg {\n vertical-align: middle;\n border-style: none; // Remove the border on images inside links in IE 10-.\n}\n\nsvg {\n // Workaround for the SVG overflow bug in IE10/11 is still required.\n // See https://github.com/twbs/bootstrap/issues/26878\n overflow: hidden;\n vertical-align: middle;\n}\n\n\n//\n// Tables\n//\n\ntable {\n border-collapse: collapse; // Prevent double borders\n}\n\ncaption {\n padding-top: $table-cell-padding;\n padding-bottom: $table-cell-padding;\n color: $table-caption-color;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n // Matches default `` alignment by inheriting from the ``, or the\n // closest parent with a set `text-align`.\n text-align: inherit;\n}\n\n\n//\n// Forms\n//\n\nlabel {\n // Allow labels to use `margin` for spacing.\n display: inline-block;\n margin-bottom: $label-margin-bottom;\n}\n\n// Remove the default `border-radius` that macOS Chrome adds.\n//\n// Details at https://github.com/twbs/bootstrap/issues/24093\nbutton {\n border-radius: 0;\n}\n\n// Work around a Firefox/IE bug where the transparent `button` background\n// results in a loss of the default `button` focus styles.\n//\n// Credit: https://github.com/suitcss/base/\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0; // Remove the margin in Firefox and Safari\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible; // Show the overflow in Edge\n}\n\nbutton,\nselect {\n text-transform: none; // Remove the inheritance of text transform in Firefox\n}\n\n// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`\n// controls in Android 4.\n// 2. Correct the inability to style clickable types in iOS and Safari.\nbutton,\nhtml [type=\"button\"], // 1\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button; // 2\n}\n\n// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box; // 1. Add the correct box sizing in IE 10-\n padding: 0; // 2. Remove the padding in IE 10-\n}\n\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n // Remove the default appearance of temporal inputs to avoid a Mobile Safari\n // bug where setting a custom line-height prevents text from being vertically\n // centered within the input.\n // See https://bugs.webkit.org/show_bug.cgi?id=139848\n // and https://github.com/twbs/bootstrap/issues/11266\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto; // Remove the default vertical scrollbar in IE.\n // Textareas should really only resize vertically so they don't break their (horizontal) containers.\n resize: vertical;\n}\n\nfieldset {\n // Browsers set a default `min-width: min-content;` on fieldsets,\n // unlike e.g. `

`s, which have `min-width: 0;` by default.\n // So we reset that to ensure fieldsets behave more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359\n // and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements\n min-width: 0;\n // Reset the default outline behavior of fieldsets so they don't affect page layout.\n padding: 0;\n margin: 0;\n border: 0;\n}\n\n// 1. Correct the text wrapping in Edge and IE.\n// 2. Correct the color inheritance from `fieldset` elements in IE.\nlegend {\n display: block;\n width: 100%;\n max-width: 100%; // 1\n padding: 0;\n margin-bottom: .5rem;\n font-size: 1.5rem;\n line-height: inherit;\n color: inherit; // 2\n white-space: normal; // 1\n}\n\nprogress {\n vertical-align: baseline; // Add the correct vertical alignment in Chrome, Firefox, and Opera.\n}\n\n// Correct the cursor style of increment and decrement buttons in Chrome.\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n // This overrides the extra rounded corners on search inputs in iOS so that our\n // `.form-control` class can properly style them. Note that this cannot simply\n // be added to `.form-control` as it's not specific enough. For details, see\n // https://github.com/twbs/bootstrap/issues/11586.\n outline-offset: -2px; // 2. Correct the outline style in Safari.\n -webkit-appearance: none;\n}\n\n//\n// Remove the inner padding and cancel buttons in Chrome and Safari on macOS.\n//\n\n[type=\"search\"]::-webkit-search-cancel-button,\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// 1. Correct the inability to style clickable types in iOS and Safari.\n// 2. Change font properties to `inherit` in Safari.\n//\n\n::-webkit-file-upload-button {\n font: inherit; // 2\n -webkit-appearance: button; // 1\n}\n\n//\n// Correct element displays\n//\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item; // Add the correct display in all browsers\n cursor: pointer;\n}\n\ntemplate {\n display: none; // Add the correct display in IE\n}\n\n// Always hide an element with the `hidden` HTML attribute (from PureCSS).\n// Needed for proper display in IE 10-.\n[hidden] {\n display: none !important;\n}\n","/*!\n * Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)\n */\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml {\n font-family: sans-serif;\n line-height: 1.15;\n -webkit-text-size-adjust: 100%;\n -ms-text-size-adjust: 100%;\n -ms-overflow-style: scrollbar;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\n@-ms-viewport {\n width: device-width;\n}\n\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n\nbody {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n text-align: left;\n background-color: #fff;\n}\n\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\nhr {\n box-sizing: content-box;\n height: 0;\n overflow: visible;\n}\n\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[title],\nabbr[data-original-title] {\n text-decoration: underline;\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n cursor: help;\n border-bottom: 0;\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\ndfn {\n font-style: italic;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\na {\n color: #007bff;\n text-decoration: none;\n background-color: transparent;\n -webkit-text-decoration-skip: objects;\n}\n\na:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):focus {\n outline: 0;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n font-size: 1em;\n}\n\npre {\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n -ms-overflow-style: scrollbar;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg {\n vertical-align: middle;\n border-style: none;\n}\n\nsvg {\n overflow: hidden;\n vertical-align: middle;\n}\n\ntable {\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n color: #6c757d;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n text-align: inherit;\n}\n\nlabel {\n display: inline-block;\n margin-bottom: 0.5rem;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\nbutton,\nhtml [type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box;\n padding: 0;\n}\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto;\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n max-width: 100%;\n padding: 0;\n margin-bottom: .5rem;\n font-size: 1.5rem;\n line-height: inherit;\n color: inherit;\n white-space: normal;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n outline-offset: -2px;\n -webkit-appearance: none;\n}\n\n[type=\"search\"]::-webkit-search-cancel-button,\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\ntemplate {\n display: none;\n}\n\n[hidden] {\n display: none !important;\n}\n/*# sourceMappingURL=bootstrap-reboot.css.map */","/*!\n * Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)\n */\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml {\n font-family: sans-serif;\n line-height: 1.15;\n -webkit-text-size-adjust: 100%;\n -ms-text-size-adjust: 100%;\n -ms-overflow-style: scrollbar;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\n@-ms-viewport {\n width: device-width;\n}\n\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n\nbody {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n text-align: left;\n background-color: #fff;\n}\n\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\nhr {\n box-sizing: content-box;\n height: 0;\n overflow: visible;\n}\n\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[title],\nabbr[data-original-title] {\n text-decoration: underline;\n text-decoration: underline dotted;\n cursor: help;\n border-bottom: 0;\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\ndfn {\n font-style: italic;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\na {\n color: #007bff;\n text-decoration: none;\n background-color: transparent;\n -webkit-text-decoration-skip: objects;\n}\n\na:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):focus {\n outline: 0;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n font-size: 1em;\n}\n\npre {\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n -ms-overflow-style: scrollbar;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg {\n vertical-align: middle;\n border-style: none;\n}\n\nsvg {\n overflow: hidden;\n vertical-align: middle;\n}\n\ntable {\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n color: #6c757d;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n text-align: inherit;\n}\n\nlabel {\n display: inline-block;\n margin-bottom: 0.5rem;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\nbutton,\nhtml [type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box;\n padding: 0;\n}\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto;\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n max-width: 100%;\n padding: 0;\n margin-bottom: .5rem;\n font-size: 1.5rem;\n line-height: inherit;\n color: inherit;\n white-space: normal;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n outline-offset: -2px;\n -webkit-appearance: none;\n}\n\n[type=\"search\"]::-webkit-search-cancel-button,\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\ntemplate {\n display: none;\n}\n\n[hidden] {\n display: none !important;\n}\n\n/*# sourceMappingURL=bootstrap-reboot.css.map */","// Hover mixin and `$enable-hover-media-query` are deprecated.\n//\n// Originally added during our alphas and maintained during betas, this mixin was\n// designed to prevent `:hover` stickiness on iOS-an issue where hover styles\n// would persist after initial touch.\n//\n// For backward compatibility, we've kept these mixins and updated them to\n// always return their regular pseudo-classes instead of a shimmed media query.\n//\n// Issue: https://github.com/twbs/bootstrap/issues/25195\n\n@mixin hover {\n &:hover { @content; }\n}\n\n@mixin hover-focus {\n &:hover,\n &:focus {\n @content;\n }\n}\n\n@mixin plain-hover-focus {\n &,\n &:hover,\n &:focus {\n @content;\n }\n}\n\n@mixin hover-focus-active {\n &:hover,\n &:focus,\n &:active {\n @content;\n }\n}\n"]} \ No newline at end of file diff --git a/css/bootstrap-theme.css b/css/bootstrap-theme.css new file mode 100755 index 0000000..31d8882 --- /dev/null +++ b/css/bootstrap-theme.css @@ -0,0 +1,587 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +.btn-default, +.btn-primary, +.btn-success, +.btn-info, +.btn-warning, +.btn-danger { + text-shadow: 0 -1px 0 rgba(0, 0, 0, .2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); +} +.btn-default:active, +.btn-primary:active, +.btn-success:active, +.btn-info:active, +.btn-warning:active, +.btn-danger:active, +.btn-default.active, +.btn-primary.active, +.btn-success.active, +.btn-info.active, +.btn-warning.active, +.btn-danger.active { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-default.disabled, +.btn-primary.disabled, +.btn-success.disabled, +.btn-info.disabled, +.btn-warning.disabled, +.btn-danger.disabled, +.btn-default[disabled], +.btn-primary[disabled], +.btn-success[disabled], +.btn-info[disabled], +.btn-warning[disabled], +.btn-danger[disabled], +fieldset[disabled] .btn-default, +fieldset[disabled] .btn-primary, +fieldset[disabled] .btn-success, +fieldset[disabled] .btn-info, +fieldset[disabled] .btn-warning, +fieldset[disabled] .btn-danger { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-default .badge, +.btn-primary .badge, +.btn-success .badge, +.btn-info .badge, +.btn-warning .badge, +.btn-danger .badge { + text-shadow: none; +} +.btn:active, +.btn.active { + background-image: none; +} +.btn-default { + text-shadow: 0 1px 0 #fff; + background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); + background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0)); + background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #dbdbdb; + border-color: #ccc; +} +.btn-default:hover, +.btn-default:focus { + background-color: #e0e0e0; + background-position: 0 -15px; +} +.btn-default:active, +.btn-default.active { + background-color: #e0e0e0; + border-color: #dbdbdb; +} +.btn-default.disabled, +.btn-default[disabled], +fieldset[disabled] .btn-default, +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus, +.btn-default.disabled:active, +.btn-default[disabled]:active, +fieldset[disabled] .btn-default:active, +.btn-default.disabled.active, +.btn-default[disabled].active, +fieldset[disabled] .btn-default.active { + background-color: #e0e0e0; + background-image: none; +} +.btn-primary { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88)); + background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #245580; +} +.btn-primary:hover, +.btn-primary:focus { + background-color: #265a88; + background-position: 0 -15px; +} +.btn-primary:active, +.btn-primary.active { + background-color: #265a88; + border-color: #245580; +} +.btn-primary.disabled, +.btn-primary[disabled], +fieldset[disabled] .btn-primary, +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus, +.btn-primary.disabled:active, +.btn-primary[disabled]:active, +fieldset[disabled] .btn-primary:active, +.btn-primary.disabled.active, +.btn-primary[disabled].active, +fieldset[disabled] .btn-primary.active { + background-color: #265a88; + background-image: none; +} +.btn-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #3e8f3e; +} +.btn-success:hover, +.btn-success:focus { + background-color: #419641; + background-position: 0 -15px; +} +.btn-success:active, +.btn-success.active { + background-color: #419641; + border-color: #3e8f3e; +} +.btn-success.disabled, +.btn-success[disabled], +fieldset[disabled] .btn-success, +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus, +.btn-success.disabled:active, +.btn-success[disabled]:active, +fieldset[disabled] .btn-success:active, +.btn-success.disabled.active, +.btn-success[disabled].active, +fieldset[disabled] .btn-success.active { + background-color: #419641; + background-image: none; +} +.btn-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #28a4c9; +} +.btn-info:hover, +.btn-info:focus { + background-color: #2aabd2; + background-position: 0 -15px; +} +.btn-info:active, +.btn-info.active { + background-color: #2aabd2; + border-color: #28a4c9; +} +.btn-info.disabled, +.btn-info[disabled], +fieldset[disabled] .btn-info, +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus, +.btn-info.disabled:active, +.btn-info[disabled]:active, +fieldset[disabled] .btn-info:active, +.btn-info.disabled.active, +.btn-info[disabled].active, +fieldset[disabled] .btn-info.active { + background-color: #2aabd2; + background-image: none; +} +.btn-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #e38d13; +} +.btn-warning:hover, +.btn-warning:focus { + background-color: #eb9316; + background-position: 0 -15px; +} +.btn-warning:active, +.btn-warning.active { + background-color: #eb9316; + border-color: #e38d13; +} +.btn-warning.disabled, +.btn-warning[disabled], +fieldset[disabled] .btn-warning, +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus, +.btn-warning.disabled:active, +.btn-warning[disabled]:active, +fieldset[disabled] .btn-warning:active, +.btn-warning.disabled.active, +.btn-warning[disabled].active, +fieldset[disabled] .btn-warning.active { + background-color: #eb9316; + background-image: none; +} +.btn-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #b92c28; +} +.btn-danger:hover, +.btn-danger:focus { + background-color: #c12e2a; + background-position: 0 -15px; +} +.btn-danger:active, +.btn-danger.active { + background-color: #c12e2a; + border-color: #b92c28; +} +.btn-danger.disabled, +.btn-danger[disabled], +fieldset[disabled] .btn-danger, +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus, +.btn-danger.disabled:active, +.btn-danger[disabled]:active, +fieldset[disabled] .btn-danger:active, +.btn-danger.disabled.active, +.btn-danger[disabled].active, +fieldset[disabled] .btn-danger.active { + background-color: #c12e2a; + background-image: none; +} +.thumbnail, +.img-thumbnail { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); + box-shadow: 0 1px 2px rgba(0, 0, 0, .075); +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + background-color: #e8e8e8; + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); + background-repeat: repeat-x; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + background-color: #2e6da4; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; +} +.navbar-default { + background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%); + background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8)); + background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); + background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0); + background-repeat: repeat-x; + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); +} +.navbar-brand, +.navbar-nav > li > a { + text-shadow: 0 1px 0 rgba(255, 255, 255, .25); +} +.navbar-inverse { + background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); + background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222)); + background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-radius: 4px; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f)); + background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0); + background-repeat: repeat-x; + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); +} +.navbar-inverse .navbar-brand, +.navbar-inverse .navbar-nav > li > a { + text-shadow: 0 -1px 0 rgba(0, 0, 0, .25); +} +.navbar-static-top, +.navbar-fixed-top, +.navbar-fixed-bottom { + border-radius: 0; +} +@media (max-width: 767px) { + .navbar .navbar-nav .open .dropdown-menu > .active > a, + .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; + } +} +.alert { + text-shadow: 0 1px 0 rgba(255, 255, 255, .2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); +} +.alert-success { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); + background-repeat: repeat-x; + border-color: #b2dba1; +} +.alert-info { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); + background-repeat: repeat-x; + border-color: #9acfea; +} +.alert-warning { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); + background-repeat: repeat-x; + border-color: #f5e79e; +} +.alert-danger { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3)); + background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); + background-repeat: repeat-x; + border-color: #dca7a7; +} +.progress { + background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090)); + background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.list-group { + border-radius: 4px; + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); + box-shadow: 0 1px 2px rgba(0, 0, 0, .075); +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + text-shadow: 0 -1px 0 #286090; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0); + background-repeat: repeat-x; + border-color: #2b669a; +} +.list-group-item.active .badge, +.list-group-item.active:hover .badge, +.list-group-item.active:focus .badge { + text-shadow: none; +} +.panel { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05); + box-shadow: 0 1px 2px rgba(0, 0, 0, .05); +} +.panel-default > .panel-heading { + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); + background-repeat: repeat-x; +} +.panel-primary > .panel-heading { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; +} +.panel-success > .panel-heading { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); + background-repeat: repeat-x; +} +.panel-info > .panel-heading { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); + background-repeat: repeat-x; +} +.panel-warning > .panel-heading { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); + background-repeat: repeat-x; +} +.panel-danger > .panel-heading { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc)); + background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); + background-repeat: repeat-x; +} +.well { + background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); + background-repeat: repeat-x; + border-color: #dcdcdc; + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); +} +/*# sourceMappingURL=bootstrap-theme.css.map */ diff --git a/css/bootstrap-theme.css.map b/css/bootstrap-theme.css.map new file mode 100755 index 0000000..d876f60 --- /dev/null +++ b/css/bootstrap-theme.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["bootstrap-theme.css","less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":"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","file":"bootstrap-theme.css","sourcesContent":["/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.btn-default:active,\n.btn-primary:active,\n.btn-success:active,\n.btn-info:active,\n.btn-warning:active,\n.btn-danger:active,\n.btn-default.active,\n.btn-primary.active,\n.btn-success.active,\n.btn-info.active,\n.btn-warning.active,\n.btn-danger.active {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-default.disabled,\n.btn-primary.disabled,\n.btn-success.disabled,\n.btn-info.disabled,\n.btn-warning.disabled,\n.btn-danger.disabled,\n.btn-default[disabled],\n.btn-primary[disabled],\n.btn-success[disabled],\n.btn-info[disabled],\n.btn-warning[disabled],\n.btn-danger[disabled],\nfieldset[disabled] .btn-default,\nfieldset[disabled] .btn-primary,\nfieldset[disabled] .btn-success,\nfieldset[disabled] .btn-info,\nfieldset[disabled] .btn-warning,\nfieldset[disabled] .btn-danger {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-default .badge,\n.btn-primary .badge,\n.btn-success .badge,\n.btn-info .badge,\n.btn-warning .badge,\n.btn-danger .badge {\n text-shadow: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n}\n.btn-default {\n background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #dbdbdb;\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-default:hover,\n.btn-default:focus {\n background-color: #e0e0e0;\n background-position: 0 -15px;\n}\n.btn-default:active,\n.btn-default.active {\n background-color: #e0e0e0;\n border-color: #dbdbdb;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #e0e0e0;\n background-image: none;\n}\n.btn-primary {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #245580;\n}\n.btn-primary:hover,\n.btn-primary:focus {\n background-color: #265a88;\n background-position: 0 -15px;\n}\n.btn-primary:active,\n.btn-primary.active {\n background-color: #265a88;\n border-color: #245580;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #265a88;\n background-image: none;\n}\n.btn-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #3e8f3e;\n}\n.btn-success:hover,\n.btn-success:focus {\n background-color: #419641;\n background-position: 0 -15px;\n}\n.btn-success:active,\n.btn-success.active {\n background-color: #419641;\n border-color: #3e8f3e;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #419641;\n background-image: none;\n}\n.btn-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #28a4c9;\n}\n.btn-info:hover,\n.btn-info:focus {\n background-color: #2aabd2;\n background-position: 0 -15px;\n}\n.btn-info:active,\n.btn-info.active {\n background-color: #2aabd2;\n border-color: #28a4c9;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #2aabd2;\n background-image: none;\n}\n.btn-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #e38d13;\n}\n.btn-warning:hover,\n.btn-warning:focus {\n background-color: #eb9316;\n background-position: 0 -15px;\n}\n.btn-warning:active,\n.btn-warning.active {\n background-color: #eb9316;\n border-color: #e38d13;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #eb9316;\n background-image: none;\n}\n.btn-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #b92c28;\n}\n.btn-danger:hover,\n.btn-danger:focus {\n background-color: #c12e2a;\n background-position: 0 -15px;\n}\n.btn-danger:active,\n.btn-danger.active {\n background-color: #c12e2a;\n border-color: #b92c28;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #c12e2a;\n background-image: none;\n}\n.thumbnail,\n.img-thumbnail {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-color: #e8e8e8;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-color: #2e6da4;\n}\n.navbar-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n.navbar-inverse {\n background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n}\n.navbar-inverse .navbar-brand,\n.navbar-inverse .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n@media (max-width: 767px) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n }\n}\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.alert-success {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);\n border-color: #b2dba1;\n}\n.alert-info {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);\n border-color: #9acfea;\n}\n.alert-warning {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);\n border-color: #f5e79e;\n}\n.alert-danger {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);\n border-color: #dca7a7;\n}\n.progress {\n background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);\n}\n.progress-bar {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);\n}\n.progress-bar-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);\n}\n.progress-bar-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);\n}\n.progress-bar-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);\n}\n.progress-bar-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);\n}\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.list-group {\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 #286090;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);\n border-color: #2b669a;\n}\n.list-group-item.active .badge,\n.list-group-item.active:hover .badge,\n.list-group-item.active:focus .badge {\n text-shadow: none;\n}\n.panel {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.panel-default > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n}\n.panel-primary > .panel-heading {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n}\n.panel-success > .panel-heading {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);\n}\n.panel-info > .panel-heading {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);\n}\n.panel-warning > .panel-heading {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);\n}\n.panel-danger > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);\n}\n.well {\n background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);\n border-color: #dcdcdc;\n -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n}\n/*# sourceMappingURL=bootstrap-theme.css.map */","/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0,0,0,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255,255,255,.25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0,0,0,.25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255,255,255,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0,0,0,.05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n"]} \ No newline at end of file diff --git a/css/bootstrap-theme.min.css b/css/bootstrap-theme.min.css new file mode 100755 index 0000000..5e39401 --- /dev/null +++ b/css/bootstrap-theme.min.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */.btn-danger,.btn-default,.btn-info,.btn-primary,.btn-success,.btn-warning{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-success.active,.btn-success:active,.btn-warning.active,.btn-warning:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-danger.disabled,.btn-danger[disabled],.btn-default.disabled,.btn-default[disabled],.btn-info.disabled,.btn-info[disabled],.btn-primary.disabled,.btn-primary[disabled],.btn-success.disabled,.btn-success[disabled],.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-danger,fieldset[disabled] .btn-default,fieldset[disabled] .btn-info,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-success,fieldset[disabled] .btn-warning{-webkit-box-shadow:none;box-shadow:none}.btn-danger .badge,.btn-default .badge,.btn-info .badge,.btn-primary .badge,.btn-success .badge,.btn-warning .badge{text-shadow:none}.btn.active,.btn:active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc}.btn-default:focus,.btn-default:hover{background-color:#e0e0e0;background-position:0 -15px}.btn-default.active,.btn-default:active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#265a88));background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:focus,.btn-primary:hover{background-color:#265a88;background-position:0 -15px}.btn-primary.active,.btn-primary:active{background-color:#265a88;border-color:#245580}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#419641));background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:focus,.btn-success:hover{background-color:#419641;background-position:0 -15px}.btn-success.active,.btn-success:active{background-color:#419641;border-color:#3e8f3e}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#2aabd2));background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:focus,.btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.btn-info.active,.btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#eb9316));background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:focus,.btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.btn-warning.active,.btn-warning:active{background-color:#eb9316;border-color:#e38d13}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c12e2a));background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:focus,.btn-danger:hover{background-color:#c12e2a;background-position:0 -15px}.btn-danger.active,.btn-danger:active{background-color:#c12e2a;border-color:#b92c28}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c12e2a;background-image:none}.img-thumbnail,.thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-color:#2e6da4;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#e2e2e2));background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#222));background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#080808),to(#0f0f0f));background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);background-repeat:repeat-x;border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#b9def0));background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);background-repeat:repeat-x;border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#f8efc0));background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);background-repeat:repeat-x;border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);background-repeat:repeat-x;border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5));background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#286090));background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);background-repeat:repeat-x}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44));background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);background-repeat:repeat-x}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#31b0d5));background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);background-repeat:repeat-x}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#ec971f));background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);background-repeat:repeat-x}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c9302c));background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);background-repeat:repeat-x}.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2b669a));background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);background-repeat:repeat-x;border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:focus .badge,.list-group-item.active:hover .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#d0e9c6));background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);background-repeat:repeat-x}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#c4e3f3));background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);background-repeat:repeat-x}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#faf2cc));background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);background-repeat:repeat-x}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#ebcccc));background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);background-repeat:repeat-x}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#e8e8e8),to(#f5f5f5));background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x;border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)} +/*# sourceMappingURL=bootstrap-theme.min.css.map */ \ No newline at end of file diff --git a/css/bootstrap-theme.min.css.map b/css/bootstrap-theme.min.css.map new file mode 100755 index 0000000..94813e9 --- /dev/null +++ b/css/bootstrap-theme.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0,0,0,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255,255,255,.25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0,0,0,.25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255,255,255,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0,0,0,.05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n"]} \ No newline at end of file diff --git a/css/bootstrap.css b/css/bootstrap.css new file mode 100755 index 0000000..943532d --- /dev/null +++ b/css/bootstrap.css @@ -0,0 +1,9030 @@ +/*! + * Bootstrap v4.1.3 (https://getbootstrap.com/) + * Copyright 2011-2018 The Bootstrap Authors + * Copyright 2011-2018 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +:root { + --blue: #007bff; + --indigo: #6610f2; + --purple: #6f42c1; + --pink: #e83e8c; + --red: #dc3545; + --orange: #fd7e14; + --yellow: #ffc107; + --green: #28a745; + --teal: #20c997; + --cyan: #17a2b8; + --white: #fff; + --gray: #6c757d; + --gray-dark: #343a40; + --primary: #007bff; + --secondary: #6c757d; + --success: #28a745; + --info: #17a2b8; + --warning: #ffc107; + --danger: #dc3545; + --light: #f8f9fa; + --dark: #343a40; + --breakpoint-xs: 0; + --breakpoint-sm: 576px; + --breakpoint-md: 768px; + --breakpoint-lg: 992px; + --breakpoint-xl: 1200px; + --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +} + +*, +*::before, +*::after { + box-sizing: border-box; +} + +html { + font-family: sans-serif; + line-height: 1.15; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; + -ms-overflow-style: scrollbar; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +@-ms-viewport { + width: device-width; +} + +article, aside, figcaption, figure, footer, header, hgroup, main, nav, section { + display: block; +} + +body { + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: left; + background-color: #fff; +} + +[tabindex="-1"]:focus { + outline: 0 !important; +} + +hr { + box-sizing: content-box; + height: 0; + overflow: visible; +} + +h1, h2, h3, h4, h5, h6 { + margin-top: 0; + margin-bottom: 0.5rem; +} + +p { + margin-top: 0; + margin-bottom: 1rem; +} + +abbr[title], +abbr[data-original-title] { + text-decoration: underline; + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; + cursor: help; + border-bottom: 0; +} + +address { + margin-bottom: 1rem; + font-style: normal; + line-height: inherit; +} + +ol, +ul, +dl { + margin-top: 0; + margin-bottom: 1rem; +} + +ol ol, +ul ul, +ol ul, +ul ol { + margin-bottom: 0; +} + +dt { + font-weight: 700; +} + +dd { + margin-bottom: .5rem; + margin-left: 0; +} + +blockquote { + margin: 0 0 1rem; +} + +dfn { + font-style: italic; +} + +b, +strong { + font-weight: bolder; +} + +small { + font-size: 80%; +} + +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} + +sub { + bottom: -.25em; +} + +sup { + top: -.5em; +} + +a { + color: #007bff; + text-decoration: none; + background-color: transparent; + -webkit-text-decoration-skip: objects; +} + +a:hover { + color: #0056b3; + text-decoration: underline; +} + +a:not([href]):not([tabindex]) { + color: inherit; + text-decoration: none; +} + +a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus { + color: inherit; + text-decoration: none; +} + +a:not([href]):not([tabindex]):focus { + outline: 0; +} + +pre, +code, +kbd, +samp { + font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + font-size: 1em; +} + +pre { + margin-top: 0; + margin-bottom: 1rem; + overflow: auto; + -ms-overflow-style: scrollbar; +} + +figure { + margin: 0 0 1rem; +} + +img { + vertical-align: middle; + border-style: none; +} + +svg { + overflow: hidden; + vertical-align: middle; +} + +table { + border-collapse: collapse; +} + +caption { + padding-top: 0.75rem; + padding-bottom: 0.75rem; + color: #6c757d; + text-align: left; + caption-side: bottom; +} + +th { + text-align: inherit; +} + +label { + display: inline-block; + margin-bottom: 0.5rem; +} + +button { + border-radius: 0; +} + +button:focus { + outline: 1px dotted; + outline: 5px auto -webkit-focus-ring-color; +} + +input, +button, +select, +optgroup, +textarea { + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; +} + +button, +input { + overflow: visible; +} + +button, +select { + text-transform: none; +} + +button, +html [type="button"], +[type="reset"], +[type="submit"] { + -webkit-appearance: button; +} + +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + padding: 0; + border-style: none; +} + +input[type="radio"], +input[type="checkbox"] { + box-sizing: border-box; + padding: 0; +} + +input[type="date"], +input[type="time"], +input[type="datetime-local"], +input[type="month"] { + -webkit-appearance: listbox; +} + +textarea { + overflow: auto; + resize: vertical; +} + +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} + +legend { + display: block; + width: 100%; + max-width: 100%; + padding: 0; + margin-bottom: .5rem; + font-size: 1.5rem; + line-height: inherit; + color: inherit; + white-space: normal; +} + +progress { + vertical-align: baseline; +} + +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +[type="search"] { + outline-offset: -2px; + -webkit-appearance: none; +} + +[type="search"]::-webkit-search-cancel-button, +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-file-upload-button { + font: inherit; + -webkit-appearance: button; +} + +output { + display: inline-block; +} + +summary { + display: list-item; + cursor: pointer; +} + +template { + display: none; +} + +[hidden] { + display: none !important; +} + +h1, h2, h3, h4, h5, h6, +.h1, .h2, .h3, .h4, .h5, .h6 { + margin-bottom: 0.5rem; + font-family: inherit; + font-weight: 500; + line-height: 1.2; + color: inherit; +} + +h1, .h1 { + font-size: 2.5rem; +} + +h2, .h2 { + font-size: 2rem; +} + +h3, .h3 { + font-size: 1.75rem; +} + +h4, .h4 { + font-size: 1.5rem; +} + +h5, .h5 { + font-size: 1.25rem; +} + +h6, .h6 { + font-size: 1rem; +} + +.lead { + font-size: 1.25rem; + font-weight: 300; +} + +.display-1 { + font-size: 6rem; + font-weight: 300; + line-height: 1.2; +} + +.display-2 { + font-size: 5.5rem; + font-weight: 300; + line-height: 1.2; +} + +.display-3 { + font-size: 4.5rem; + font-weight: 300; + line-height: 1.2; +} + +.display-4 { + font-size: 3.5rem; + font-weight: 300; + line-height: 1.2; +} + +hr { + margin-top: 1rem; + margin-bottom: 1rem; + border: 0; + border-top: 1px solid rgba(0, 0, 0, 0.1); +} + +small, +.small { + font-size: 80%; + font-weight: 400; +} + +mark, +.mark { + padding: 0.2em; + background-color: #fcf8e3; +} + +.list-unstyled { + padding-left: 0; + list-style: none; +} + +.list-inline { + padding-left: 0; + list-style: none; +} + +.list-inline-item { + display: inline-block; +} + +.list-inline-item:not(:last-child) { + margin-right: 0.5rem; +} + +.initialism { + font-size: 90%; + text-transform: uppercase; +} + +.blockquote { + margin-bottom: 1rem; + font-size: 1.25rem; +} + +.blockquote-footer { + display: block; + font-size: 80%; + color: #6c757d; +} + +.blockquote-footer::before { + content: "\2014 \00A0"; +} + +.img-fluid { + max-width: 100%; + height: auto; +} + +.img-thumbnail { + padding: 0.25rem; + background-color: #fff; + border: 1px solid #dee2e6; + border-radius: 0.25rem; + max-width: 100%; + height: auto; +} + +.figure { + display: inline-block; +} + +.figure-img { + margin-bottom: 0.5rem; + line-height: 1; +} + +.figure-caption { + font-size: 90%; + color: #6c757d; +} + +code { + font-size: 87.5%; + color: #e83e8c; + word-break: break-word; +} + +a > code { + color: inherit; +} + +kbd { + padding: 0.2rem 0.4rem; + font-size: 87.5%; + color: #fff; + background-color: #212529; + border-radius: 0.2rem; +} + +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: 700; +} + +pre { + display: block; + font-size: 87.5%; + color: #212529; +} + +pre code { + font-size: inherit; + color: inherit; + word-break: normal; +} + +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} + +.container { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} + +@media (min-width: 576px) { + .container { + max-width: 540px; + } +} + +@media (min-width: 768px) { + .container { + max-width: 720px; + } +} + +@media (min-width: 992px) { + .container { + max-width: 960px; + } +} + +@media (min-width: 1200px) { + .container { + max-width: 1140px; + } +} + +.container-fluid { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} + +.row { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-right: -15px; + margin-left: -15px; +} + +.no-gutters { + margin-right: 0; + margin-left: 0; +} + +.no-gutters > .col, +.no-gutters > [class*="col-"] { + padding-right: 0; + padding-left: 0; +} + +.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, +.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, +.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, +.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, +.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, +.col-xl-auto { + position: relative; + width: 100%; + min-height: 1px; + padding-right: 15px; + padding-left: 15px; +} + +.col { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; +} + +.col-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: none; +} + +.col-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; +} + +.col-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; +} + +.col-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; +} + +.col-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; +} + +.col-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; +} + +.col-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; +} + +.col-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; +} + +.col-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; +} + +.col-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; +} + +.col-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; +} + +.col-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; +} + +.col-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; +} + +.order-first { + -ms-flex-order: -1; + order: -1; +} + +.order-last { + -ms-flex-order: 13; + order: 13; +} + +.order-0 { + -ms-flex-order: 0; + order: 0; +} + +.order-1 { + -ms-flex-order: 1; + order: 1; +} + +.order-2 { + -ms-flex-order: 2; + order: 2; +} + +.order-3 { + -ms-flex-order: 3; + order: 3; +} + +.order-4 { + -ms-flex-order: 4; + order: 4; +} + +.order-5 { + -ms-flex-order: 5; + order: 5; +} + +.order-6 { + -ms-flex-order: 6; + order: 6; +} + +.order-7 { + -ms-flex-order: 7; + order: 7; +} + +.order-8 { + -ms-flex-order: 8; + order: 8; +} + +.order-9 { + -ms-flex-order: 9; + order: 9; +} + +.order-10 { + -ms-flex-order: 10; + order: 10; +} + +.order-11 { + -ms-flex-order: 11; + order: 11; +} + +.order-12 { + -ms-flex-order: 12; + order: 12; +} + +.offset-1 { + margin-left: 8.333333%; +} + +.offset-2 { + margin-left: 16.666667%; +} + +.offset-3 { + margin-left: 25%; +} + +.offset-4 { + margin-left: 33.333333%; +} + +.offset-5 { + margin-left: 41.666667%; +} + +.offset-6 { + margin-left: 50%; +} + +.offset-7 { + margin-left: 58.333333%; +} + +.offset-8 { + margin-left: 66.666667%; +} + +.offset-9 { + margin-left: 75%; +} + +.offset-10 { + margin-left: 83.333333%; +} + +.offset-11 { + margin-left: 91.666667%; +} + +@media (min-width: 576px) { + .col-sm { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-sm-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: none; + } + .col-sm-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-sm-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-sm-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-sm-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-sm-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-sm-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-sm-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-sm-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-sm-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-sm-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-sm-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-sm-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-sm-first { + -ms-flex-order: -1; + order: -1; + } + .order-sm-last { + -ms-flex-order: 13; + order: 13; + } + .order-sm-0 { + -ms-flex-order: 0; + order: 0; + } + .order-sm-1 { + -ms-flex-order: 1; + order: 1; + } + .order-sm-2 { + -ms-flex-order: 2; + order: 2; + } + .order-sm-3 { + -ms-flex-order: 3; + order: 3; + } + .order-sm-4 { + -ms-flex-order: 4; + order: 4; + } + .order-sm-5 { + -ms-flex-order: 5; + order: 5; + } + .order-sm-6 { + -ms-flex-order: 6; + order: 6; + } + .order-sm-7 { + -ms-flex-order: 7; + order: 7; + } + .order-sm-8 { + -ms-flex-order: 8; + order: 8; + } + .order-sm-9 { + -ms-flex-order: 9; + order: 9; + } + .order-sm-10 { + -ms-flex-order: 10; + order: 10; + } + .order-sm-11 { + -ms-flex-order: 11; + order: 11; + } + .order-sm-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-sm-0 { + margin-left: 0; + } + .offset-sm-1 { + margin-left: 8.333333%; + } + .offset-sm-2 { + margin-left: 16.666667%; + } + .offset-sm-3 { + margin-left: 25%; + } + .offset-sm-4 { + margin-left: 33.333333%; + } + .offset-sm-5 { + margin-left: 41.666667%; + } + .offset-sm-6 { + margin-left: 50%; + } + .offset-sm-7 { + margin-left: 58.333333%; + } + .offset-sm-8 { + margin-left: 66.666667%; + } + .offset-sm-9 { + margin-left: 75%; + } + .offset-sm-10 { + margin-left: 83.333333%; + } + .offset-sm-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 768px) { + .col-md { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-md-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: none; + } + .col-md-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-md-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-md-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-md-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-md-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-md-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-md-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-md-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-md-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-md-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-md-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-md-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-md-first { + -ms-flex-order: -1; + order: -1; + } + .order-md-last { + -ms-flex-order: 13; + order: 13; + } + .order-md-0 { + -ms-flex-order: 0; + order: 0; + } + .order-md-1 { + -ms-flex-order: 1; + order: 1; + } + .order-md-2 { + -ms-flex-order: 2; + order: 2; + } + .order-md-3 { + -ms-flex-order: 3; + order: 3; + } + .order-md-4 { + -ms-flex-order: 4; + order: 4; + } + .order-md-5 { + -ms-flex-order: 5; + order: 5; + } + .order-md-6 { + -ms-flex-order: 6; + order: 6; + } + .order-md-7 { + -ms-flex-order: 7; + order: 7; + } + .order-md-8 { + -ms-flex-order: 8; + order: 8; + } + .order-md-9 { + -ms-flex-order: 9; + order: 9; + } + .order-md-10 { + -ms-flex-order: 10; + order: 10; + } + .order-md-11 { + -ms-flex-order: 11; + order: 11; + } + .order-md-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-md-0 { + margin-left: 0; + } + .offset-md-1 { + margin-left: 8.333333%; + } + .offset-md-2 { + margin-left: 16.666667%; + } + .offset-md-3 { + margin-left: 25%; + } + .offset-md-4 { + margin-left: 33.333333%; + } + .offset-md-5 { + margin-left: 41.666667%; + } + .offset-md-6 { + margin-left: 50%; + } + .offset-md-7 { + margin-left: 58.333333%; + } + .offset-md-8 { + margin-left: 66.666667%; + } + .offset-md-9 { + margin-left: 75%; + } + .offset-md-10 { + margin-left: 83.333333%; + } + .offset-md-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 992px) { + .col-lg { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-lg-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: none; + } + .col-lg-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-lg-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-lg-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-lg-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-lg-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-lg-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-lg-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-lg-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-lg-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-lg-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-lg-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-lg-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-lg-first { + -ms-flex-order: -1; + order: -1; + } + .order-lg-last { + -ms-flex-order: 13; + order: 13; + } + .order-lg-0 { + -ms-flex-order: 0; + order: 0; + } + .order-lg-1 { + -ms-flex-order: 1; + order: 1; + } + .order-lg-2 { + -ms-flex-order: 2; + order: 2; + } + .order-lg-3 { + -ms-flex-order: 3; + order: 3; + } + .order-lg-4 { + -ms-flex-order: 4; + order: 4; + } + .order-lg-5 { + -ms-flex-order: 5; + order: 5; + } + .order-lg-6 { + -ms-flex-order: 6; + order: 6; + } + .order-lg-7 { + -ms-flex-order: 7; + order: 7; + } + .order-lg-8 { + -ms-flex-order: 8; + order: 8; + } + .order-lg-9 { + -ms-flex-order: 9; + order: 9; + } + .order-lg-10 { + -ms-flex-order: 10; + order: 10; + } + .order-lg-11 { + -ms-flex-order: 11; + order: 11; + } + .order-lg-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-lg-0 { + margin-left: 0; + } + .offset-lg-1 { + margin-left: 8.333333%; + } + .offset-lg-2 { + margin-left: 16.666667%; + } + .offset-lg-3 { + margin-left: 25%; + } + .offset-lg-4 { + margin-left: 33.333333%; + } + .offset-lg-5 { + margin-left: 41.666667%; + } + .offset-lg-6 { + margin-left: 50%; + } + .offset-lg-7 { + margin-left: 58.333333%; + } + .offset-lg-8 { + margin-left: 66.666667%; + } + .offset-lg-9 { + margin-left: 75%; + } + .offset-lg-10 { + margin-left: 83.333333%; + } + .offset-lg-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 1200px) { + .col-xl { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-xl-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: none; + } + .col-xl-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-xl-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-xl-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-xl-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-xl-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-xl-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-xl-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-xl-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-xl-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-xl-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-xl-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-xl-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-xl-first { + -ms-flex-order: -1; + order: -1; + } + .order-xl-last { + -ms-flex-order: 13; + order: 13; + } + .order-xl-0 { + -ms-flex-order: 0; + order: 0; + } + .order-xl-1 { + -ms-flex-order: 1; + order: 1; + } + .order-xl-2 { + -ms-flex-order: 2; + order: 2; + } + .order-xl-3 { + -ms-flex-order: 3; + order: 3; + } + .order-xl-4 { + -ms-flex-order: 4; + order: 4; + } + .order-xl-5 { + -ms-flex-order: 5; + order: 5; + } + .order-xl-6 { + -ms-flex-order: 6; + order: 6; + } + .order-xl-7 { + -ms-flex-order: 7; + order: 7; + } + .order-xl-8 { + -ms-flex-order: 8; + order: 8; + } + .order-xl-9 { + -ms-flex-order: 9; + order: 9; + } + .order-xl-10 { + -ms-flex-order: 10; + order: 10; + } + .order-xl-11 { + -ms-flex-order: 11; + order: 11; + } + .order-xl-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-xl-0 { + margin-left: 0; + } + .offset-xl-1 { + margin-left: 8.333333%; + } + .offset-xl-2 { + margin-left: 16.666667%; + } + .offset-xl-3 { + margin-left: 25%; + } + .offset-xl-4 { + margin-left: 33.333333%; + } + .offset-xl-5 { + margin-left: 41.666667%; + } + .offset-xl-6 { + margin-left: 50%; + } + .offset-xl-7 { + margin-left: 58.333333%; + } + .offset-xl-8 { + margin-left: 66.666667%; + } + .offset-xl-9 { + margin-left: 75%; + } + .offset-xl-10 { + margin-left: 83.333333%; + } + .offset-xl-11 { + margin-left: 91.666667%; + } +} + +.table { + width: 100%; + margin-bottom: 1rem; + background-color: transparent; +} + +.table th, +.table td { + padding: 0.75rem; + vertical-align: top; + border-top: 1px solid #dee2e6; +} + +.table thead th { + vertical-align: bottom; + border-bottom: 2px solid #dee2e6; +} + +.table tbody + tbody { + border-top: 2px solid #dee2e6; +} + +.table .table { + background-color: #fff; +} + +.table-sm th, +.table-sm td { + padding: 0.3rem; +} + +.table-bordered { + border: 1px solid #dee2e6; +} + +.table-bordered th, +.table-bordered td { + border: 1px solid #dee2e6; +} + +.table-bordered thead th, +.table-bordered thead td { + border-bottom-width: 2px; +} + +.table-borderless th, +.table-borderless td, +.table-borderless thead th, +.table-borderless tbody + tbody { + border: 0; +} + +.table-striped tbody tr:nth-of-type(odd) { + background-color: rgba(0, 0, 0, 0.05); +} + +.table-hover tbody tr:hover { + background-color: rgba(0, 0, 0, 0.075); +} + +.table-primary, +.table-primary > th, +.table-primary > td { + background-color: #b8daff; +} + +.table-hover .table-primary:hover { + background-color: #9fcdff; +} + +.table-hover .table-primary:hover > td, +.table-hover .table-primary:hover > th { + background-color: #9fcdff; +} + +.table-secondary, +.table-secondary > th, +.table-secondary > td { + background-color: #d6d8db; +} + +.table-hover .table-secondary:hover { + background-color: #c8cbcf; +} + +.table-hover .table-secondary:hover > td, +.table-hover .table-secondary:hover > th { + background-color: #c8cbcf; +} + +.table-success, +.table-success > th, +.table-success > td { + background-color: #c3e6cb; +} + +.table-hover .table-success:hover { + background-color: #b1dfbb; +} + +.table-hover .table-success:hover > td, +.table-hover .table-success:hover > th { + background-color: #b1dfbb; +} + +.table-info, +.table-info > th, +.table-info > td { + background-color: #bee5eb; +} + +.table-hover .table-info:hover { + background-color: #abdde5; +} + +.table-hover .table-info:hover > td, +.table-hover .table-info:hover > th { + background-color: #abdde5; +} + +.table-warning, +.table-warning > th, +.table-warning > td { + background-color: #ffeeba; +} + +.table-hover .table-warning:hover { + background-color: #ffe8a1; +} + +.table-hover .table-warning:hover > td, +.table-hover .table-warning:hover > th { + background-color: #ffe8a1; +} + +.table-danger, +.table-danger > th, +.table-danger > td { + background-color: #f5c6cb; +} + +.table-hover .table-danger:hover { + background-color: #f1b0b7; +} + +.table-hover .table-danger:hover > td, +.table-hover .table-danger:hover > th { + background-color: #f1b0b7; +} + +.table-light, +.table-light > th, +.table-light > td { + background-color: #fdfdfe; +} + +.table-hover .table-light:hover { + background-color: #ececf6; +} + +.table-hover .table-light:hover > td, +.table-hover .table-light:hover > th { + background-color: #ececf6; +} + +.table-dark, +.table-dark > th, +.table-dark > td { + background-color: #c6c8ca; +} + +.table-hover .table-dark:hover { + background-color: #b9bbbe; +} + +.table-hover .table-dark:hover > td, +.table-hover .table-dark:hover > th { + background-color: #b9bbbe; +} + +.table-active, +.table-active > th, +.table-active > td { + background-color: rgba(0, 0, 0, 0.075); +} + +.table-hover .table-active:hover { + background-color: rgba(0, 0, 0, 0.075); +} + +.table-hover .table-active:hover > td, +.table-hover .table-active:hover > th { + background-color: rgba(0, 0, 0, 0.075); +} + +.table .thead-dark th { + color: #fff; + background-color: #212529; + border-color: #32383e; +} + +.table .thead-light th { + color: #495057; + background-color: #e9ecef; + border-color: #dee2e6; +} + +.table-dark { + color: #fff; + background-color: #212529; +} + +.table-dark th, +.table-dark td, +.table-dark thead th { + border-color: #32383e; +} + +.table-dark.table-bordered { + border: 0; +} + +.table-dark.table-striped tbody tr:nth-of-type(odd) { + background-color: rgba(255, 255, 255, 0.05); +} + +.table-dark.table-hover tbody tr:hover { + background-color: rgba(255, 255, 255, 0.075); +} + +@media (max-width: 575.98px) { + .table-responsive-sm { + display: block; + width: 100%; + overflow-x: auto; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar; + } + .table-responsive-sm > .table-bordered { + border: 0; + } +} + +@media (max-width: 767.98px) { + .table-responsive-md { + display: block; + width: 100%; + overflow-x: auto; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar; + } + .table-responsive-md > .table-bordered { + border: 0; + } +} + +@media (max-width: 991.98px) { + .table-responsive-lg { + display: block; + width: 100%; + overflow-x: auto; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar; + } + .table-responsive-lg > .table-bordered { + border: 0; + } +} + +@media (max-width: 1199.98px) { + .table-responsive-xl { + display: block; + width: 100%; + overflow-x: auto; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar; + } + .table-responsive-xl > .table-bordered { + border: 0; + } +} + +.table-responsive { + display: block; + width: 100%; + overflow-x: auto; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar; +} + +.table-responsive > .table-bordered { + border: 0; +} + +.form-control { + display: block; + width: 100%; + height: calc(2.25rem + 2px); + padding: 0.375rem 0.75rem; + font-size: 1rem; + line-height: 1.5; + color: #495057; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #ced4da; + border-radius: 0.25rem; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media screen and (prefers-reduced-motion: reduce) { + .form-control { + transition: none; + } +} + +.form-control::-ms-expand { + background-color: transparent; + border: 0; +} + +.form-control:focus { + color: #495057; + background-color: #fff; + border-color: #80bdff; + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.form-control::-webkit-input-placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control::-moz-placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control:-ms-input-placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control::-ms-input-placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control::placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control:disabled, .form-control[readonly] { + background-color: #e9ecef; + opacity: 1; +} + +select.form-control:focus::-ms-value { + color: #495057; + background-color: #fff; +} + +.form-control-file, +.form-control-range { + display: block; + width: 100%; +} + +.col-form-label { + padding-top: calc(0.375rem + 1px); + padding-bottom: calc(0.375rem + 1px); + margin-bottom: 0; + font-size: inherit; + line-height: 1.5; +} + +.col-form-label-lg { + padding-top: calc(0.5rem + 1px); + padding-bottom: calc(0.5rem + 1px); + font-size: 1.25rem; + line-height: 1.5; +} + +.col-form-label-sm { + padding-top: calc(0.25rem + 1px); + padding-bottom: calc(0.25rem + 1px); + font-size: 0.875rem; + line-height: 1.5; +} + +.form-control-plaintext { + display: block; + width: 100%; + padding-top: 0.375rem; + padding-bottom: 0.375rem; + margin-bottom: 0; + line-height: 1.5; + color: #212529; + background-color: transparent; + border: solid transparent; + border-width: 1px 0; +} + +.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg { + padding-right: 0; + padding-left: 0; +} + +.form-control-sm { + height: calc(1.8125rem + 2px); + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + line-height: 1.5; + border-radius: 0.2rem; +} + +.form-control-lg { + height: calc(2.875rem + 2px); + padding: 0.5rem 1rem; + font-size: 1.25rem; + line-height: 1.5; + border-radius: 0.3rem; +} + +select.form-control[size], select.form-control[multiple] { + height: auto; +} + +textarea.form-control { + height: auto; +} + +.form-group { + margin-bottom: 1rem; +} + +.form-text { + display: block; + margin-top: 0.25rem; +} + +.form-row { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-right: -5px; + margin-left: -5px; +} + +.form-row > .col, +.form-row > [class*="col-"] { + padding-right: 5px; + padding-left: 5px; +} + +.form-check { + position: relative; + display: block; + padding-left: 1.25rem; +} + +.form-check-input { + position: absolute; + margin-top: 0.3rem; + margin-left: -1.25rem; +} + +.form-check-input:disabled ~ .form-check-label { + color: #6c757d; +} + +.form-check-label { + margin-bottom: 0; +} + +.form-check-inline { + display: -ms-inline-flexbox; + display: inline-flex; + -ms-flex-align: center; + align-items: center; + padding-left: 0; + margin-right: 0.75rem; +} + +.form-check-inline .form-check-input { + position: static; + margin-top: 0; + margin-right: 0.3125rem; + margin-left: 0; +} + +.valid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 80%; + color: #28a745; +} + +.valid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: .1rem; + font-size: 0.875rem; + line-height: 1.5; + color: #fff; + background-color: rgba(40, 167, 69, 0.9); + border-radius: 0.25rem; +} + +.was-validated .form-control:valid, .form-control.is-valid, .was-validated +.custom-select:valid, +.custom-select.is-valid { + border-color: #28a745; +} + +.was-validated .form-control:valid:focus, .form-control.is-valid:focus, .was-validated +.custom-select:valid:focus, +.custom-select.is-valid:focus { + border-color: #28a745; + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); +} + +.was-validated .form-control:valid ~ .valid-feedback, +.was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback, +.form-control.is-valid ~ .valid-tooltip, .was-validated +.custom-select:valid ~ .valid-feedback, +.was-validated +.custom-select:valid ~ .valid-tooltip, +.custom-select.is-valid ~ .valid-feedback, +.custom-select.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .form-control-file:valid ~ .valid-feedback, +.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback, +.form-control-file.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label { + color: #28a745; +} + +.was-validated .form-check-input:valid ~ .valid-feedback, +.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback, +.form-check-input.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label { + color: #28a745; +} + +.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before { + background-color: #71dd8a; +} + +.was-validated .custom-control-input:valid ~ .valid-feedback, +.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback, +.custom-control-input.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before { + background-color: #34ce57; +} + +.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(40, 167, 69, 0.25); +} + +.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label { + border-color: #28a745; +} + +.was-validated .custom-file-input:valid ~ .custom-file-label::after, .custom-file-input.is-valid ~ .custom-file-label::after { + border-color: inherit; +} + +.was-validated .custom-file-input:valid ~ .valid-feedback, +.was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback, +.custom-file-input.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label { + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); +} + +.invalid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 80%; + color: #dc3545; +} + +.invalid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: .1rem; + font-size: 0.875rem; + line-height: 1.5; + color: #fff; + background-color: rgba(220, 53, 69, 0.9); + border-radius: 0.25rem; +} + +.was-validated .form-control:invalid, .form-control.is-invalid, .was-validated +.custom-select:invalid, +.custom-select.is-invalid { + border-color: #dc3545; +} + +.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus, .was-validated +.custom-select:invalid:focus, +.custom-select.is-invalid:focus { + border-color: #dc3545; + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); +} + +.was-validated .form-control:invalid ~ .invalid-feedback, +.was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback, +.form-control.is-invalid ~ .invalid-tooltip, .was-validated +.custom-select:invalid ~ .invalid-feedback, +.was-validated +.custom-select:invalid ~ .invalid-tooltip, +.custom-select.is-invalid ~ .invalid-feedback, +.custom-select.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .form-control-file:invalid ~ .invalid-feedback, +.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback, +.form-control-file.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label { + color: #dc3545; +} + +.was-validated .form-check-input:invalid ~ .invalid-feedback, +.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback, +.form-check-input.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label { + color: #dc3545; +} + +.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before { + background-color: #efa2a9; +} + +.was-validated .custom-control-input:invalid ~ .invalid-feedback, +.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback, +.custom-control-input.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before { + background-color: #e4606d; +} + +.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(220, 53, 69, 0.25); +} + +.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label { + border-color: #dc3545; +} + +.was-validated .custom-file-input:invalid ~ .custom-file-label::after, .custom-file-input.is-invalid ~ .custom-file-label::after { + border-color: inherit; +} + +.was-validated .custom-file-input:invalid ~ .invalid-feedback, +.was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback, +.custom-file-input.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label { + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); +} + +.form-inline { + display: -ms-flexbox; + display: flex; + -ms-flex-flow: row wrap; + flex-flow: row wrap; + -ms-flex-align: center; + align-items: center; +} + +.form-inline .form-check { + width: 100%; +} + +@media (min-width: 576px) { + .form-inline label { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: center; + justify-content: center; + margin-bottom: 0; + } + .form-inline .form-group { + display: -ms-flexbox; + display: flex; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + -ms-flex-flow: row wrap; + flex-flow: row wrap; + -ms-flex-align: center; + align-items: center; + margin-bottom: 0; + } + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .form-inline .form-control-plaintext { + display: inline-block; + } + .form-inline .input-group, + .form-inline .custom-select { + width: auto; + } + .form-inline .form-check { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: center; + justify-content: center; + width: auto; + padding-left: 0; + } + .form-inline .form-check-input { + position: relative; + margin-top: 0; + margin-right: 0.25rem; + margin-left: 0; + } + .form-inline .custom-control { + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: center; + justify-content: center; + } + .form-inline .custom-control-label { + margin-bottom: 0; + } +} + +.btn { + display: inline-block; + font-weight: 400; + text-align: center; + white-space: nowrap; + vertical-align: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + border: 1px solid transparent; + padding: 0.375rem 0.75rem; + font-size: 1rem; + line-height: 1.5; + border-radius: 0.25rem; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media screen and (prefers-reduced-motion: reduce) { + .btn { + transition: none; + } +} + +.btn:hover, .btn:focus { + text-decoration: none; +} + +.btn:focus, .btn.focus { + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.btn.disabled, .btn:disabled { + opacity: 0.65; +} + +.btn:not(:disabled):not(.disabled) { + cursor: pointer; +} + +a.btn.disabled, +fieldset:disabled a.btn { + pointer-events: none; +} + +.btn-primary { + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.btn-primary:hover { + color: #fff; + background-color: #0069d9; + border-color: #0062cc; +} + +.btn-primary:focus, .btn-primary.focus { + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); +} + +.btn-primary.disabled, .btn-primary:disabled { + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, +.show > .btn-primary.dropdown-toggle { + color: #fff; + background-color: #0062cc; + border-color: #005cbf; +} + +.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, +.show > .btn-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); +} + +.btn-secondary { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-secondary:hover { + color: #fff; + background-color: #5a6268; + border-color: #545b62; +} + +.btn-secondary:focus, .btn-secondary.focus { + box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); +} + +.btn-secondary.disabled, .btn-secondary:disabled { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, +.show > .btn-secondary.dropdown-toggle { + color: #fff; + background-color: #545b62; + border-color: #4e555b; +} + +.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, +.show > .btn-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); +} + +.btn-success { + color: #fff; + background-color: #28a745; + border-color: #28a745; +} + +.btn-success:hover { + color: #fff; + background-color: #218838; + border-color: #1e7e34; +} + +.btn-success:focus, .btn-success.focus { + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); +} + +.btn-success.disabled, .btn-success:disabled { + color: #fff; + background-color: #28a745; + border-color: #28a745; +} + +.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, +.show > .btn-success.dropdown-toggle { + color: #fff; + background-color: #1e7e34; + border-color: #1c7430; +} + +.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus, +.show > .btn-success.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); +} + +.btn-info { + color: #fff; + background-color: #17a2b8; + border-color: #17a2b8; +} + +.btn-info:hover { + color: #fff; + background-color: #138496; + border-color: #117a8b; +} + +.btn-info:focus, .btn-info.focus { + box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); +} + +.btn-info.disabled, .btn-info:disabled { + color: #fff; + background-color: #17a2b8; + border-color: #17a2b8; +} + +.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, +.show > .btn-info.dropdown-toggle { + color: #fff; + background-color: #117a8b; + border-color: #10707f; +} + +.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus, +.show > .btn-info.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); +} + +.btn-warning { + color: #212529; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-warning:hover { + color: #212529; + background-color: #e0a800; + border-color: #d39e00; +} + +.btn-warning:focus, .btn-warning.focus { + box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); +} + +.btn-warning.disabled, .btn-warning:disabled { + color: #212529; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, +.show > .btn-warning.dropdown-toggle { + color: #212529; + background-color: #d39e00; + border-color: #c69500; +} + +.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus, +.show > .btn-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); +} + +.btn-danger { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-danger:hover { + color: #fff; + background-color: #c82333; + border-color: #bd2130; +} + +.btn-danger:focus, .btn-danger.focus { + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); +} + +.btn-danger.disabled, .btn-danger:disabled { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, +.show > .btn-danger.dropdown-toggle { + color: #fff; + background-color: #bd2130; + border-color: #b21f2d; +} + +.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus, +.show > .btn-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); +} + +.btn-light { + color: #212529; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-light:hover { + color: #212529; + background-color: #e2e6ea; + border-color: #dae0e5; +} + +.btn-light:focus, .btn-light.focus { + box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); +} + +.btn-light.disabled, .btn-light:disabled { + color: #212529; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, +.show > .btn-light.dropdown-toggle { + color: #212529; + background-color: #dae0e5; + border-color: #d3d9df; +} + +.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus, +.show > .btn-light.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); +} + +.btn-dark { + color: #fff; + background-color: #343a40; + border-color: #343a40; +} + +.btn-dark:hover { + color: #fff; + background-color: #23272b; + border-color: #1d2124; +} + +.btn-dark:focus, .btn-dark.focus { + box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); +} + +.btn-dark.disabled, .btn-dark:disabled { + color: #fff; + background-color: #343a40; + border-color: #343a40; +} + +.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, +.show > .btn-dark.dropdown-toggle { + color: #fff; + background-color: #1d2124; + border-color: #171a1d; +} + +.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus, +.show > .btn-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); +} + +.btn-outline-primary { + color: #007bff; + background-color: transparent; + background-image: none; + border-color: #007bff; +} + +.btn-outline-primary:hover { + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.btn-outline-primary:focus, .btn-outline-primary.focus { + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); +} + +.btn-outline-primary.disabled, .btn-outline-primary:disabled { + color: #007bff; + background-color: transparent; +} + +.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, +.show > .btn-outline-primary.dropdown-toggle { + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); +} + +.btn-outline-secondary { + color: #6c757d; + background-color: transparent; + background-image: none; + border-color: #6c757d; +} + +.btn-outline-secondary:hover { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-outline-secondary:focus, .btn-outline-secondary.focus { + box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); +} + +.btn-outline-secondary.disabled, .btn-outline-secondary:disabled { + color: #6c757d; + background-color: transparent; +} + +.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, +.show > .btn-outline-secondary.dropdown-toggle { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); +} + +.btn-outline-success { + color: #28a745; + background-color: transparent; + background-image: none; + border-color: #28a745; +} + +.btn-outline-success:hover { + color: #fff; + background-color: #28a745; + border-color: #28a745; +} + +.btn-outline-success:focus, .btn-outline-success.focus { + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); +} + +.btn-outline-success.disabled, .btn-outline-success:disabled { + color: #28a745; + background-color: transparent; +} + +.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active, +.show > .btn-outline-success.dropdown-toggle { + color: #fff; + background-color: #28a745; + border-color: #28a745; +} + +.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-success.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); +} + +.btn-outline-info { + color: #17a2b8; + background-color: transparent; + background-image: none; + border-color: #17a2b8; +} + +.btn-outline-info:hover { + color: #fff; + background-color: #17a2b8; + border-color: #17a2b8; +} + +.btn-outline-info:focus, .btn-outline-info.focus { + box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); +} + +.btn-outline-info.disabled, .btn-outline-info:disabled { + color: #17a2b8; + background-color: transparent; +} + +.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active, +.show > .btn-outline-info.dropdown-toggle { + color: #fff; + background-color: #17a2b8; + border-color: #17a2b8; +} + +.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-info.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); +} + +.btn-outline-warning { + color: #ffc107; + background-color: transparent; + background-image: none; + border-color: #ffc107; +} + +.btn-outline-warning:hover { + color: #212529; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-outline-warning:focus, .btn-outline-warning.focus { + box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); +} + +.btn-outline-warning.disabled, .btn-outline-warning:disabled { + color: #ffc107; + background-color: transparent; +} + +.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active, +.show > .btn-outline-warning.dropdown-toggle { + color: #212529; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); +} + +.btn-outline-danger { + color: #dc3545; + background-color: transparent; + background-image: none; + border-color: #dc3545; +} + +.btn-outline-danger:hover { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-outline-danger:focus, .btn-outline-danger.focus { + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); +} + +.btn-outline-danger.disabled, .btn-outline-danger:disabled { + color: #dc3545; + background-color: transparent; +} + +.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active, +.show > .btn-outline-danger.dropdown-toggle { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); +} + +.btn-outline-light { + color: #f8f9fa; + background-color: transparent; + background-image: none; + border-color: #f8f9fa; +} + +.btn-outline-light:hover { + color: #212529; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-outline-light:focus, .btn-outline-light.focus { + box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); +} + +.btn-outline-light.disabled, .btn-outline-light:disabled { + color: #f8f9fa; + background-color: transparent; +} + +.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active, +.show > .btn-outline-light.dropdown-toggle { + color: #212529; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-light.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); +} + +.btn-outline-dark { + color: #343a40; + background-color: transparent; + background-image: none; + border-color: #343a40; +} + +.btn-outline-dark:hover { + color: #fff; + background-color: #343a40; + border-color: #343a40; +} + +.btn-outline-dark:focus, .btn-outline-dark.focus { + box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); +} + +.btn-outline-dark.disabled, .btn-outline-dark:disabled { + color: #343a40; + background-color: transparent; +} + +.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active, +.show > .btn-outline-dark.dropdown-toggle { + color: #fff; + background-color: #343a40; + border-color: #343a40; +} + +.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); +} + +.btn-link { + font-weight: 400; + color: #007bff; + background-color: transparent; +} + +.btn-link:hover { + color: #0056b3; + text-decoration: underline; + background-color: transparent; + border-color: transparent; +} + +.btn-link:focus, .btn-link.focus { + text-decoration: underline; + border-color: transparent; + box-shadow: none; +} + +.btn-link:disabled, .btn-link.disabled { + color: #6c757d; + pointer-events: none; +} + +.btn-lg, .btn-group-lg > .btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + line-height: 1.5; + border-radius: 0.3rem; +} + +.btn-sm, .btn-group-sm > .btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + line-height: 1.5; + border-radius: 0.2rem; +} + +.btn-block { + display: block; + width: 100%; +} + +.btn-block + .btn-block { + margin-top: 0.5rem; +} + +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} + +.fade { + transition: opacity 0.15s linear; +} + +@media screen and (prefers-reduced-motion: reduce) { + .fade { + transition: none; + } +} + +.fade:not(.show) { + opacity: 0; +} + +.collapse:not(.show) { + display: none; +} + +.collapsing { + position: relative; + height: 0; + overflow: hidden; + transition: height 0.35s ease; +} + +@media screen and (prefers-reduced-motion: reduce) { + .collapsing { + transition: none; + } +} + +.dropup, +.dropright, +.dropdown, +.dropleft { + position: relative; +} + +.dropdown-toggle::after { + display: inline-block; + width: 0; + height: 0; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid; + border-right: 0.3em solid transparent; + border-bottom: 0; + border-left: 0.3em solid transparent; +} + +.dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 10rem; + padding: 0.5rem 0; + margin: 0.125rem 0 0; + font-size: 1rem; + color: #212529; + text-align: left; + list-style: none; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 0.25rem; +} + +.dropdown-menu-right { + right: 0; + left: auto; +} + +.dropup .dropdown-menu { + top: auto; + bottom: 100%; + margin-top: 0; + margin-bottom: 0.125rem; +} + +.dropup .dropdown-toggle::after { + display: inline-block; + width: 0; + height: 0; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0; + border-right: 0.3em solid transparent; + border-bottom: 0.3em solid; + border-left: 0.3em solid transparent; +} + +.dropup .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropright .dropdown-menu { + top: 0; + right: auto; + left: 100%; + margin-top: 0; + margin-left: 0.125rem; +} + +.dropright .dropdown-toggle::after { + display: inline-block; + width: 0; + height: 0; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0; + border-bottom: 0.3em solid transparent; + border-left: 0.3em solid; +} + +.dropright .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropright .dropdown-toggle::after { + vertical-align: 0; +} + +.dropleft .dropdown-menu { + top: 0; + right: 100%; + left: auto; + margin-top: 0; + margin-right: 0.125rem; +} + +.dropleft .dropdown-toggle::after { + display: inline-block; + width: 0; + height: 0; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; +} + +.dropleft .dropdown-toggle::after { + display: none; +} + +.dropleft .dropdown-toggle::before { + display: inline-block; + width: 0; + height: 0; + margin-right: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0.3em solid; + border-bottom: 0.3em solid transparent; +} + +.dropleft .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropleft .dropdown-toggle::before { + vertical-align: 0; +} + +.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] { + right: auto; + bottom: auto; +} + +.dropdown-divider { + height: 0; + margin: 0.5rem 0; + overflow: hidden; + border-top: 1px solid #e9ecef; +} + +.dropdown-item { + display: block; + width: 100%; + padding: 0.25rem 1.5rem; + clear: both; + font-weight: 400; + color: #212529; + text-align: inherit; + white-space: nowrap; + background-color: transparent; + border: 0; +} + +.dropdown-item:hover, .dropdown-item:focus { + color: #16181b; + text-decoration: none; + background-color: #f8f9fa; +} + +.dropdown-item.active, .dropdown-item:active { + color: #fff; + text-decoration: none; + background-color: #007bff; +} + +.dropdown-item.disabled, .dropdown-item:disabled { + color: #6c757d; + background-color: transparent; +} + +.dropdown-menu.show { + display: block; +} + +.dropdown-header { + display: block; + padding: 0.5rem 1.5rem; + margin-bottom: 0; + font-size: 0.875rem; + color: #6c757d; + white-space: nowrap; +} + +.dropdown-item-text { + display: block; + padding: 0.25rem 1.5rem; + color: #212529; +} + +.btn-group, +.btn-group-vertical { + position: relative; + display: -ms-inline-flexbox; + display: inline-flex; + vertical-align: middle; +} + +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + -ms-flex: 0 1 auto; + flex: 0 1 auto; +} + +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover { + z-index: 1; +} + +.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active, +.btn-group-vertical > .btn:focus, +.btn-group-vertical > .btn:active, +.btn-group-vertical > .btn.active { + z-index: 1; +} + +.btn-group .btn + .btn, +.btn-group .btn + .btn-group, +.btn-group .btn-group + .btn, +.btn-group .btn-group + .btn-group, +.btn-group-vertical .btn + .btn, +.btn-group-vertical .btn + .btn-group, +.btn-group-vertical .btn-group + .btn, +.btn-group-vertical .btn-group + .btn-group { + margin-left: -1px; +} + +.btn-toolbar { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-pack: start; + justify-content: flex-start; +} + +.btn-toolbar .input-group { + width: auto; +} + +.btn-group > .btn:first-child { + margin-left: 0; +} + +.btn-group > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.btn-group > .btn:not(:first-child), +.btn-group > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.dropdown-toggle-split { + padding-right: 0.5625rem; + padding-left: 0.5625rem; +} + +.dropdown-toggle-split::after, +.dropup .dropdown-toggle-split::after, +.dropright .dropdown-toggle-split::after { + margin-left: 0; +} + +.dropleft .dropdown-toggle-split::before { + margin-right: 0; +} + +.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split { + padding-right: 0.375rem; + padding-left: 0.375rem; +} + +.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split { + padding-right: 0.75rem; + padding-left: 0.75rem; +} + +.btn-group-vertical { + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-align: start; + align-items: flex-start; + -ms-flex-pack: center; + justify-content: center; +} + +.btn-group-vertical .btn, +.btn-group-vertical .btn-group { + width: 100%; +} + +.btn-group-vertical > .btn + .btn, +.btn-group-vertical > .btn + .btn-group, +.btn-group-vertical > .btn-group + .btn, +.btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} + +.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group-vertical > .btn-group:not(:last-child) > .btn { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.btn-group-vertical > .btn:not(:first-child), +.btn-group-vertical > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.btn-group-toggle > .btn, +.btn-group-toggle > .btn-group > .btn { + margin-bottom: 0; +} + +.btn-group-toggle > .btn input[type="radio"], +.btn-group-toggle > .btn input[type="checkbox"], +.btn-group-toggle > .btn-group > .btn input[type="radio"], +.btn-group-toggle > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} + +.input-group { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-align: stretch; + align-items: stretch; + width: 100%; +} + +.input-group > .form-control, +.input-group > .custom-select, +.input-group > .custom-file { + position: relative; + -ms-flex: 1 1 auto; + flex: 1 1 auto; + width: 1%; + margin-bottom: 0; +} + +.input-group > .form-control + .form-control, +.input-group > .form-control + .custom-select, +.input-group > .form-control + .custom-file, +.input-group > .custom-select + .form-control, +.input-group > .custom-select + .custom-select, +.input-group > .custom-select + .custom-file, +.input-group > .custom-file + .form-control, +.input-group > .custom-file + .custom-select, +.input-group > .custom-file + .custom-file { + margin-left: -1px; +} + +.input-group > .form-control:focus, +.input-group > .custom-select:focus, +.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label { + z-index: 3; +} + +.input-group > .custom-file .custom-file-input:focus { + z-index: 4; +} + +.input-group > .form-control:not(:last-child), +.input-group > .custom-select:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.input-group > .form-control:not(:first-child), +.input-group > .custom-select:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.input-group > .custom-file { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; +} + +.input-group > .custom-file:not(:last-child) .custom-file-label, +.input-group > .custom-file:not(:last-child) .custom-file-label::after { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.input-group > .custom-file:not(:first-child) .custom-file-label { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.input-group-prepend, +.input-group-append { + display: -ms-flexbox; + display: flex; +} + +.input-group-prepend .btn, +.input-group-append .btn { + position: relative; + z-index: 2; +} + +.input-group-prepend .btn + .btn, +.input-group-prepend .btn + .input-group-text, +.input-group-prepend .input-group-text + .input-group-text, +.input-group-prepend .input-group-text + .btn, +.input-group-append .btn + .btn, +.input-group-append .btn + .input-group-text, +.input-group-append .input-group-text + .input-group-text, +.input-group-append .input-group-text + .btn { + margin-left: -1px; +} + +.input-group-prepend { + margin-right: -1px; +} + +.input-group-append { + margin-left: -1px; +} + +.input-group-text { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + padding: 0.375rem 0.75rem; + margin-bottom: 0; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #495057; + text-align: center; + white-space: nowrap; + background-color: #e9ecef; + border: 1px solid #ced4da; + border-radius: 0.25rem; +} + +.input-group-text input[type="radio"], +.input-group-text input[type="checkbox"] { + margin-top: 0; +} + +.input-group-lg > .form-control, +.input-group-lg > .input-group-prepend > .input-group-text, +.input-group-lg > .input-group-append > .input-group-text, +.input-group-lg > .input-group-prepend > .btn, +.input-group-lg > .input-group-append > .btn { + height: calc(2.875rem + 2px); + padding: 0.5rem 1rem; + font-size: 1.25rem; + line-height: 1.5; + border-radius: 0.3rem; +} + +.input-group-sm > .form-control, +.input-group-sm > .input-group-prepend > .input-group-text, +.input-group-sm > .input-group-append > .input-group-text, +.input-group-sm > .input-group-prepend > .btn, +.input-group-sm > .input-group-append > .btn { + height: calc(1.8125rem + 2px); + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + line-height: 1.5; + border-radius: 0.2rem; +} + +.input-group > .input-group-prepend > .btn, +.input-group > .input-group-prepend > .input-group-text, +.input-group > .input-group-append:not(:last-child) > .btn, +.input-group > .input-group-append:not(:last-child) > .input-group-text, +.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.input-group > .input-group-append > .btn, +.input-group > .input-group-append > .input-group-text, +.input-group > .input-group-prepend:not(:first-child) > .btn, +.input-group > .input-group-prepend:not(:first-child) > .input-group-text, +.input-group > .input-group-prepend:first-child > .btn:not(:first-child), +.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.custom-control { + position: relative; + display: block; + min-height: 1.5rem; + padding-left: 1.5rem; +} + +.custom-control-inline { + display: -ms-inline-flexbox; + display: inline-flex; + margin-right: 1rem; +} + +.custom-control-input { + position: absolute; + z-index: -1; + opacity: 0; +} + +.custom-control-input:checked ~ .custom-control-label::before { + color: #fff; + background-color: #007bff; +} + +.custom-control-input:focus ~ .custom-control-label::before { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.custom-control-input:active ~ .custom-control-label::before { + color: #fff; + background-color: #b3d7ff; +} + +.custom-control-input:disabled ~ .custom-control-label { + color: #6c757d; +} + +.custom-control-input:disabled ~ .custom-control-label::before { + background-color: #e9ecef; +} + +.custom-control-label { + position: relative; + margin-bottom: 0; +} + +.custom-control-label::before { + position: absolute; + top: 0.25rem; + left: -1.5rem; + display: block; + width: 1rem; + height: 1rem; + pointer-events: none; + content: ""; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-color: #dee2e6; +} + +.custom-control-label::after { + position: absolute; + top: 0.25rem; + left: -1.5rem; + display: block; + width: 1rem; + height: 1rem; + content: ""; + background-repeat: no-repeat; + background-position: center center; + background-size: 50% 50%; +} + +.custom-checkbox .custom-control-label::before { + border-radius: 0.25rem; +} + +.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before { + background-color: #007bff; +} + +.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E"); +} + +.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before { + background-color: #007bff; +} + +.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E"); +} + +.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before { + background-color: rgba(0, 123, 255, 0.5); +} + +.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before { + background-color: rgba(0, 123, 255, 0.5); +} + +.custom-radio .custom-control-label::before { + border-radius: 50%; +} + +.custom-radio .custom-control-input:checked ~ .custom-control-label::before { + background-color: #007bff; +} + +.custom-radio .custom-control-input:checked ~ .custom-control-label::after { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E"); +} + +.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before { + background-color: rgba(0, 123, 255, 0.5); +} + +.custom-select { + display: inline-block; + width: 100%; + height: calc(2.25rem + 2px); + padding: 0.375rem 1.75rem 0.375rem 0.75rem; + line-height: 1.5; + color: #495057; + vertical-align: middle; + background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right 0.75rem center; + background-size: 8px 10px; + border: 1px solid #ced4da; + border-radius: 0.25rem; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +.custom-select:focus { + border-color: #80bdff; + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(128, 189, 255, 0.5); +} + +.custom-select:focus::-ms-value { + color: #495057; + background-color: #fff; +} + +.custom-select[multiple], .custom-select[size]:not([size="1"]) { + height: auto; + padding-right: 0.75rem; + background-image: none; +} + +.custom-select:disabled { + color: #6c757d; + background-color: #e9ecef; +} + +.custom-select::-ms-expand { + opacity: 0; +} + +.custom-select-sm { + height: calc(1.8125rem + 2px); + padding-top: 0.375rem; + padding-bottom: 0.375rem; + font-size: 75%; +} + +.custom-select-lg { + height: calc(2.875rem + 2px); + padding-top: 0.375rem; + padding-bottom: 0.375rem; + font-size: 125%; +} + +.custom-file { + position: relative; + display: inline-block; + width: 100%; + height: calc(2.25rem + 2px); + margin-bottom: 0; +} + +.custom-file-input { + position: relative; + z-index: 2; + width: 100%; + height: calc(2.25rem + 2px); + margin: 0; + opacity: 0; +} + +.custom-file-input:focus ~ .custom-file-label { + border-color: #80bdff; + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.custom-file-input:focus ~ .custom-file-label::after { + border-color: #80bdff; +} + +.custom-file-input:disabled ~ .custom-file-label { + background-color: #e9ecef; +} + +.custom-file-input:lang(en) ~ .custom-file-label::after { + content: "Browse"; +} + +.custom-file-label { + position: absolute; + top: 0; + right: 0; + left: 0; + z-index: 1; + height: calc(2.25rem + 2px); + padding: 0.375rem 0.75rem; + line-height: 1.5; + color: #495057; + background-color: #fff; + border: 1px solid #ced4da; + border-radius: 0.25rem; +} + +.custom-file-label::after { + position: absolute; + top: 0; + right: 0; + bottom: 0; + z-index: 3; + display: block; + height: 2.25rem; + padding: 0.375rem 0.75rem; + line-height: 1.5; + color: #495057; + content: "Browse"; + background-color: #e9ecef; + border-left: 1px solid #ced4da; + border-radius: 0 0.25rem 0.25rem 0; +} + +.custom-range { + width: 100%; + padding-left: 0; + background-color: transparent; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +.custom-range:focus { + outline: none; +} + +.custom-range:focus::-webkit-slider-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.custom-range:focus::-moz-range-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.custom-range:focus::-ms-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.custom-range::-moz-focus-outer { + border: 0; +} + +.custom-range::-webkit-slider-thumb { + width: 1rem; + height: 1rem; + margin-top: -0.25rem; + background-color: #007bff; + border: 0; + border-radius: 1rem; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -webkit-appearance: none; + appearance: none; +} + +@media screen and (prefers-reduced-motion: reduce) { + .custom-range::-webkit-slider-thumb { + transition: none; + } +} + +.custom-range::-webkit-slider-thumb:active { + background-color: #b3d7ff; +} + +.custom-range::-webkit-slider-runnable-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} + +.custom-range::-moz-range-thumb { + width: 1rem; + height: 1rem; + background-color: #007bff; + border: 0; + border-radius: 1rem; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -moz-appearance: none; + appearance: none; +} + +@media screen and (prefers-reduced-motion: reduce) { + .custom-range::-moz-range-thumb { + transition: none; + } +} + +.custom-range::-moz-range-thumb:active { + background-color: #b3d7ff; +} + +.custom-range::-moz-range-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} + +.custom-range::-ms-thumb { + width: 1rem; + height: 1rem; + margin-top: 0; + margin-right: 0.2rem; + margin-left: 0.2rem; + background-color: #007bff; + border: 0; + border-radius: 1rem; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + appearance: none; +} + +@media screen and (prefers-reduced-motion: reduce) { + .custom-range::-ms-thumb { + transition: none; + } +} + +.custom-range::-ms-thumb:active { + background-color: #b3d7ff; +} + +.custom-range::-ms-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: transparent; + border-color: transparent; + border-width: 0.5rem; +} + +.custom-range::-ms-fill-lower { + background-color: #dee2e6; + border-radius: 1rem; +} + +.custom-range::-ms-fill-upper { + margin-right: 15px; + background-color: #dee2e6; + border-radius: 1rem; +} + +.custom-control-label::before, +.custom-file-label, +.custom-select { + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media screen and (prefers-reduced-motion: reduce) { + .custom-control-label::before, + .custom-file-label, + .custom-select { + transition: none; + } +} + +.nav { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.nav-link { + display: block; + padding: 0.5rem 1rem; +} + +.nav-link:hover, .nav-link:focus { + text-decoration: none; +} + +.nav-link.disabled { + color: #6c757d; +} + +.nav-tabs { + border-bottom: 1px solid #dee2e6; +} + +.nav-tabs .nav-item { + margin-bottom: -1px; +} + +.nav-tabs .nav-link { + border: 1px solid transparent; + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} + +.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus { + border-color: #e9ecef #e9ecef #dee2e6; +} + +.nav-tabs .nav-link.disabled { + color: #6c757d; + background-color: transparent; + border-color: transparent; +} + +.nav-tabs .nav-link.active, +.nav-tabs .nav-item.show .nav-link { + color: #495057; + background-color: #fff; + border-color: #dee2e6 #dee2e6 #fff; +} + +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav-pills .nav-link { + border-radius: 0.25rem; +} + +.nav-pills .nav-link.active, +.nav-pills .show > .nav-link { + color: #fff; + background-color: #007bff; +} + +.nav-fill .nav-item { + -ms-flex: 1 1 auto; + flex: 1 1 auto; + text-align: center; +} + +.nav-justified .nav-item { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + text-align: center; +} + +.tab-content > .tab-pane { + display: none; +} + +.tab-content > .active { + display: block; +} + +.navbar { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: justify; + justify-content: space-between; + padding: 0.5rem 1rem; +} + +.navbar > .container, +.navbar > .container-fluid { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: justify; + justify-content: space-between; +} + +.navbar-brand { + display: inline-block; + padding-top: 0.3125rem; + padding-bottom: 0.3125rem; + margin-right: 1rem; + font-size: 1.25rem; + line-height: inherit; + white-space: nowrap; +} + +.navbar-brand:hover, .navbar-brand:focus { + text-decoration: none; +} + +.navbar-nav { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.navbar-nav .nav-link { + padding-right: 0; + padding-left: 0; +} + +.navbar-nav .dropdown-menu { + position: static; + float: none; +} + +.navbar-text { + display: inline-block; + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} + +.navbar-collapse { + -ms-flex-preferred-size: 100%; + flex-basis: 100%; + -ms-flex-positive: 1; + flex-grow: 1; + -ms-flex-align: center; + align-items: center; +} + +.navbar-toggler { + padding: 0.25rem 0.75rem; + font-size: 1.25rem; + line-height: 1; + background-color: transparent; + border: 1px solid transparent; + border-radius: 0.25rem; +} + +.navbar-toggler:hover, .navbar-toggler:focus { + text-decoration: none; +} + +.navbar-toggler:not(:disabled):not(.disabled) { + cursor: pointer; +} + +.navbar-toggler-icon { + display: inline-block; + width: 1.5em; + height: 1.5em; + vertical-align: middle; + content: ""; + background: no-repeat center center; + background-size: 100% 100%; +} + +@media (max-width: 575.98px) { + .navbar-expand-sm > .container, + .navbar-expand-sm > .container-fluid { + padding-right: 0; + padding-left: 0; + } +} + +@media (min-width: 576px) { + .navbar-expand-sm { + -ms-flex-flow: row nowrap; + flex-flow: row nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-sm .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-sm .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-sm .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-sm > .container, + .navbar-expand-sm > .container-fluid { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + } + .navbar-expand-sm .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-sm .navbar-toggler { + display: none; + } +} + +@media (max-width: 767.98px) { + .navbar-expand-md > .container, + .navbar-expand-md > .container-fluid { + padding-right: 0; + padding-left: 0; + } +} + +@media (min-width: 768px) { + .navbar-expand-md { + -ms-flex-flow: row nowrap; + flex-flow: row nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-md .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-md .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-md .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-md > .container, + .navbar-expand-md > .container-fluid { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + } + .navbar-expand-md .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-md .navbar-toggler { + display: none; + } +} + +@media (max-width: 991.98px) { + .navbar-expand-lg > .container, + .navbar-expand-lg > .container-fluid { + padding-right: 0; + padding-left: 0; + } +} + +@media (min-width: 992px) { + .navbar-expand-lg { + -ms-flex-flow: row nowrap; + flex-flow: row nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-lg .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-lg .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-lg .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-lg > .container, + .navbar-expand-lg > .container-fluid { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + } + .navbar-expand-lg .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-lg .navbar-toggler { + display: none; + } +} + +@media (max-width: 1199.98px) { + .navbar-expand-xl > .container, + .navbar-expand-xl > .container-fluid { + padding-right: 0; + padding-left: 0; + } +} + +@media (min-width: 1200px) { + .navbar-expand-xl { + -ms-flex-flow: row nowrap; + flex-flow: row nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-xl .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-xl .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-xl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-xl > .container, + .navbar-expand-xl > .container-fluid { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + } + .navbar-expand-xl .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-xl .navbar-toggler { + display: none; + } +} + +.navbar-expand { + -ms-flex-flow: row nowrap; + flex-flow: row nowrap; + -ms-flex-pack: start; + justify-content: flex-start; +} + +.navbar-expand > .container, +.navbar-expand > .container-fluid { + padding-right: 0; + padding-left: 0; +} + +.navbar-expand .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; +} + +.navbar-expand .navbar-nav .dropdown-menu { + position: absolute; +} + +.navbar-expand .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; +} + +.navbar-expand > .container, +.navbar-expand > .container-fluid { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; +} + +.navbar-expand .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; +} + +.navbar-expand .navbar-toggler { + display: none; +} + +.navbar-light .navbar-brand { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-nav .nav-link { + color: rgba(0, 0, 0, 0.5); +} + +.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus { + color: rgba(0, 0, 0, 0.7); +} + +.navbar-light .navbar-nav .nav-link.disabled { + color: rgba(0, 0, 0, 0.3); +} + +.navbar-light .navbar-nav .show > .nav-link, +.navbar-light .navbar-nav .active > .nav-link, +.navbar-light .navbar-nav .nav-link.show, +.navbar-light .navbar-nav .nav-link.active { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-toggler { + color: rgba(0, 0, 0, 0.5); + border-color: rgba(0, 0, 0, 0.1); +} + +.navbar-light .navbar-toggler-icon { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); +} + +.navbar-light .navbar-text { + color: rgba(0, 0, 0, 0.5); +} + +.navbar-light .navbar-text a { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-dark .navbar-brand { + color: #fff; +} + +.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus { + color: #fff; +} + +.navbar-dark .navbar-nav .nav-link { + color: rgba(255, 255, 255, 0.5); +} + +.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { + color: rgba(255, 255, 255, 0.75); +} + +.navbar-dark .navbar-nav .nav-link.disabled { + color: rgba(255, 255, 255, 0.25); +} + +.navbar-dark .navbar-nav .show > .nav-link, +.navbar-dark .navbar-nav .active > .nav-link, +.navbar-dark .navbar-nav .nav-link.show, +.navbar-dark .navbar-nav .nav-link.active { + color: #fff; +} + +.navbar-dark .navbar-toggler { + color: rgba(255, 255, 255, 0.5); + border-color: rgba(255, 255, 255, 0.1); +} + +.navbar-dark .navbar-toggler-icon { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); +} + +.navbar-dark .navbar-text { + color: rgba(255, 255, 255, 0.5); +} + +.navbar-dark .navbar-text a { + color: #fff; +} + +.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus { + color: #fff; +} + +.card { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + min-width: 0; + word-wrap: break-word; + background-color: #fff; + background-clip: border-box; + border: 1px solid rgba(0, 0, 0, 0.125); + border-radius: 0.25rem; +} + +.card > hr { + margin-right: 0; + margin-left: 0; +} + +.card > .list-group:first-child .list-group-item:first-child { + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} + +.card > .list-group:last-child .list-group-item:last-child { + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.card-body { + -ms-flex: 1 1 auto; + flex: 1 1 auto; + padding: 1.25rem; +} + +.card-title { + margin-bottom: 0.75rem; +} + +.card-subtitle { + margin-top: -0.375rem; + margin-bottom: 0; +} + +.card-text:last-child { + margin-bottom: 0; +} + +.card-link:hover { + text-decoration: none; +} + +.card-link + .card-link { + margin-left: 1.25rem; +} + +.card-header { + padding: 0.75rem 1.25rem; + margin-bottom: 0; + background-color: rgba(0, 0, 0, 0.03); + border-bottom: 1px solid rgba(0, 0, 0, 0.125); +} + +.card-header:first-child { + border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; +} + +.card-header + .list-group .list-group-item:first-child { + border-top: 0; +} + +.card-footer { + padding: 0.75rem 1.25rem; + background-color: rgba(0, 0, 0, 0.03); + border-top: 1px solid rgba(0, 0, 0, 0.125); +} + +.card-footer:last-child { + border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); +} + +.card-header-tabs { + margin-right: -0.625rem; + margin-bottom: -0.75rem; + margin-left: -0.625rem; + border-bottom: 0; +} + +.card-header-pills { + margin-right: -0.625rem; + margin-left: -0.625rem; +} + +.card-img-overlay { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + padding: 1.25rem; +} + +.card-img { + width: 100%; + border-radius: calc(0.25rem - 1px); +} + +.card-img-top { + width: 100%; + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.card-img-bottom { + width: 100%; + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.card-deck { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; +} + +.card-deck .card { + margin-bottom: 15px; +} + +@media (min-width: 576px) { + .card-deck { + -ms-flex-flow: row wrap; + flex-flow: row wrap; + margin-right: -15px; + margin-left: -15px; + } + .card-deck .card { + display: -ms-flexbox; + display: flex; + -ms-flex: 1 0 0%; + flex: 1 0 0%; + -ms-flex-direction: column; + flex-direction: column; + margin-right: 15px; + margin-bottom: 0; + margin-left: 15px; + } +} + +.card-group { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; +} + +.card-group > .card { + margin-bottom: 15px; +} + +@media (min-width: 576px) { + .card-group { + -ms-flex-flow: row wrap; + flex-flow: row wrap; + } + .card-group > .card { + -ms-flex: 1 0 0%; + flex: 1 0 0%; + margin-bottom: 0; + } + .card-group > .card + .card { + margin-left: 0; + border-left: 0; + } + .card-group > .card:first-child { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + .card-group > .card:first-child .card-img-top, + .card-group > .card:first-child .card-header { + border-top-right-radius: 0; + } + .card-group > .card:first-child .card-img-bottom, + .card-group > .card:first-child .card-footer { + border-bottom-right-radius: 0; + } + .card-group > .card:last-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + .card-group > .card:last-child .card-img-top, + .card-group > .card:last-child .card-header { + border-top-left-radius: 0; + } + .card-group > .card:last-child .card-img-bottom, + .card-group > .card:last-child .card-footer { + border-bottom-left-radius: 0; + } + .card-group > .card:only-child { + border-radius: 0.25rem; + } + .card-group > .card:only-child .card-img-top, + .card-group > .card:only-child .card-header { + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; + } + .card-group > .card:only-child .card-img-bottom, + .card-group > .card:only-child .card-footer { + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; + } + .card-group > .card:not(:first-child):not(:last-child):not(:only-child) { + border-radius: 0; + } + .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-top, + .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom, + .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-header, + .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-footer { + border-radius: 0; + } +} + +.card-columns .card { + margin-bottom: 0.75rem; +} + +@media (min-width: 576px) { + .card-columns { + -webkit-column-count: 3; + -moz-column-count: 3; + column-count: 3; + -webkit-column-gap: 1.25rem; + -moz-column-gap: 1.25rem; + column-gap: 1.25rem; + orphans: 1; + widows: 1; + } + .card-columns .card { + display: inline-block; + width: 100%; + } +} + +.accordion .card:not(:first-of-type):not(:last-of-type) { + border-bottom: 0; + border-radius: 0; +} + +.accordion .card:not(:first-of-type) .card-header:first-child { + border-radius: 0; +} + +.accordion .card:first-of-type { + border-bottom: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.accordion .card:last-of-type { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.breadcrumb { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + padding: 0.75rem 1rem; + margin-bottom: 1rem; + list-style: none; + background-color: #e9ecef; + border-radius: 0.25rem; +} + +.breadcrumb-item + .breadcrumb-item { + padding-left: 0.5rem; +} + +.breadcrumb-item + .breadcrumb-item::before { + display: inline-block; + padding-right: 0.5rem; + color: #6c757d; + content: "/"; +} + +.breadcrumb-item + .breadcrumb-item:hover::before { + text-decoration: underline; +} + +.breadcrumb-item + .breadcrumb-item:hover::before { + text-decoration: none; +} + +.breadcrumb-item.active { + color: #6c757d; +} + +.pagination { + display: -ms-flexbox; + display: flex; + padding-left: 0; + list-style: none; + border-radius: 0.25rem; +} + +.page-link { + position: relative; + display: block; + padding: 0.5rem 0.75rem; + margin-left: -1px; + line-height: 1.25; + color: #007bff; + background-color: #fff; + border: 1px solid #dee2e6; +} + +.page-link:hover { + z-index: 2; + color: #0056b3; + text-decoration: none; + background-color: #e9ecef; + border-color: #dee2e6; +} + +.page-link:focus { + z-index: 2; + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.page-link:not(:disabled):not(.disabled) { + cursor: pointer; +} + +.page-item:first-child .page-link { + margin-left: 0; + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.page-item:last-child .page-link { + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; +} + +.page-item.active .page-link { + z-index: 1; + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.page-item.disabled .page-link { + color: #6c757d; + pointer-events: none; + cursor: auto; + background-color: #fff; + border-color: #dee2e6; +} + +.pagination-lg .page-link { + padding: 0.75rem 1.5rem; + font-size: 1.25rem; + line-height: 1.5; +} + +.pagination-lg .page-item:first-child .page-link { + border-top-left-radius: 0.3rem; + border-bottom-left-radius: 0.3rem; +} + +.pagination-lg .page-item:last-child .page-link { + border-top-right-radius: 0.3rem; + border-bottom-right-radius: 0.3rem; +} + +.pagination-sm .page-link { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + line-height: 1.5; +} + +.pagination-sm .page-item:first-child .page-link { + border-top-left-radius: 0.2rem; + border-bottom-left-radius: 0.2rem; +} + +.pagination-sm .page-item:last-child .page-link { + border-top-right-radius: 0.2rem; + border-bottom-right-radius: 0.2rem; +} + +.badge { + display: inline-block; + padding: 0.25em 0.4em; + font-size: 75%; + font-weight: 700; + line-height: 1; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: 0.25rem; +} + +.badge:empty { + display: none; +} + +.btn .badge { + position: relative; + top: -1px; +} + +.badge-pill { + padding-right: 0.6em; + padding-left: 0.6em; + border-radius: 10rem; +} + +.badge-primary { + color: #fff; + background-color: #007bff; +} + +.badge-primary[href]:hover, .badge-primary[href]:focus { + color: #fff; + text-decoration: none; + background-color: #0062cc; +} + +.badge-secondary { + color: #fff; + background-color: #6c757d; +} + +.badge-secondary[href]:hover, .badge-secondary[href]:focus { + color: #fff; + text-decoration: none; + background-color: #545b62; +} + +.badge-success { + color: #fff; + background-color: #28a745; +} + +.badge-success[href]:hover, .badge-success[href]:focus { + color: #fff; + text-decoration: none; + background-color: #1e7e34; +} + +.badge-info { + color: #fff; + background-color: #17a2b8; +} + +.badge-info[href]:hover, .badge-info[href]:focus { + color: #fff; + text-decoration: none; + background-color: #117a8b; +} + +.badge-warning { + color: #212529; + background-color: #ffc107; +} + +.badge-warning[href]:hover, .badge-warning[href]:focus { + color: #212529; + text-decoration: none; + background-color: #d39e00; +} + +.badge-danger { + color: #fff; + background-color: #dc3545; +} + +.badge-danger[href]:hover, .badge-danger[href]:focus { + color: #fff; + text-decoration: none; + background-color: #bd2130; +} + +.badge-light { + color: #212529; + background-color: #f8f9fa; +} + +.badge-light[href]:hover, .badge-light[href]:focus { + color: #212529; + text-decoration: none; + background-color: #dae0e5; +} + +.badge-dark { + color: #fff; + background-color: #343a40; +} + +.badge-dark[href]:hover, .badge-dark[href]:focus { + color: #fff; + text-decoration: none; + background-color: #1d2124; +} + +.jumbotron { + padding: 2rem 1rem; + margin-bottom: 2rem; + background-color: #e9ecef; + border-radius: 0.3rem; +} + +@media (min-width: 576px) { + .jumbotron { + padding: 4rem 2rem; + } +} + +.jumbotron-fluid { + padding-right: 0; + padding-left: 0; + border-radius: 0; +} + +.alert { + position: relative; + padding: 0.75rem 1.25rem; + margin-bottom: 1rem; + border: 1px solid transparent; + border-radius: 0.25rem; +} + +.alert-heading { + color: inherit; +} + +.alert-link { + font-weight: 700; +} + +.alert-dismissible { + padding-right: 4rem; +} + +.alert-dismissible .close { + position: absolute; + top: 0; + right: 0; + padding: 0.75rem 1.25rem; + color: inherit; +} + +.alert-primary { + color: #004085; + background-color: #cce5ff; + border-color: #b8daff; +} + +.alert-primary hr { + border-top-color: #9fcdff; +} + +.alert-primary .alert-link { + color: #002752; +} + +.alert-secondary { + color: #383d41; + background-color: #e2e3e5; + border-color: #d6d8db; +} + +.alert-secondary hr { + border-top-color: #c8cbcf; +} + +.alert-secondary .alert-link { + color: #202326; +} + +.alert-success { + color: #155724; + background-color: #d4edda; + border-color: #c3e6cb; +} + +.alert-success hr { + border-top-color: #b1dfbb; +} + +.alert-success .alert-link { + color: #0b2e13; +} + +.alert-info { + color: #0c5460; + background-color: #d1ecf1; + border-color: #bee5eb; +} + +.alert-info hr { + border-top-color: #abdde5; +} + +.alert-info .alert-link { + color: #062c33; +} + +.alert-warning { + color: #856404; + background-color: #fff3cd; + border-color: #ffeeba; +} + +.alert-warning hr { + border-top-color: #ffe8a1; +} + +.alert-warning .alert-link { + color: #533f03; +} + +.alert-danger { + color: #721c24; + background-color: #f8d7da; + border-color: #f5c6cb; +} + +.alert-danger hr { + border-top-color: #f1b0b7; +} + +.alert-danger .alert-link { + color: #491217; +} + +.alert-light { + color: #818182; + background-color: #fefefe; + border-color: #fdfdfe; +} + +.alert-light hr { + border-top-color: #ececf6; +} + +.alert-light .alert-link { + color: #686868; +} + +.alert-dark { + color: #1b1e21; + background-color: #d6d8d9; + border-color: #c6c8ca; +} + +.alert-dark hr { + border-top-color: #b9bbbe; +} + +.alert-dark .alert-link { + color: #040505; +} + +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 1rem 0; + } + to { + background-position: 0 0; + } +} + +@keyframes progress-bar-stripes { + from { + background-position: 1rem 0; + } + to { + background-position: 0 0; + } +} + +.progress { + display: -ms-flexbox; + display: flex; + height: 1rem; + overflow: hidden; + font-size: 0.75rem; + background-color: #e9ecef; + border-radius: 0.25rem; +} + +.progress-bar { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-pack: center; + justify-content: center; + color: #fff; + text-align: center; + white-space: nowrap; + background-color: #007bff; + transition: width 0.6s ease; +} + +@media screen and (prefers-reduced-motion: reduce) { + .progress-bar { + transition: none; + } +} + +.progress-bar-striped { + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 1rem 1rem; +} + +.progress-bar-animated { + -webkit-animation: progress-bar-stripes 1s linear infinite; + animation: progress-bar-stripes 1s linear infinite; +} + +.media { + display: -ms-flexbox; + display: flex; + -ms-flex-align: start; + align-items: flex-start; +} + +.media-body { + -ms-flex: 1; + flex: 1; +} + +.list-group { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; +} + +.list-group-item-action { + width: 100%; + color: #495057; + text-align: inherit; +} + +.list-group-item-action:hover, .list-group-item-action:focus { + color: #495057; + text-decoration: none; + background-color: #f8f9fa; +} + +.list-group-item-action:active { + color: #212529; + background-color: #e9ecef; +} + +.list-group-item { + position: relative; + display: block; + padding: 0.75rem 1.25rem; + margin-bottom: -1px; + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); +} + +.list-group-item:first-child { + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} + +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.list-group-item:hover, .list-group-item:focus { + z-index: 1; + text-decoration: none; +} + +.list-group-item.disabled, .list-group-item:disabled { + color: #6c757d; + background-color: #fff; +} + +.list-group-item.active { + z-index: 2; + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.list-group-flush .list-group-item { + border-right: 0; + border-left: 0; + border-radius: 0; +} + +.list-group-flush:first-child .list-group-item:first-child { + border-top: 0; +} + +.list-group-flush:last-child .list-group-item:last-child { + border-bottom: 0; +} + +.list-group-item-primary { + color: #004085; + background-color: #b8daff; +} + +.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus { + color: #004085; + background-color: #9fcdff; +} + +.list-group-item-primary.list-group-item-action.active { + color: #fff; + background-color: #004085; + border-color: #004085; +} + +.list-group-item-secondary { + color: #383d41; + background-color: #d6d8db; +} + +.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus { + color: #383d41; + background-color: #c8cbcf; +} + +.list-group-item-secondary.list-group-item-action.active { + color: #fff; + background-color: #383d41; + border-color: #383d41; +} + +.list-group-item-success { + color: #155724; + background-color: #c3e6cb; +} + +.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus { + color: #155724; + background-color: #b1dfbb; +} + +.list-group-item-success.list-group-item-action.active { + color: #fff; + background-color: #155724; + border-color: #155724; +} + +.list-group-item-info { + color: #0c5460; + background-color: #bee5eb; +} + +.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus { + color: #0c5460; + background-color: #abdde5; +} + +.list-group-item-info.list-group-item-action.active { + color: #fff; + background-color: #0c5460; + border-color: #0c5460; +} + +.list-group-item-warning { + color: #856404; + background-color: #ffeeba; +} + +.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus { + color: #856404; + background-color: #ffe8a1; +} + +.list-group-item-warning.list-group-item-action.active { + color: #fff; + background-color: #856404; + border-color: #856404; +} + +.list-group-item-danger { + color: #721c24; + background-color: #f5c6cb; +} + +.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus { + color: #721c24; + background-color: #f1b0b7; +} + +.list-group-item-danger.list-group-item-action.active { + color: #fff; + background-color: #721c24; + border-color: #721c24; +} + +.list-group-item-light { + color: #818182; + background-color: #fdfdfe; +} + +.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus { + color: #818182; + background-color: #ececf6; +} + +.list-group-item-light.list-group-item-action.active { + color: #fff; + background-color: #818182; + border-color: #818182; +} + +.list-group-item-dark { + color: #1b1e21; + background-color: #c6c8ca; +} + +.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus { + color: #1b1e21; + background-color: #b9bbbe; +} + +.list-group-item-dark.list-group-item-action.active { + color: #fff; + background-color: #1b1e21; + border-color: #1b1e21; +} + +.close { + float: right; + font-size: 1.5rem; + font-weight: 700; + line-height: 1; + color: #000; + text-shadow: 0 1px 0 #fff; + opacity: .5; +} + +.close:not(:disabled):not(.disabled) { + cursor: pointer; +} + +.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus { + color: #000; + text-decoration: none; + opacity: .75; +} + +button.close { + padding: 0; + background-color: transparent; + border: 0; + -webkit-appearance: none; +} + +.modal-open { + overflow: hidden; +} + +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} + +.modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + display: none; + overflow: hidden; + outline: 0; +} + +.modal-dialog { + position: relative; + width: auto; + margin: 0.5rem; + pointer-events: none; +} + +.modal.fade .modal-dialog { + transition: -webkit-transform 0.3s ease-out; + transition: transform 0.3s ease-out; + transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out; + -webkit-transform: translate(0, -25%); + transform: translate(0, -25%); +} + +@media screen and (prefers-reduced-motion: reduce) { + .modal.fade .modal-dialog { + transition: none; + } +} + +.modal.show .modal-dialog { + -webkit-transform: translate(0, 0); + transform: translate(0, 0); +} + +.modal-dialog-centered { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + min-height: calc(100% - (0.5rem * 2)); +} + +.modal-dialog-centered::before { + display: block; + height: calc(100vh - (0.5rem * 2)); + content: ""; +} + +.modal-content { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + width: 100%; + pointer-events: auto; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; + outline: 0; +} + +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000; +} + +.modal-backdrop.fade { + opacity: 0; +} + +.modal-backdrop.show { + opacity: 0.5; +} + +.modal-header { + display: -ms-flexbox; + display: flex; + -ms-flex-align: start; + align-items: flex-start; + -ms-flex-pack: justify; + justify-content: space-between; + padding: 1rem; + border-bottom: 1px solid #e9ecef; + border-top-left-radius: 0.3rem; + border-top-right-radius: 0.3rem; +} + +.modal-header .close { + padding: 1rem; + margin: -1rem -1rem -1rem auto; +} + +.modal-title { + margin-bottom: 0; + line-height: 1.5; +} + +.modal-body { + position: relative; + -ms-flex: 1 1 auto; + flex: 1 1 auto; + padding: 1rem; +} + +.modal-footer { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: end; + justify-content: flex-end; + padding: 1rem; + border-top: 1px solid #e9ecef; +} + +.modal-footer > :not(:first-child) { + margin-left: .25rem; +} + +.modal-footer > :not(:last-child) { + margin-right: .25rem; +} + +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} + +@media (min-width: 576px) { + .modal-dialog { + max-width: 500px; + margin: 1.75rem auto; + } + .modal-dialog-centered { + min-height: calc(100% - (1.75rem * 2)); + } + .modal-dialog-centered::before { + height: calc(100vh - (1.75rem * 2)); + } + .modal-sm { + max-width: 300px; + } +} + +@media (min-width: 992px) { + .modal-lg { + max-width: 800px; + } +} + +.tooltip { + position: absolute; + z-index: 1070; + display: block; + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + opacity: 0; +} + +.tooltip.show { + opacity: 0.9; +} + +.tooltip .arrow { + position: absolute; + display: block; + width: 0.8rem; + height: 0.4rem; +} + +.tooltip .arrow::before { + position: absolute; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] { + padding: 0.4rem 0; +} + +.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow { + bottom: 0; +} + +.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before { + top: 0; + border-width: 0.4rem 0.4rem 0; + border-top-color: #000; +} + +.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] { + padding: 0 0.4rem; +} + +.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow { + left: 0; + width: 0.4rem; + height: 0.8rem; +} + +.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before { + right: 0; + border-width: 0.4rem 0.4rem 0.4rem 0; + border-right-color: #000; +} + +.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] { + padding: 0.4rem 0; +} + +.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow { + top: 0; +} + +.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before { + bottom: 0; + border-width: 0 0.4rem 0.4rem; + border-bottom-color: #000; +} + +.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] { + padding: 0 0.4rem; +} + +.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow { + right: 0; + width: 0.4rem; + height: 0.8rem; +} + +.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before { + left: 0; + border-width: 0.4rem 0 0.4rem 0.4rem; + border-left-color: #000; +} + +.tooltip-inner { + max-width: 200px; + padding: 0.25rem 0.5rem; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 0.25rem; +} + +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: block; + max-width: 276px; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; +} + +.popover .arrow { + position: absolute; + display: block; + width: 1rem; + height: 0.5rem; + margin: 0 0.3rem; +} + +.popover .arrow::before, .popover .arrow::after { + position: absolute; + display: block; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-popover-top, .bs-popover-auto[x-placement^="top"] { + margin-bottom: 0.5rem; +} + +.bs-popover-top .arrow, .bs-popover-auto[x-placement^="top"] .arrow { + bottom: calc((0.5rem + 1px) * -1); +} + +.bs-popover-top .arrow::before, .bs-popover-auto[x-placement^="top"] .arrow::before, +.bs-popover-top .arrow::after, +.bs-popover-auto[x-placement^="top"] .arrow::after { + border-width: 0.5rem 0.5rem 0; +} + +.bs-popover-top .arrow::before, .bs-popover-auto[x-placement^="top"] .arrow::before { + bottom: 0; + border-top-color: rgba(0, 0, 0, 0.25); +} + + +.bs-popover-top .arrow::after, +.bs-popover-auto[x-placement^="top"] .arrow::after { + bottom: 1px; + border-top-color: #fff; +} + +.bs-popover-right, .bs-popover-auto[x-placement^="right"] { + margin-left: 0.5rem; +} + +.bs-popover-right .arrow, .bs-popover-auto[x-placement^="right"] .arrow { + left: calc((0.5rem + 1px) * -1); + width: 0.5rem; + height: 1rem; + margin: 0.3rem 0; +} + +.bs-popover-right .arrow::before, .bs-popover-auto[x-placement^="right"] .arrow::before, +.bs-popover-right .arrow::after, +.bs-popover-auto[x-placement^="right"] .arrow::after { + border-width: 0.5rem 0.5rem 0.5rem 0; +} + +.bs-popover-right .arrow::before, .bs-popover-auto[x-placement^="right"] .arrow::before { + left: 0; + border-right-color: rgba(0, 0, 0, 0.25); +} + + +.bs-popover-right .arrow::after, +.bs-popover-auto[x-placement^="right"] .arrow::after { + left: 1px; + border-right-color: #fff; +} + +.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] { + margin-top: 0.5rem; +} + +.bs-popover-bottom .arrow, .bs-popover-auto[x-placement^="bottom"] .arrow { + top: calc((0.5rem + 1px) * -1); +} + +.bs-popover-bottom .arrow::before, .bs-popover-auto[x-placement^="bottom"] .arrow::before, +.bs-popover-bottom .arrow::after, +.bs-popover-auto[x-placement^="bottom"] .arrow::after { + border-width: 0 0.5rem 0.5rem 0.5rem; +} + +.bs-popover-bottom .arrow::before, .bs-popover-auto[x-placement^="bottom"] .arrow::before { + top: 0; + border-bottom-color: rgba(0, 0, 0, 0.25); +} + + +.bs-popover-bottom .arrow::after, +.bs-popover-auto[x-placement^="bottom"] .arrow::after { + top: 1px; + border-bottom-color: #fff; +} + +.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before { + position: absolute; + top: 0; + left: 50%; + display: block; + width: 1rem; + margin-left: -0.5rem; + content: ""; + border-bottom: 1px solid #f7f7f7; +} + +.bs-popover-left, .bs-popover-auto[x-placement^="left"] { + margin-right: 0.5rem; +} + +.bs-popover-left .arrow, .bs-popover-auto[x-placement^="left"] .arrow { + right: calc((0.5rem + 1px) * -1); + width: 0.5rem; + height: 1rem; + margin: 0.3rem 0; +} + +.bs-popover-left .arrow::before, .bs-popover-auto[x-placement^="left"] .arrow::before, +.bs-popover-left .arrow::after, +.bs-popover-auto[x-placement^="left"] .arrow::after { + border-width: 0.5rem 0 0.5rem 0.5rem; +} + +.bs-popover-left .arrow::before, .bs-popover-auto[x-placement^="left"] .arrow::before { + right: 0; + border-left-color: rgba(0, 0, 0, 0.25); +} + + +.bs-popover-left .arrow::after, +.bs-popover-auto[x-placement^="left"] .arrow::after { + right: 1px; + border-left-color: #fff; +} + +.popover-header { + padding: 0.5rem 0.75rem; + margin-bottom: 0; + font-size: 1rem; + color: inherit; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} + +.popover-header:empty { + display: none; +} + +.popover-body { + padding: 0.5rem 0.75rem; + color: #212529; +} + +.carousel { + position: relative; +} + +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} + +.carousel-item { + position: relative; + display: none; + -ms-flex-align: center; + align-items: center; + width: 100%; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + perspective: 1000px; +} + +.carousel-item.active, +.carousel-item-next, +.carousel-item-prev { + display: block; + transition: -webkit-transform 0.6s ease; + transition: transform 0.6s ease; + transition: transform 0.6s ease, -webkit-transform 0.6s ease; +} + +@media screen and (prefers-reduced-motion: reduce) { + .carousel-item.active, + .carousel-item-next, + .carousel-item-prev { + transition: none; + } +} + +.carousel-item-next, +.carousel-item-prev { + position: absolute; + top: 0; +} + +.carousel-item-next.carousel-item-left, +.carousel-item-prev.carousel-item-right { + -webkit-transform: translateX(0); + transform: translateX(0); +} + +@supports ((-webkit-transform-style: preserve-3d) or (transform-style: preserve-3d)) { + .carousel-item-next.carousel-item-left, + .carousel-item-prev.carousel-item-right { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.carousel-item-next, +.active.carousel-item-right { + -webkit-transform: translateX(100%); + transform: translateX(100%); +} + +@supports ((-webkit-transform-style: preserve-3d) or (transform-style: preserve-3d)) { + .carousel-item-next, + .active.carousel-item-right { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } +} + +.carousel-item-prev, +.active.carousel-item-left { + -webkit-transform: translateX(-100%); + transform: translateX(-100%); +} + +@supports ((-webkit-transform-style: preserve-3d) or (transform-style: preserve-3d)) { + .carousel-item-prev, + .active.carousel-item-left { + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } +} + +.carousel-fade .carousel-item { + opacity: 0; + transition-duration: .6s; + transition-property: opacity; +} + +.carousel-fade .carousel-item.active, +.carousel-fade .carousel-item-next.carousel-item-left, +.carousel-fade .carousel-item-prev.carousel-item-right { + opacity: 1; +} + +.carousel-fade .active.carousel-item-left, +.carousel-fade .active.carousel-item-right { + opacity: 0; +} + +.carousel-fade .carousel-item-next, +.carousel-fade .carousel-item-prev, +.carousel-fade .carousel-item.active, +.carousel-fade .active.carousel-item-left, +.carousel-fade .active.carousel-item-prev { + -webkit-transform: translateX(0); + transform: translateX(0); +} + +@supports ((-webkit-transform-style: preserve-3d) or (transform-style: preserve-3d)) { + .carousel-fade .carousel-item-next, + .carousel-fade .carousel-item-prev, + .carousel-fade .carousel-item.active, + .carousel-fade .active.carousel-item-left, + .carousel-fade .active.carousel-item-prev { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.carousel-control-prev, +.carousel-control-next { + position: absolute; + top: 0; + bottom: 0; + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: center; + justify-content: center; + width: 15%; + color: #fff; + text-align: center; + opacity: 0.5; +} + +.carousel-control-prev:hover, .carousel-control-prev:focus, +.carousel-control-next:hover, +.carousel-control-next:focus { + color: #fff; + text-decoration: none; + outline: 0; + opacity: .9; +} + +.carousel-control-prev { + left: 0; +} + +.carousel-control-next { + right: 0; +} + +.carousel-control-prev-icon, +.carousel-control-next-icon { + display: inline-block; + width: 20px; + height: 20px; + background: transparent no-repeat center center; + background-size: 100% 100%; +} + +.carousel-control-prev-icon { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E"); +} + +.carousel-control-next-icon { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E"); +} + +.carousel-indicators { + position: absolute; + right: 0; + bottom: 10px; + left: 0; + z-index: 15; + display: -ms-flexbox; + display: flex; + -ms-flex-pack: center; + justify-content: center; + padding-left: 0; + margin-right: 15%; + margin-left: 15%; + list-style: none; +} + +.carousel-indicators li { + position: relative; + -ms-flex: 0 1 auto; + flex: 0 1 auto; + width: 30px; + height: 3px; + margin-right: 3px; + margin-left: 3px; + text-indent: -999px; + cursor: pointer; + background-color: rgba(255, 255, 255, 0.5); +} + +.carousel-indicators li::before { + position: absolute; + top: -10px; + left: 0; + display: inline-block; + width: 100%; + height: 10px; + content: ""; +} + +.carousel-indicators li::after { + position: absolute; + bottom: -10px; + left: 0; + display: inline-block; + width: 100%; + height: 10px; + content: ""; +} + +.carousel-indicators .active { + background-color: #fff; +} + +.carousel-caption { + position: absolute; + right: 15%; + bottom: 20px; + left: 15%; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #fff; + text-align: center; +} + +.align-baseline { + vertical-align: baseline !important; +} + +.align-top { + vertical-align: top !important; +} + +.align-middle { + vertical-align: middle !important; +} + +.align-bottom { + vertical-align: bottom !important; +} + +.align-text-bottom { + vertical-align: text-bottom !important; +} + +.align-text-top { + vertical-align: text-top !important; +} + +.bg-primary { + background-color: #007bff !important; +} + +a.bg-primary:hover, a.bg-primary:focus, +button.bg-primary:hover, +button.bg-primary:focus { + background-color: #0062cc !important; +} + +.bg-secondary { + background-color: #6c757d !important; +} + +a.bg-secondary:hover, a.bg-secondary:focus, +button.bg-secondary:hover, +button.bg-secondary:focus { + background-color: #545b62 !important; +} + +.bg-success { + background-color: #28a745 !important; +} + +a.bg-success:hover, a.bg-success:focus, +button.bg-success:hover, +button.bg-success:focus { + background-color: #1e7e34 !important; +} + +.bg-info { + background-color: #17a2b8 !important; +} + +a.bg-info:hover, a.bg-info:focus, +button.bg-info:hover, +button.bg-info:focus { + background-color: #117a8b !important; +} + +.bg-warning { + background-color: #ffc107 !important; +} + +a.bg-warning:hover, a.bg-warning:focus, +button.bg-warning:hover, +button.bg-warning:focus { + background-color: #d39e00 !important; +} + +.bg-danger { + background-color: #dc3545 !important; +} + +a.bg-danger:hover, a.bg-danger:focus, +button.bg-danger:hover, +button.bg-danger:focus { + background-color: #bd2130 !important; +} + +.bg-light { + background-color: #f8f9fa !important; +} + +a.bg-light:hover, a.bg-light:focus, +button.bg-light:hover, +button.bg-light:focus { + background-color: #dae0e5 !important; +} + +.bg-dark { + background-color: #343a40 !important; +} + +a.bg-dark:hover, a.bg-dark:focus, +button.bg-dark:hover, +button.bg-dark:focus { + background-color: #1d2124 !important; +} + +.bg-white { + background-color: #fff !important; +} + +.bg-transparent { + background-color: transparent !important; +} + +.border { + border: 1px solid #dee2e6 !important; +} + +.border-top { + border-top: 1px solid #dee2e6 !important; +} + +.border-right { + border-right: 1px solid #dee2e6 !important; +} + +.border-bottom { + border-bottom: 1px solid #dee2e6 !important; +} + +.border-left { + border-left: 1px solid #dee2e6 !important; +} + +.border-0 { + border: 0 !important; +} + +.border-top-0 { + border-top: 0 !important; +} + +.border-right-0 { + border-right: 0 !important; +} + +.border-bottom-0 { + border-bottom: 0 !important; +} + +.border-left-0 { + border-left: 0 !important; +} + +.border-primary { + border-color: #007bff !important; +} + +.border-secondary { + border-color: #6c757d !important; +} + +.border-success { + border-color: #28a745 !important; +} + +.border-info { + border-color: #17a2b8 !important; +} + +.border-warning { + border-color: #ffc107 !important; +} + +.border-danger { + border-color: #dc3545 !important; +} + +.border-light { + border-color: #f8f9fa !important; +} + +.border-dark { + border-color: #343a40 !important; +} + +.border-white { + border-color: #fff !important; +} + +.rounded { + border-radius: 0.25rem !important; +} + +.rounded-top { + border-top-left-radius: 0.25rem !important; + border-top-right-radius: 0.25rem !important; +} + +.rounded-right { + border-top-right-radius: 0.25rem !important; + border-bottom-right-radius: 0.25rem !important; +} + +.rounded-bottom { + border-bottom-right-radius: 0.25rem !important; + border-bottom-left-radius: 0.25rem !important; +} + +.rounded-left { + border-top-left-radius: 0.25rem !important; + border-bottom-left-radius: 0.25rem !important; +} + +.rounded-circle { + border-radius: 50% !important; +} + +.rounded-0 { + border-radius: 0 !important; +} + +.clearfix::after { + display: block; + clear: both; + content: ""; +} + +.d-none { + display: none !important; +} + +.d-inline { + display: inline !important; +} + +.d-inline-block { + display: inline-block !important; +} + +.d-block { + display: block !important; +} + +.d-table { + display: table !important; +} + +.d-table-row { + display: table-row !important; +} + +.d-table-cell { + display: table-cell !important; +} + +.d-flex { + display: -ms-flexbox !important; + display: flex !important; +} + +.d-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; +} + +@media (min-width: 576px) { + .d-sm-none { + display: none !important; + } + .d-sm-inline { + display: inline !important; + } + .d-sm-inline-block { + display: inline-block !important; + } + .d-sm-block { + display: block !important; + } + .d-sm-table { + display: table !important; + } + .d-sm-table-row { + display: table-row !important; + } + .d-sm-table-cell { + display: table-cell !important; + } + .d-sm-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-sm-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 768px) { + .d-md-none { + display: none !important; + } + .d-md-inline { + display: inline !important; + } + .d-md-inline-block { + display: inline-block !important; + } + .d-md-block { + display: block !important; + } + .d-md-table { + display: table !important; + } + .d-md-table-row { + display: table-row !important; + } + .d-md-table-cell { + display: table-cell !important; + } + .d-md-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-md-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 992px) { + .d-lg-none { + display: none !important; + } + .d-lg-inline { + display: inline !important; + } + .d-lg-inline-block { + display: inline-block !important; + } + .d-lg-block { + display: block !important; + } + .d-lg-table { + display: table !important; + } + .d-lg-table-row { + display: table-row !important; + } + .d-lg-table-cell { + display: table-cell !important; + } + .d-lg-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-lg-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 1200px) { + .d-xl-none { + display: none !important; + } + .d-xl-inline { + display: inline !important; + } + .d-xl-inline-block { + display: inline-block !important; + } + .d-xl-block { + display: block !important; + } + .d-xl-table { + display: table !important; + } + .d-xl-table-row { + display: table-row !important; + } + .d-xl-table-cell { + display: table-cell !important; + } + .d-xl-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-xl-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media print { + .d-print-none { + display: none !important; + } + .d-print-inline { + display: inline !important; + } + .d-print-inline-block { + display: inline-block !important; + } + .d-print-block { + display: block !important; + } + .d-print-table { + display: table !important; + } + .d-print-table-row { + display: table-row !important; + } + .d-print-table-cell { + display: table-cell !important; + } + .d-print-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-print-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +.embed-responsive { + position: relative; + display: block; + width: 100%; + padding: 0; + overflow: hidden; +} + +.embed-responsive::before { + display: block; + content: ""; +} + +.embed-responsive .embed-responsive-item, +.embed-responsive iframe, +.embed-responsive embed, +.embed-responsive object, +.embed-responsive video { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + border: 0; +} + +.embed-responsive-21by9::before { + padding-top: 42.857143%; +} + +.embed-responsive-16by9::before { + padding-top: 56.25%; +} + +.embed-responsive-4by3::before { + padding-top: 75%; +} + +.embed-responsive-1by1::before { + padding-top: 100%; +} + +.flex-row { + -ms-flex-direction: row !important; + flex-direction: row !important; +} + +.flex-column { + -ms-flex-direction: column !important; + flex-direction: column !important; +} + +.flex-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; +} + +.flex-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; +} + +.flex-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; +} + +.flex-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; +} + +.flex-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; +} + +.flex-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; +} + +.flex-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; +} + +.flex-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; +} + +.flex-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; +} + +.flex-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; +} + +.justify-content-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; +} + +.justify-content-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; +} + +.justify-content-center { + -ms-flex-pack: center !important; + justify-content: center !important; +} + +.justify-content-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; +} + +.justify-content-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; +} + +.align-items-start { + -ms-flex-align: start !important; + align-items: flex-start !important; +} + +.align-items-end { + -ms-flex-align: end !important; + align-items: flex-end !important; +} + +.align-items-center { + -ms-flex-align: center !important; + align-items: center !important; +} + +.align-items-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; +} + +.align-items-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; +} + +.align-content-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; +} + +.align-content-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; +} + +.align-content-center { + -ms-flex-line-pack: center !important; + align-content: center !important; +} + +.align-content-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; +} + +.align-content-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; +} + +.align-content-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; +} + +.align-self-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; +} + +.align-self-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; +} + +.align-self-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; +} + +.align-self-center { + -ms-flex-item-align: center !important; + align-self: center !important; +} + +.align-self-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; +} + +.align-self-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; +} + +@media (min-width: 576px) { + .flex-sm-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-sm-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-sm-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-sm-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-sm-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-sm-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-sm-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-sm-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-sm-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-sm-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-sm-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-sm-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-sm-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-sm-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-sm-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-sm-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-sm-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-sm-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-sm-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-sm-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-sm-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-sm-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-sm-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-sm-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-sm-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-sm-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-sm-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-sm-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-sm-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-sm-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-sm-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-sm-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-sm-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-sm-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 768px) { + .flex-md-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-md-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-md-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-md-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-md-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-md-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-md-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-md-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-md-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-md-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-md-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-md-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-md-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-md-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-md-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-md-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-md-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-md-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-md-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-md-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-md-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-md-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-md-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-md-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-md-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-md-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-md-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-md-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-md-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-md-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-md-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-md-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-md-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-md-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 992px) { + .flex-lg-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-lg-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-lg-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-lg-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-lg-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-lg-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-lg-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-lg-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-lg-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-lg-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-lg-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-lg-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-lg-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-lg-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-lg-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-lg-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-lg-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-lg-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-lg-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-lg-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-lg-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-lg-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-lg-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-lg-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-lg-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-lg-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-lg-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-lg-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-lg-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-lg-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-lg-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-lg-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-lg-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-lg-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 1200px) { + .flex-xl-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-xl-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-xl-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-xl-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-xl-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-xl-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-xl-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-xl-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-xl-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-xl-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-xl-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-xl-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-xl-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-xl-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-xl-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-xl-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-xl-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-xl-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-xl-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-xl-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-xl-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-xl-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-xl-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-xl-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-xl-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-xl-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-xl-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-xl-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-xl-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-xl-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-xl-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-xl-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-xl-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-xl-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +.float-left { + float: left !important; +} + +.float-right { + float: right !important; +} + +.float-none { + float: none !important; +} + +@media (min-width: 576px) { + .float-sm-left { + float: left !important; + } + .float-sm-right { + float: right !important; + } + .float-sm-none { + float: none !important; + } +} + +@media (min-width: 768px) { + .float-md-left { + float: left !important; + } + .float-md-right { + float: right !important; + } + .float-md-none { + float: none !important; + } +} + +@media (min-width: 992px) { + .float-lg-left { + float: left !important; + } + .float-lg-right { + float: right !important; + } + .float-lg-none { + float: none !important; + } +} + +@media (min-width: 1200px) { + .float-xl-left { + float: left !important; + } + .float-xl-right { + float: right !important; + } + .float-xl-none { + float: none !important; + } +} + +.position-static { + position: static !important; +} + +.position-relative { + position: relative !important; +} + +.position-absolute { + position: absolute !important; +} + +.position-fixed { + position: fixed !important; +} + +.position-sticky { + position: -webkit-sticky !important; + position: sticky !important; +} + +.fixed-top { + position: fixed; + top: 0; + right: 0; + left: 0; + z-index: 1030; +} + +.fixed-bottom { + position: fixed; + right: 0; + bottom: 0; + left: 0; + z-index: 1030; +} + +@supports ((position: -webkit-sticky) or (position: sticky)) { + .sticky-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border: 0; +} + +.sr-only-focusable:active, .sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + overflow: visible; + clip: auto; + white-space: normal; +} + +.shadow-sm { + box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; +} + +.shadow { + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; +} + +.shadow-lg { + box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; +} + +.shadow-none { + box-shadow: none !important; +} + +.w-25 { + width: 25% !important; +} + +.w-50 { + width: 50% !important; +} + +.w-75 { + width: 75% !important; +} + +.w-100 { + width: 100% !important; +} + +.w-auto { + width: auto !important; +} + +.h-25 { + height: 25% !important; +} + +.h-50 { + height: 50% !important; +} + +.h-75 { + height: 75% !important; +} + +.h-100 { + height: 100% !important; +} + +.h-auto { + height: auto !important; +} + +.mw-100 { + max-width: 100% !important; +} + +.mh-100 { + max-height: 100% !important; +} + +.m-0 { + margin: 0 !important; +} + +.mt-0, +.my-0 { + margin-top: 0 !important; +} + +.mr-0, +.mx-0 { + margin-right: 0 !important; +} + +.mb-0, +.my-0 { + margin-bottom: 0 !important; +} + +.ml-0, +.mx-0 { + margin-left: 0 !important; +} + +.m-1 { + margin: 0.25rem !important; +} + +.mt-1, +.my-1 { + margin-top: 0.25rem !important; +} + +.mr-1, +.mx-1 { + margin-right: 0.25rem !important; +} + +.mb-1, +.my-1 { + margin-bottom: 0.25rem !important; +} + +.ml-1, +.mx-1 { + margin-left: 0.25rem !important; +} + +.m-2 { + margin: 0.5rem !important; +} + +.mt-2, +.my-2 { + margin-top: 0.5rem !important; +} + +.mr-2, +.mx-2 { + margin-right: 0.5rem !important; +} + +.mb-2, +.my-2 { + margin-bottom: 0.5rem !important; +} + +.ml-2, +.mx-2 { + margin-left: 0.5rem !important; +} + +.m-3 { + margin: 1rem !important; +} + +.mt-3, +.my-3 { + margin-top: 1rem !important; +} + +.mr-3, +.mx-3 { + margin-right: 1rem !important; +} + +.mb-3, +.my-3 { + margin-bottom: 1rem !important; +} + +.ml-3, +.mx-3 { + margin-left: 1rem !important; +} + +.m-4 { + margin: 1.5rem !important; +} + +.mt-4, +.my-4 { + margin-top: 1.5rem !important; +} + +.mr-4, +.mx-4 { + margin-right: 1.5rem !important; +} + +.mb-4, +.my-4 { + margin-bottom: 1.5rem !important; +} + +.ml-4, +.mx-4 { + margin-left: 1.5rem !important; +} + +.m-5 { + margin: 3rem !important; +} + +.mt-5, +.my-5 { + margin-top: 3rem !important; +} + +.mr-5, +.mx-5 { + margin-right: 3rem !important; +} + +.mb-5, +.my-5 { + margin-bottom: 3rem !important; +} + +.ml-5, +.mx-5 { + margin-left: 3rem !important; +} + +.p-0 { + padding: 0 !important; +} + +.pt-0, +.py-0 { + padding-top: 0 !important; +} + +.pr-0, +.px-0 { + padding-right: 0 !important; +} + +.pb-0, +.py-0 { + padding-bottom: 0 !important; +} + +.pl-0, +.px-0 { + padding-left: 0 !important; +} + +.p-1 { + padding: 0.25rem !important; +} + +.pt-1, +.py-1 { + padding-top: 0.25rem !important; +} + +.pr-1, +.px-1 { + padding-right: 0.25rem !important; +} + +.pb-1, +.py-1 { + padding-bottom: 0.25rem !important; +} + +.pl-1, +.px-1 { + padding-left: 0.25rem !important; +} + +.p-2 { + padding: 0.5rem !important; +} + +.pt-2, +.py-2 { + padding-top: 0.5rem !important; +} + +.pr-2, +.px-2 { + padding-right: 0.5rem !important; +} + +.pb-2, +.py-2 { + padding-bottom: 0.5rem !important; +} + +.pl-2, +.px-2 { + padding-left: 0.5rem !important; +} + +.p-3 { + padding: 1rem !important; +} + +.pt-3, +.py-3 { + padding-top: 1rem !important; +} + +.pr-3, +.px-3 { + padding-right: 1rem !important; +} + +.pb-3, +.py-3 { + padding-bottom: 1rem !important; +} + +.pl-3, +.px-3 { + padding-left: 1rem !important; +} + +.p-4 { + padding: 1.5rem !important; +} + +.pt-4, +.py-4 { + padding-top: 1.5rem !important; +} + +.pr-4, +.px-4 { + padding-right: 1.5rem !important; +} + +.pb-4, +.py-4 { + padding-bottom: 1.5rem !important; +} + +.pl-4, +.px-4 { + padding-left: 1.5rem !important; +} + +.p-5 { + padding: 3rem !important; +} + +.pt-5, +.py-5 { + padding-top: 3rem !important; +} + +.pr-5, +.px-5 { + padding-right: 3rem !important; +} + +.pb-5, +.py-5 { + padding-bottom: 3rem !important; +} + +.pl-5, +.px-5 { + padding-left: 3rem !important; +} + +.m-auto { + margin: auto !important; +} + +.mt-auto, +.my-auto { + margin-top: auto !important; +} + +.mr-auto, +.mx-auto { + margin-right: auto !important; +} + +.mb-auto, +.my-auto { + margin-bottom: auto !important; +} + +.ml-auto, +.mx-auto { + margin-left: auto !important; +} + +@media (min-width: 576px) { + .m-sm-0 { + margin: 0 !important; + } + .mt-sm-0, + .my-sm-0 { + margin-top: 0 !important; + } + .mr-sm-0, + .mx-sm-0 { + margin-right: 0 !important; + } + .mb-sm-0, + .my-sm-0 { + margin-bottom: 0 !important; + } + .ml-sm-0, + .mx-sm-0 { + margin-left: 0 !important; + } + .m-sm-1 { + margin: 0.25rem !important; + } + .mt-sm-1, + .my-sm-1 { + margin-top: 0.25rem !important; + } + .mr-sm-1, + .mx-sm-1 { + margin-right: 0.25rem !important; + } + .mb-sm-1, + .my-sm-1 { + margin-bottom: 0.25rem !important; + } + .ml-sm-1, + .mx-sm-1 { + margin-left: 0.25rem !important; + } + .m-sm-2 { + margin: 0.5rem !important; + } + .mt-sm-2, + .my-sm-2 { + margin-top: 0.5rem !important; + } + .mr-sm-2, + .mx-sm-2 { + margin-right: 0.5rem !important; + } + .mb-sm-2, + .my-sm-2 { + margin-bottom: 0.5rem !important; + } + .ml-sm-2, + .mx-sm-2 { + margin-left: 0.5rem !important; + } + .m-sm-3 { + margin: 1rem !important; + } + .mt-sm-3, + .my-sm-3 { + margin-top: 1rem !important; + } + .mr-sm-3, + .mx-sm-3 { + margin-right: 1rem !important; + } + .mb-sm-3, + .my-sm-3 { + margin-bottom: 1rem !important; + } + .ml-sm-3, + .mx-sm-3 { + margin-left: 1rem !important; + } + .m-sm-4 { + margin: 1.5rem !important; + } + .mt-sm-4, + .my-sm-4 { + margin-top: 1.5rem !important; + } + .mr-sm-4, + .mx-sm-4 { + margin-right: 1.5rem !important; + } + .mb-sm-4, + .my-sm-4 { + margin-bottom: 1.5rem !important; + } + .ml-sm-4, + .mx-sm-4 { + margin-left: 1.5rem !important; + } + .m-sm-5 { + margin: 3rem !important; + } + .mt-sm-5, + .my-sm-5 { + margin-top: 3rem !important; + } + .mr-sm-5, + .mx-sm-5 { + margin-right: 3rem !important; + } + .mb-sm-5, + .my-sm-5 { + margin-bottom: 3rem !important; + } + .ml-sm-5, + .mx-sm-5 { + margin-left: 3rem !important; + } + .p-sm-0 { + padding: 0 !important; + } + .pt-sm-0, + .py-sm-0 { + padding-top: 0 !important; + } + .pr-sm-0, + .px-sm-0 { + padding-right: 0 !important; + } + .pb-sm-0, + .py-sm-0 { + padding-bottom: 0 !important; + } + .pl-sm-0, + .px-sm-0 { + padding-left: 0 !important; + } + .p-sm-1 { + padding: 0.25rem !important; + } + .pt-sm-1, + .py-sm-1 { + padding-top: 0.25rem !important; + } + .pr-sm-1, + .px-sm-1 { + padding-right: 0.25rem !important; + } + .pb-sm-1, + .py-sm-1 { + padding-bottom: 0.25rem !important; + } + .pl-sm-1, + .px-sm-1 { + padding-left: 0.25rem !important; + } + .p-sm-2 { + padding: 0.5rem !important; + } + .pt-sm-2, + .py-sm-2 { + padding-top: 0.5rem !important; + } + .pr-sm-2, + .px-sm-2 { + padding-right: 0.5rem !important; + } + .pb-sm-2, + .py-sm-2 { + padding-bottom: 0.5rem !important; + } + .pl-sm-2, + .px-sm-2 { + padding-left: 0.5rem !important; + } + .p-sm-3 { + padding: 1rem !important; + } + .pt-sm-3, + .py-sm-3 { + padding-top: 1rem !important; + } + .pr-sm-3, + .px-sm-3 { + padding-right: 1rem !important; + } + .pb-sm-3, + .py-sm-3 { + padding-bottom: 1rem !important; + } + .pl-sm-3, + .px-sm-3 { + padding-left: 1rem !important; + } + .p-sm-4 { + padding: 1.5rem !important; + } + .pt-sm-4, + .py-sm-4 { + padding-top: 1.5rem !important; + } + .pr-sm-4, + .px-sm-4 { + padding-right: 1.5rem !important; + } + .pb-sm-4, + .py-sm-4 { + padding-bottom: 1.5rem !important; + } + .pl-sm-4, + .px-sm-4 { + padding-left: 1.5rem !important; + } + .p-sm-5 { + padding: 3rem !important; + } + .pt-sm-5, + .py-sm-5 { + padding-top: 3rem !important; + } + .pr-sm-5, + .px-sm-5 { + padding-right: 3rem !important; + } + .pb-sm-5, + .py-sm-5 { + padding-bottom: 3rem !important; + } + .pl-sm-5, + .px-sm-5 { + padding-left: 3rem !important; + } + .m-sm-auto { + margin: auto !important; + } + .mt-sm-auto, + .my-sm-auto { + margin-top: auto !important; + } + .mr-sm-auto, + .mx-sm-auto { + margin-right: auto !important; + } + .mb-sm-auto, + .my-sm-auto { + margin-bottom: auto !important; + } + .ml-sm-auto, + .mx-sm-auto { + margin-left: auto !important; + } +} + +@media (min-width: 768px) { + .m-md-0 { + margin: 0 !important; + } + .mt-md-0, + .my-md-0 { + margin-top: 0 !important; + } + .mr-md-0, + .mx-md-0 { + margin-right: 0 !important; + } + .mb-md-0, + .my-md-0 { + margin-bottom: 0 !important; + } + .ml-md-0, + .mx-md-0 { + margin-left: 0 !important; + } + .m-md-1 { + margin: 0.25rem !important; + } + .mt-md-1, + .my-md-1 { + margin-top: 0.25rem !important; + } + .mr-md-1, + .mx-md-1 { + margin-right: 0.25rem !important; + } + .mb-md-1, + .my-md-1 { + margin-bottom: 0.25rem !important; + } + .ml-md-1, + .mx-md-1 { + margin-left: 0.25rem !important; + } + .m-md-2 { + margin: 0.5rem !important; + } + .mt-md-2, + .my-md-2 { + margin-top: 0.5rem !important; + } + .mr-md-2, + .mx-md-2 { + margin-right: 0.5rem !important; + } + .mb-md-2, + .my-md-2 { + margin-bottom: 0.5rem !important; + } + .ml-md-2, + .mx-md-2 { + margin-left: 0.5rem !important; + } + .m-md-3 { + margin: 1rem !important; + } + .mt-md-3, + .my-md-3 { + margin-top: 1rem !important; + } + .mr-md-3, + .mx-md-3 { + margin-right: 1rem !important; + } + .mb-md-3, + .my-md-3 { + margin-bottom: 1rem !important; + } + .ml-md-3, + .mx-md-3 { + margin-left: 1rem !important; + } + .m-md-4 { + margin: 1.5rem !important; + } + .mt-md-4, + .my-md-4 { + margin-top: 1.5rem !important; + } + .mr-md-4, + .mx-md-4 { + margin-right: 1.5rem !important; + } + .mb-md-4, + .my-md-4 { + margin-bottom: 1.5rem !important; + } + .ml-md-4, + .mx-md-4 { + margin-left: 1.5rem !important; + } + .m-md-5 { + margin: 3rem !important; + } + .mt-md-5, + .my-md-5 { + margin-top: 3rem !important; + } + .mr-md-5, + .mx-md-5 { + margin-right: 3rem !important; + } + .mb-md-5, + .my-md-5 { + margin-bottom: 3rem !important; + } + .ml-md-5, + .mx-md-5 { + margin-left: 3rem !important; + } + .p-md-0 { + padding: 0 !important; + } + .pt-md-0, + .py-md-0 { + padding-top: 0 !important; + } + .pr-md-0, + .px-md-0 { + padding-right: 0 !important; + } + .pb-md-0, + .py-md-0 { + padding-bottom: 0 !important; + } + .pl-md-0, + .px-md-0 { + padding-left: 0 !important; + } + .p-md-1 { + padding: 0.25rem !important; + } + .pt-md-1, + .py-md-1 { + padding-top: 0.25rem !important; + } + .pr-md-1, + .px-md-1 { + padding-right: 0.25rem !important; + } + .pb-md-1, + .py-md-1 { + padding-bottom: 0.25rem !important; + } + .pl-md-1, + .px-md-1 { + padding-left: 0.25rem !important; + } + .p-md-2 { + padding: 0.5rem !important; + } + .pt-md-2, + .py-md-2 { + padding-top: 0.5rem !important; + } + .pr-md-2, + .px-md-2 { + padding-right: 0.5rem !important; + } + .pb-md-2, + .py-md-2 { + padding-bottom: 0.5rem !important; + } + .pl-md-2, + .px-md-2 { + padding-left: 0.5rem !important; + } + .p-md-3 { + padding: 1rem !important; + } + .pt-md-3, + .py-md-3 { + padding-top: 1rem !important; + } + .pr-md-3, + .px-md-3 { + padding-right: 1rem !important; + } + .pb-md-3, + .py-md-3 { + padding-bottom: 1rem !important; + } + .pl-md-3, + .px-md-3 { + padding-left: 1rem !important; + } + .p-md-4 { + padding: 1.5rem !important; + } + .pt-md-4, + .py-md-4 { + padding-top: 1.5rem !important; + } + .pr-md-4, + .px-md-4 { + padding-right: 1.5rem !important; + } + .pb-md-4, + .py-md-4 { + padding-bottom: 1.5rem !important; + } + .pl-md-4, + .px-md-4 { + padding-left: 1.5rem !important; + } + .p-md-5 { + padding: 3rem !important; + } + .pt-md-5, + .py-md-5 { + padding-top: 3rem !important; + } + .pr-md-5, + .px-md-5 { + padding-right: 3rem !important; + } + .pb-md-5, + .py-md-5 { + padding-bottom: 3rem !important; + } + .pl-md-5, + .px-md-5 { + padding-left: 3rem !important; + } + .m-md-auto { + margin: auto !important; + } + .mt-md-auto, + .my-md-auto { + margin-top: auto !important; + } + .mr-md-auto, + .mx-md-auto { + margin-right: auto !important; + } + .mb-md-auto, + .my-md-auto { + margin-bottom: auto !important; + } + .ml-md-auto, + .mx-md-auto { + margin-left: auto !important; + } +} + +@media (min-width: 992px) { + .m-lg-0 { + margin: 0 !important; + } + .mt-lg-0, + .my-lg-0 { + margin-top: 0 !important; + } + .mr-lg-0, + .mx-lg-0 { + margin-right: 0 !important; + } + .mb-lg-0, + .my-lg-0 { + margin-bottom: 0 !important; + } + .ml-lg-0, + .mx-lg-0 { + margin-left: 0 !important; + } + .m-lg-1 { + margin: 0.25rem !important; + } + .mt-lg-1, + .my-lg-1 { + margin-top: 0.25rem !important; + } + .mr-lg-1, + .mx-lg-1 { + margin-right: 0.25rem !important; + } + .mb-lg-1, + .my-lg-1 { + margin-bottom: 0.25rem !important; + } + .ml-lg-1, + .mx-lg-1 { + margin-left: 0.25rem !important; + } + .m-lg-2 { + margin: 0.5rem !important; + } + .mt-lg-2, + .my-lg-2 { + margin-top: 0.5rem !important; + } + .mr-lg-2, + .mx-lg-2 { + margin-right: 0.5rem !important; + } + .mb-lg-2, + .my-lg-2 { + margin-bottom: 0.5rem !important; + } + .ml-lg-2, + .mx-lg-2 { + margin-left: 0.5rem !important; + } + .m-lg-3 { + margin: 1rem !important; + } + .mt-lg-3, + .my-lg-3 { + margin-top: 1rem !important; + } + .mr-lg-3, + .mx-lg-3 { + margin-right: 1rem !important; + } + .mb-lg-3, + .my-lg-3 { + margin-bottom: 1rem !important; + } + .ml-lg-3, + .mx-lg-3 { + margin-left: 1rem !important; + } + .m-lg-4 { + margin: 1.5rem !important; + } + .mt-lg-4, + .my-lg-4 { + margin-top: 1.5rem !important; + } + .mr-lg-4, + .mx-lg-4 { + margin-right: 1.5rem !important; + } + .mb-lg-4, + .my-lg-4 { + margin-bottom: 1.5rem !important; + } + .ml-lg-4, + .mx-lg-4 { + margin-left: 1.5rem !important; + } + .m-lg-5 { + margin: 3rem !important; + } + .mt-lg-5, + .my-lg-5 { + margin-top: 3rem !important; + } + .mr-lg-5, + .mx-lg-5 { + margin-right: 3rem !important; + } + .mb-lg-5, + .my-lg-5 { + margin-bottom: 3rem !important; + } + .ml-lg-5, + .mx-lg-5 { + margin-left: 3rem !important; + } + .p-lg-0 { + padding: 0 !important; + } + .pt-lg-0, + .py-lg-0 { + padding-top: 0 !important; + } + .pr-lg-0, + .px-lg-0 { + padding-right: 0 !important; + } + .pb-lg-0, + .py-lg-0 { + padding-bottom: 0 !important; + } + .pl-lg-0, + .px-lg-0 { + padding-left: 0 !important; + } + .p-lg-1 { + padding: 0.25rem !important; + } + .pt-lg-1, + .py-lg-1 { + padding-top: 0.25rem !important; + } + .pr-lg-1, + .px-lg-1 { + padding-right: 0.25rem !important; + } + .pb-lg-1, + .py-lg-1 { + padding-bottom: 0.25rem !important; + } + .pl-lg-1, + .px-lg-1 { + padding-left: 0.25rem !important; + } + .p-lg-2 { + padding: 0.5rem !important; + } + .pt-lg-2, + .py-lg-2 { + padding-top: 0.5rem !important; + } + .pr-lg-2, + .px-lg-2 { + padding-right: 0.5rem !important; + } + .pb-lg-2, + .py-lg-2 { + padding-bottom: 0.5rem !important; + } + .pl-lg-2, + .px-lg-2 { + padding-left: 0.5rem !important; + } + .p-lg-3 { + padding: 1rem !important; + } + .pt-lg-3, + .py-lg-3 { + padding-top: 1rem !important; + } + .pr-lg-3, + .px-lg-3 { + padding-right: 1rem !important; + } + .pb-lg-3, + .py-lg-3 { + padding-bottom: 1rem !important; + } + .pl-lg-3, + .px-lg-3 { + padding-left: 1rem !important; + } + .p-lg-4 { + padding: 1.5rem !important; + } + .pt-lg-4, + .py-lg-4 { + padding-top: 1.5rem !important; + } + .pr-lg-4, + .px-lg-4 { + padding-right: 1.5rem !important; + } + .pb-lg-4, + .py-lg-4 { + padding-bottom: 1.5rem !important; + } + .pl-lg-4, + .px-lg-4 { + padding-left: 1.5rem !important; + } + .p-lg-5 { + padding: 3rem !important; + } + .pt-lg-5, + .py-lg-5 { + padding-top: 3rem !important; + } + .pr-lg-5, + .px-lg-5 { + padding-right: 3rem !important; + } + .pb-lg-5, + .py-lg-5 { + padding-bottom: 3rem !important; + } + .pl-lg-5, + .px-lg-5 { + padding-left: 3rem !important; + } + .m-lg-auto { + margin: auto !important; + } + .mt-lg-auto, + .my-lg-auto { + margin-top: auto !important; + } + .mr-lg-auto, + .mx-lg-auto { + margin-right: auto !important; + } + .mb-lg-auto, + .my-lg-auto { + margin-bottom: auto !important; + } + .ml-lg-auto, + .mx-lg-auto { + margin-left: auto !important; + } +} + +@media (min-width: 1200px) { + .m-xl-0 { + margin: 0 !important; + } + .mt-xl-0, + .my-xl-0 { + margin-top: 0 !important; + } + .mr-xl-0, + .mx-xl-0 { + margin-right: 0 !important; + } + .mb-xl-0, + .my-xl-0 { + margin-bottom: 0 !important; + } + .ml-xl-0, + .mx-xl-0 { + margin-left: 0 !important; + } + .m-xl-1 { + margin: 0.25rem !important; + } + .mt-xl-1, + .my-xl-1 { + margin-top: 0.25rem !important; + } + .mr-xl-1, + .mx-xl-1 { + margin-right: 0.25rem !important; + } + .mb-xl-1, + .my-xl-1 { + margin-bottom: 0.25rem !important; + } + .ml-xl-1, + .mx-xl-1 { + margin-left: 0.25rem !important; + } + .m-xl-2 { + margin: 0.5rem !important; + } + .mt-xl-2, + .my-xl-2 { + margin-top: 0.5rem !important; + } + .mr-xl-2, + .mx-xl-2 { + margin-right: 0.5rem !important; + } + .mb-xl-2, + .my-xl-2 { + margin-bottom: 0.5rem !important; + } + .ml-xl-2, + .mx-xl-2 { + margin-left: 0.5rem !important; + } + .m-xl-3 { + margin: 1rem !important; + } + .mt-xl-3, + .my-xl-3 { + margin-top: 1rem !important; + } + .mr-xl-3, + .mx-xl-3 { + margin-right: 1rem !important; + } + .mb-xl-3, + .my-xl-3 { + margin-bottom: 1rem !important; + } + .ml-xl-3, + .mx-xl-3 { + margin-left: 1rem !important; + } + .m-xl-4 { + margin: 1.5rem !important; + } + .mt-xl-4, + .my-xl-4 { + margin-top: 1.5rem !important; + } + .mr-xl-4, + .mx-xl-4 { + margin-right: 1.5rem !important; + } + .mb-xl-4, + .my-xl-4 { + margin-bottom: 1.5rem !important; + } + .ml-xl-4, + .mx-xl-4 { + margin-left: 1.5rem !important; + } + .m-xl-5 { + margin: 3rem !important; + } + .mt-xl-5, + .my-xl-5 { + margin-top: 3rem !important; + } + .mr-xl-5, + .mx-xl-5 { + margin-right: 3rem !important; + } + .mb-xl-5, + .my-xl-5 { + margin-bottom: 3rem !important; + } + .ml-xl-5, + .mx-xl-5 { + margin-left: 3rem !important; + } + .p-xl-0 { + padding: 0 !important; + } + .pt-xl-0, + .py-xl-0 { + padding-top: 0 !important; + } + .pr-xl-0, + .px-xl-0 { + padding-right: 0 !important; + } + .pb-xl-0, + .py-xl-0 { + padding-bottom: 0 !important; + } + .pl-xl-0, + .px-xl-0 { + padding-left: 0 !important; + } + .p-xl-1 { + padding: 0.25rem !important; + } + .pt-xl-1, + .py-xl-1 { + padding-top: 0.25rem !important; + } + .pr-xl-1, + .px-xl-1 { + padding-right: 0.25rem !important; + } + .pb-xl-1, + .py-xl-1 { + padding-bottom: 0.25rem !important; + } + .pl-xl-1, + .px-xl-1 { + padding-left: 0.25rem !important; + } + .p-xl-2 { + padding: 0.5rem !important; + } + .pt-xl-2, + .py-xl-2 { + padding-top: 0.5rem !important; + } + .pr-xl-2, + .px-xl-2 { + padding-right: 0.5rem !important; + } + .pb-xl-2, + .py-xl-2 { + padding-bottom: 0.5rem !important; + } + .pl-xl-2, + .px-xl-2 { + padding-left: 0.5rem !important; + } + .p-xl-3 { + padding: 1rem !important; + } + .pt-xl-3, + .py-xl-3 { + padding-top: 1rem !important; + } + .pr-xl-3, + .px-xl-3 { + padding-right: 1rem !important; + } + .pb-xl-3, + .py-xl-3 { + padding-bottom: 1rem !important; + } + .pl-xl-3, + .px-xl-3 { + padding-left: 1rem !important; + } + .p-xl-4 { + padding: 1.5rem !important; + } + .pt-xl-4, + .py-xl-4 { + padding-top: 1.5rem !important; + } + .pr-xl-4, + .px-xl-4 { + padding-right: 1.5rem !important; + } + .pb-xl-4, + .py-xl-4 { + padding-bottom: 1.5rem !important; + } + .pl-xl-4, + .px-xl-4 { + padding-left: 1.5rem !important; + } + .p-xl-5 { + padding: 3rem !important; + } + .pt-xl-5, + .py-xl-5 { + padding-top: 3rem !important; + } + .pr-xl-5, + .px-xl-5 { + padding-right: 3rem !important; + } + .pb-xl-5, + .py-xl-5 { + padding-bottom: 3rem !important; + } + .pl-xl-5, + .px-xl-5 { + padding-left: 3rem !important; + } + .m-xl-auto { + margin: auto !important; + } + .mt-xl-auto, + .my-xl-auto { + margin-top: auto !important; + } + .mr-xl-auto, + .mx-xl-auto { + margin-right: auto !important; + } + .mb-xl-auto, + .my-xl-auto { + margin-bottom: auto !important; + } + .ml-xl-auto, + .mx-xl-auto { + margin-left: auto !important; + } +} + +.text-monospace { + font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +} + +.text-justify { + text-align: justify !important; +} + +.text-nowrap { + white-space: nowrap !important; +} + +.text-truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.text-left { + text-align: left !important; +} + +.text-right { + text-align: right !important; +} + +.text-center { + text-align: center !important; +} + +@media (min-width: 576px) { + .text-sm-left { + text-align: left !important; + } + .text-sm-right { + text-align: right !important; + } + .text-sm-center { + text-align: center !important; + } +} + +@media (min-width: 768px) { + .text-md-left { + text-align: left !important; + } + .text-md-right { + text-align: right !important; + } + .text-md-center { + text-align: center !important; + } +} + +@media (min-width: 992px) { + .text-lg-left { + text-align: left !important; + } + .text-lg-right { + text-align: right !important; + } + .text-lg-center { + text-align: center !important; + } +} + +@media (min-width: 1200px) { + .text-xl-left { + text-align: left !important; + } + .text-xl-right { + text-align: right !important; + } + .text-xl-center { + text-align: center !important; + } +} + +.text-lowercase { + text-transform: lowercase !important; +} + +.text-uppercase { + text-transform: uppercase !important; +} + +.text-capitalize { + text-transform: capitalize !important; +} + +.font-weight-light { + font-weight: 300 !important; +} + +.font-weight-normal { + font-weight: 400 !important; +} + +.font-weight-bold { + font-weight: 700 !important; +} + +.font-italic { + font-style: italic !important; +} + +.text-white { + color: #fff !important; +} + +.text-primary { + color: #007bff !important; +} + +a.text-primary:hover, a.text-primary:focus { + color: #0062cc !important; +} + +.text-secondary { + color: #6c757d !important; +} + +a.text-secondary:hover, a.text-secondary:focus { + color: #545b62 !important; +} + +.text-success { + color: #28a745 !important; +} + +a.text-success:hover, a.text-success:focus { + color: #1e7e34 !important; +} + +.text-info { + color: #17a2b8 !important; +} + +a.text-info:hover, a.text-info:focus { + color: #117a8b !important; +} + +.text-warning { + color: #ffc107 !important; +} + +a.text-warning:hover, a.text-warning:focus { + color: #d39e00 !important; +} + +.text-danger { + color: #dc3545 !important; +} + +a.text-danger:hover, a.text-danger:focus { + color: #bd2130 !important; +} + +.text-light { + color: #f8f9fa !important; +} + +a.text-light:hover, a.text-light:focus { + color: #dae0e5 !important; +} + +.text-dark { + color: #343a40 !important; +} + +a.text-dark:hover, a.text-dark:focus { + color: #1d2124 !important; +} + +.text-body { + color: #212529 !important; +} + +.text-muted { + color: #6c757d !important; +} + +.text-black-50 { + color: rgba(0, 0, 0, 0.5) !important; +} + +.text-white-50 { + color: rgba(255, 255, 255, 0.5) !important; +} + +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} + +.visible { + visibility: visible !important; +} + +.invisible { + visibility: hidden !important; +} + +@media print { + *, + *::before, + *::after { + text-shadow: none !important; + box-shadow: none !important; + } + a:not(.btn) { + text-decoration: underline; + } + abbr[title]::after { + content: " (" attr(title) ")"; + } + pre { + white-space: pre-wrap !important; + } + pre, + blockquote { + border: 1px solid #adb5bd; + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + @page { + size: a3; + } + body { + min-width: 992px !important; + } + .container { + min-width: 992px !important; + } + .navbar { + display: none; + } + .badge { + border: 1px solid #000; + } + .table { + border-collapse: collapse !important; + } + .table td, + .table th { + background-color: #fff !important; + } + .table-bordered th, + .table-bordered td { + border: 1px solid #dee2e6 !important; + } + .table-dark { + color: inherit; + } + .table-dark th, + .table-dark td, + .table-dark thead th, + .table-dark tbody + tbody { + border-color: #dee2e6; + } + .table .thead-dark th { + color: inherit; + border-color: #dee2e6; + } +} +/*# sourceMappingURL=bootstrap.css.map */ \ No newline at end of file diff --git a/css/bootstrap.css.map b/css/bootstrap.css.map new file mode 100755 index 0000000..cd35b27 --- /dev/null +++ b/css/bootstrap.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../../scss/bootstrap.scss","../../scss/_root.scss","../../scss/_reboot.scss","../../scss/_variables.scss","bootstrap.css","../../scss/mixins/_hover.scss","../../scss/_type.scss","../../scss/mixins/_lists.scss","../../scss/_images.scss","../../scss/mixins/_image.scss","../../scss/mixins/_border-radius.scss","../../scss/_code.scss","../../scss/_grid.scss","../../scss/mixins/_grid.scss","../../scss/mixins/_breakpoints.scss","../../scss/mixins/_grid-framework.scss","../../scss/_tables.scss","../../scss/mixins/_table-row.scss","../../scss/_functions.scss","../../scss/_forms.scss","../../scss/mixins/_transition.scss","../../scss/mixins/_forms.scss","../../scss/mixins/_gradients.scss","../../scss/_buttons.scss","../../scss/mixins/_buttons.scss","../../scss/_transitions.scss","../../scss/_dropdown.scss","../../scss/mixins/_caret.scss","../../scss/mixins/_nav-divider.scss","../../scss/_button-group.scss","../../scss/_input-group.scss","../../scss/_custom-forms.scss","../../scss/_nav.scss","../../scss/_navbar.scss","../../scss/_card.scss","../../scss/_breadcrumb.scss","../../scss/_pagination.scss","../../scss/mixins/_pagination.scss","../../scss/_badge.scss","../../scss/mixins/_badge.scss","../../scss/_jumbotron.scss","../../scss/_alert.scss","../../scss/mixins/_alert.scss","../../scss/_progress.scss","../../scss/_media.scss","../../scss/_list-group.scss","../../scss/mixins/_list-group.scss","../../scss/_close.scss","../../scss/_modal.scss","../../scss/_tooltip.scss","../../scss/mixins/_reset-text.scss","../../scss/_popover.scss","../../scss/_carousel.scss","../../scss/utilities/_align.scss","../../scss/mixins/_background-variant.scss","../../scss/utilities/_background.scss","../../scss/utilities/_borders.scss","../../scss/mixins/_clearfix.scss","../../scss/utilities/_display.scss","../../scss/utilities/_embed.scss","../../scss/utilities/_flex.scss","../../scss/utilities/_float.scss","../../scss/mixins/_float.scss","../../scss/utilities/_position.scss","../../scss/utilities/_screenreaders.scss","../../scss/mixins/_screen-reader.scss","../../scss/utilities/_shadows.scss","../../scss/utilities/_sizing.scss","../../scss/utilities/_spacing.scss","../../scss/utilities/_text.scss","../../scss/mixins/_text-truncate.scss","../../scss/mixins/_text-emphasis.scss","../../scss/mixins/_text-hide.scss","../../scss/utilities/_visibility.scss","../../scss/mixins/_visibility.scss","../../scss/_print.scss"],"names":[],"mappings":"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EACb,2BAA0B;CAC3B;;AAMD;EACE,sBAAqB;CACtB;;AAED;EACE,mBAAkB;EAClB,gBAAe;CAChB;;AAED;EACE,cAAa;CACd;;AExHD;EF6HE,yBAAwB;CACzB;;AI5dD;;EAEE,sBHyQyC;EGxQzC,qBHyQmC;EGxQnC,iBHyQ+B;EGxQ/B,iBHyQ+B;EGxQ/B,eHyQmC;CGxQpC;;AAED;EAAU,kBH2PyC;CG3Pb;;AACtC;EAAU,gBH2PuC;CG3PX;;AACtC;EAAU,mBH2P0C;CG3Pd;;AACtC;EAAU,kBH2PyC;CG3Pb;;AACtC;EAAU,mBH2P0C;CG3Pd;;AACtC;EAAU,gBH2OwB;CG3OI;;AAEtC;EACE,mBH2QoD;EG1QpD,iBH2Q+B;CG1QhC;;AAGD;EACE,gBH0PgC;EGzPhC,iBH8P+B;EG7P/B,iBHqP+B;CGpPhC;;AACD;EACE,kBHsPkC;EGrPlC,iBH0P+B;EGzP/B,iBHgP+B;CG/OhC;;AACD;EACE,kBHkPkC;EGjPlC,iBHsP+B;EGrP/B,iBH2O+B;CG1OhC;;AACD;EACE,kBH8OkC;EG7OlC,iBHkP+B;EGjP/B,iBHsO+B;CGrOhC;;AJmCD;EI3BE,iBHwEW;EGvEX,oBHuEW;EGtEX,UAAS;EACT,yCHtCa;CGuCd;;AAOD;;EAEE,eHiO+B;EGhO/B,iBH+L+B;CG9LhC;;AAED;;EAEE,eHqOgC;EGpOhC,0BH6OmC;CG5OpC;;AAOD;EC/EE,gBAAe;EACf,iBAAgB;CDgFjB;;AAGD;ECpFE,gBAAe;EACf,iBAAgB;CDqFjB;;AACD;EACE,sBAAqB;CAKtB;;AAND;EAII,qBHuN+B;CGtNhC;;AASH;EACE,eAAc;EACd,0BAAyB;CAC1B;;AAGD;EACE,oBHeW;EGdX,mBHyLoD;CGxLrD;;AAED;EACE,eAAc;EACd,eAAc;EACd,eHvGgB;CG4GjB;;AARD;EAMI,uBAAsB;CACvB;;AEpHH;ECIE,gBAAe;EAGf,aAAY;CDLb;;AAID;EACE,iBL61BwC;EK51BxC,uBLLa;EKMb,0BLHgB;EOTd,uBP+NgC;EMxNlC,gBAAe;EAGf,aAAY;CDQb;;AAMD;EAEE,sBAAqB;CACtB;;AAED;EACE,sBAA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,wBAA8C;GEWrC;EAFD;IFTR,wBAA8C;GEWrC;CXoxCV;;AY70CD;EACE,YAAW;EACX,oBbyHW;EaxHX,8Bb6TuC;CaxSxC;;AAxBD;;EAOI,iBbsTgC;EarThC,oBAAmB;EACnB,8BbAc;CaCf;;AAVH;EAaI,uBAAsB;EACtB,iCbLc;CaMf;;AAfH;EAkBI,8BbTc;CaUf;;AAnBH;EAsBI,uBbhBW;CaiBZ;;AAQH;;EAGI,gBb4R+B;Ca3RhC;;AAQH;EACE,0BbnCgB;CagDjB;;AAdD;;EAKI,0BbvCc;CawCf;;AANH;;EAWM,yBAA8C;CAC/C;;AAIL;;;;EAKI,UAAS;CACV;;AAOH;EAEI,sCb1DW;Ca2DZ;;AXnED;EW8EI,uCbtES;CERS;;AYPtB;;;EAII,0BC2E4D;CD1E7D;;AZEH;EYQM,0BAJsC;CZJtB;;AYGtB;;EASQ,0BARoC;CASrC;;AApBP;;;EAII,0BC2E4D;CD1E7D;;AZEH;EYQM,0BAJsC;CZJtB;;AYGtB;;EASQ,0BARoC;CASrC;;AApBP;;;EAII,0BC2E4D;CD1E7D;;AZEH;EYQM,0BAJsC;CZJtB;;AYGtB;;EASQ,0BARoC;CASrC;;AApBP;;;EAII,0BC2E4D;CD1E7D;;AZEH;EYQM,0BAJsC;CZJtB;;AYGtB;;EASQ,0BARoC;CASrC;;AApBP;;;EAII,0BC2E4D;CD1E7D;;AZEH;EYQM,0BAJsC;CZJtB;;AYGtB;;EASQ,0BARoC;CASrC;;AApBP;;;EAII,0BC2E4D;CD1E7D;;AZEH;EYQM,0BAJsC;CZJtB;;AYGtB;;EASQ,0BARoC;CASrC;;AApBP;;;EAII,0BC2E4D;CD1E7D;;AZEH;EYQM,0BAJsC;CZJtB;;AYGtB;;EASQ,0BARoC;CASrC;;AApBP;;;EAII,0BC2E4D;CD1E7D;;AZEH;EYQM,0BAJsC;CZJtB;;AYGtB;;EASQ,0BARoC;CASrC;;AApBP;;;EAII,uCdWS;CcVV;;AZEH;EYQM,uCAJsC;CZJtB;;AYGtB;;EASQ,uCARoC;CASrC;;ADwFT;EAGM,Yb1GS;Ea2GT,0BblGY;EamGZ,sBb4NgD;Ca3NjD;;AANL;EAWM,eb3GY;Ea4GZ,0BbjHY;EakH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AChB;;AAaH;;EAEE,qBAAoB;CACrB;;AAQC;ECxDA,YrBIa;EmBJX,0BnBkCa;EqBhCf,sBrBgCe;CoBwBd;;AlBpDD;EmBAE,YrBFW;EmBJX,0BEDoF;EASpF,sBATyH;CnBOrG;;AmBKtB;EAMI,gDrBiBW;CqBfd;;AAGD;EAEE,YrBpBW;EqBqBX,0BrBSa;EqBRb,sBrBQa;CqBPd;;AAED;;EAGE,YrB5BW;EqB6BX,0BAlCuK;EAsCvK,sBAtC+M;CAgDhN;;AARC;;EAKI,gDrBVS;CqBYZ;;ADUH;ECxDA,YrBIa;EmBJX,0BnBUc;EqBRhB,sBrBQgB;CoBgDf;;AlBpDD;EmBAE,YrBFW;EmBJX,0BEDoF;EASpF,sBATyH;CnBOrG;;AmBKtB;EAMI,kDrBPY;CqBSf;;AAGD;EAEE,YrBpBW;EqBqBX,0BrBfc;EqBgBd,sBrBhBc;CqBiBf;;AAED;;EAGE,YrB5BW;EqB6BX,0BAlCuK;EAsCvK,sBAtC+M;CAgDhN;;AARC;;EAKI,kDrBlCU;CqBoCb;;ADUH;ECxDA,YrBIa;EmBJX,0BnByCa;EqBvCf,sBrBuCe;CoBiBd;;AlBpDD;EmBAE,YrBFW;EmBJX,0BEDoF;EASpF,sBATyH;CnBOrG;;AmBKtB;EAMI,gDrBwBW;CqBtBd;;AAGD;EAEE,YrBpBW;EqBqBX,0BrBgBa;EqBfb,sBrBea;CqBdd;;AAED;;EAGE,YrB5BW;EqB6BX,0BAlCuK;EAsCvK,sBAtC+M;CAgDhN;;AARC;;EAKI,gDrBHS;CqBKZ;;ADUH;ECxDA,YrBIa;EmBJX,0BnB2Ca;EqBzCf,sBrByCe;CoBed;;AlBpDD;EmBAE,YrBFW;EmBJX,0BEDoF;EASpF,sBATyH;CnBOrG;;AmBKtB;EAMI,iDrB0BW;CqBxBd;;AAGD;EAEE,YrBpBW;EqBqBX,0BrBkBa;EqBjBb,sBrBiBa;CqBhBd;;AAED;;EAGE,YrB5BW;EqB6BX,0BAlCuK;EAsCvK,sBAtC+M;CAgDhN;;AARC;;EAKI,iDrBDS;CqBGZ;;ADUH;ECxDA,erBagB;EmBbd,0BnBwCa;EqBtCf,sBrBsCe;CoBkBd;;AlBpDD;EmBAE,erBOc;EmBbd,0BEDoF;EASpF,sBATyH;CnBOrG;;AmBKtB;EAMI,gDrBuBW;CqBrBd;;AAGD;EAEE,erBXc;EqBYd,0BrBea;EqBdb,sBrBca;CqBbd;;AAED;;EAGE,erBnBc;EqBoBd,0BAlCuK;EAsCvK,sBAtC+M;CAgDhN;;AARC;;EAKI,gDrBJS;CqBMZ;;ADUH;ECxDA,YrBIa;EmBJX,0BnBsCa;EqBpCf,sBrBoCe;CoBoBd;;AlBpDD;EmBAE,YrBFW;EmBJX,0BEDoF;EASpF,sBATyH;CnBOrG;;AmBKtB;EAMI,gDrBqBW;CqBnBd;;AAGD;EAEE,YrBpBW;EqBqBX,0BrBaa;EqBZb,sBrBYa;CqBXd;;AAED;;EAGE,YrB5BW;EqB6BX,0BAlCuK;EAsCvK,sBAtC+M;CAgDhN;;AARC;;EAKI,gDrBNS;CqBQZ;;ADUH;ECxDA,erBagB;EmBbd,0BnBKc;EqBHhB,sBrBGgB;CoBqDf;;AlBpDD;EmBAE,erBOc;EmBbd,0BEDoF;EASpF,sBATyH;CnBOrG;;AmBKtB;EAMI,kDrBZY;CqBcf;;AAGD;EAEE,erBXc;EqBYd,0BrBpBc;EqBqBd,sBrBrBc;CqBsBf;;AAED;;EAGE,erBnBc;EqBoBd,0BAlCuK;EAsCvK,sBAtC+M;CAgDhN;;AARC;;EAKI,kDrBvCU;CqByCb;;ADUH;ECxDA,YrBIa;EmBJX,0BnBYc;EqBVhB,sBrBUgB;CoB8Cf;;AlBpDD;EmBAE,YrBFW;EmBJX,0BEDoF;EASpF,sBATyH;CnBOrG;;AmBKtB;EAMI,+CrBLY;CqBOf;;AAGD;EAEE,YrBpBW;EqBqBX,0BrBbc;EqBcd,sBrBdc;CqBef;;AAED;;EAGE,YrB5BW;EqB6BX,0BAlCuK;EAsCvK,sBAtC+M;CAgDhN;;AARC;;EAKI,+CrBhCU;CqBkCb;;ADgBH;ECXA,erBjBe;EqBkBf,8BAA6B;EAC7B,uBAAsB;EACtB,sBrBpBe;CoB8Bd;;ACRD;EACE,YrBrDW;EqBsDX,0BrBxBa;EqByBb,sBrBzBa;CqB0Bd;;AAED;EAEE,gDrB9Ba;CqB+Bd;;AAED;EAEE,erBnCa;EqBoCb,8BAA6B;CAC9B;;AAED;;EAGE,YrBxEW;EqByEX,0BrB3Ca;EqB4Cb,sBrB5Ca;CqBsDd;;AARC;;EAKI,gDrBnDS;CqBqDZ;;ADzBH;ECXA,erBzCgB;EqB0ChB,8BAA6B;EAC7B,uBAAsB;EACtB,sBrB5CgB;CoBsDf;;ACRD;EACE,YrBrDW;EqBsDX,0BrBhDc;EqBiDd,sBrBjDc;CqBkDf;;AAED;EAEE,kDrBtDc;CqBuDf;;AAED;EAEE,erB3Dc;EqB4Dd,8BAA6B;CAC9B;;AAED;;EAGE,YrBxEW;EqByEX,0BrBnEc;EqBoEd,sBrBpEc;CqB8Ef;;AARC;;EAKI,kDrB3EU;CqB6Eb;;ADzBH;ECXA,erBVe;EqBWf,8BAA6B;EAC7B,uBAAsB;EACtB,sBrBbe;CoBuBd;;ACRD;EACE,YrBrDW;EqBsDX,0BrBjBa;EqBkBb,sBrBlBa;CqBmBd;;AAED;EAEE,gDrBvBa;CqBwBd;;AAED;EAEE,erB5Ba;EqB6Bb,8BAA6B;CAC9B;;AAED;;EAGE,YrBxEW;EqByEX,0BrBpCa;EqBqCb,sBrBrCa;CqB+Cd;;AARC;;EAKI,gDrB5CS;CqB8CZ;;ADzBH;ECXA,erBRe;EqBSf,8BAA6B;EAC7B,uBAAsB;EACtB,sBrBXe;CoBqBd;;ACRD;EACE,YrBrDW;EqBsDX,0BrBfa;EqBgBb,sBrBhBa;CqBiBd;;AAED;EAEE,iDrBrBa;CqBsBd;;AAED;EAEE,erB1Ba;EqB2Bb,8BAA6B;CAC9B;;AAED;;EAGE,YrBxEW;EqByEX,0BrBlCa;EqBmCb,sBrBnCa;CqB6Cd;;AARC;;EAKI,iDrB1CS;CqB4CZ;;ADzBH;ECXA,erBXe;EqBYf,8BAA6B;EAC7B,uBAAsB;EACtB,sBrBde;CoBwBd;;ACRD;EACE,erB5Cc;EqB6Cd,0BrBlBa;EqBmBb,sBrBnBa;CqBoBd;;AAED;EAEE,gDrBxBa;CqByBd;;AAED;EAEE,erB7Ba;EqB8Bb,8BAA6B;CAC9B;;AAED;;EAGE,erB/Dc;EqBgEd,0BrBrCa;EqBsCb,sBrBtCa;CqBgDd;;AARC;;EAKI,gDrB7CS;CqB+CZ;;ADzBH;ECXA,erBbe;EqBcf,8BAA6B;EAC7B,uBAAsB;EACtB,sBrBhBe;CoB0Bd;;ACRD;EACE,YrBrDW;EqBsDX,0BrBpBa;EqBqBb,sBrBrBa;CqBsBd;;AAED;EAEE,gDrB1Ba;CqB2Bd;;AAED;EAEE,erB/Ba;EqBgCb,8BAA6B;CAC9B;;AAED;;EAGE,YrBxEW;EqByEX,0BrBvCa;EqBwCb,sBrBxCa;CqBkDd;;AARC;;EAKI,gDrB/CS;CqBiDZ;;ADzBH;ECXA,erB9CgB;EqB+ChB,8BAA6B;EAC7B,uBAAsB;EACtB,sBrBjDgB;CoB2Df;;ACRD;EACE,erB5Cc;EqB6Cd,0BrBrDc;EqBsDd,sBrBtDc;CqBuDf;;AAED;EAEE,kDrB3Dc;CqB4Df;;AAED;EAEE,erBhEc;EqBiEd,8BAA6B;CAC9B;;AAED;;EAGE,erB/Dc;EqBgEd,0BrBxEc;EqByEd,sBrBzEc;CqBmFf;;AARC;;EAKI,kDrBhFU;CqBkFb;;ADzBH;ECXA,erBvCgB;EqBwChB,8BAA6B;EAC7B,uBAAsB;EACtB,sBrB1CgB;CoBoDf;;ACRD;EACE,YrBrDW;EqBsDX,0BrB9Cc;EqB+Cd,sBrB/Cc;CqBgDf;;AAED;EAEE,+CrBpDc;CqBqDf;;AAED;EAEE,erBzDc;EqB0Dd,8BAA6B;CAC9B;;AAED;;EAGE,YrBxEW;EqByEX,0BrBjEc;EqBkEd,sBrBlEc;CqB4Ef;;AARC;;EAKI,+CrBzEU;CqB2Eb;;ADdL;EACE,iBpBoL+B;EoBnL/B,epBzCe;EoB0Cf,8BAA6B;CAuB9B;;AlB7FC;EkByEE,epBoFgD;EoBnFhD,2BpBoFiC;EoBnFjC,8BAA6B;EAC7B,0BAAyB;ClB5EL;;AkBmExB;EAcI,2BpB6EiC;EoB5EjC,0BAAyB;EACzB,iBAAgB;CACjB;;AAjBH;EAqBI,epBpFc;EoBqFd,qBAAoB;CACrB;;AAUH;ECbE,qBrBuQgC;EqBtQhC,mBrB4JoD;EqB3JpD,iBrBwH+B;EqBrH7B,sBrB4H+B;CoBlHlC;;AAED;ECjBE,wBrBmQiC;EqBlQjC,oBrB6JoD;EqB5JpD,iBrByH+B;EqBtH7B,sBrB6H+B;CoB/GlC;;AAOD;EACE,eAAc;EACd,YAAW;CAMZ;;AARD;EAMI,mBpBwQ+B;CoBvQhC;;AAIH;;;EAII,YAAW;CACZ;;AE3IH;ELGM,iCjB4O2C;CsBzOhD;;ALCC;EKPF;ILQI,iBAAgB;GKFnB;CrBgrFA;;AqBtrFD;EAII,WAAU;CACX;;AAGH;EAEI,cAAa;CACd;;AAGH;EACE,mBAAkB;EAClB,UAAS;EACT,iBAAgB;ELdZ,8BjB6OwC;CsB7N7C;;ALZC;EKOF;ILNI,iBAAgB;GKWnB;CrBwrFA;;AsB5sFD;;;;EAIE,mBAAkB;CACnB;;ACuBG;EACE,sBAAqB;EACrB,SAAQ;EACR,UAAS;EACT,qBAA+B;EAC/B,wBAAkC;EAClC,YAAW;EAlCf,wBAA8B;EAC9B,sCAA4C;EAC5C,iBAAgB;EAChB,qCAA2C;CAuCxC;;AAkBD;EACE,eAAc;CACf;;ADjDL;EACE,mBAAkB;EAClB,UAAS;EACT,QAAO;EACP,cvBklBsC;EuBjlBtC,cAAa;EACb,YAAW;EACX,iBvBijBuC;EuBhjBvC,kBAA8B;EAC9B,qBAA4B;EAC5B,gBvBuOgC;EuBtOhC,evBNgB;EuBOhB,iBAAgB;EAChB,iBAAgB;EAChB,uBvBlBa;EuBmBb,6BAA4B;EAC5B,sCvBVa;EOhBX,uBP+NgC;CuBlMnC;;AAED;EACE,SAAQ;EACR,WAAU;CACX;;AAID;EAEI,UAAS;EACT,aAAY;EACZ,cAAa;EACb,wBvByhBuC;CuBxhBxC;;ACnBC;EACE,sBAAqB;EACrB,SAAQ;EACR,UAAS;EACT,qBAA+B;EAC/B,wBAAkC;EAClC,YAAW;EA3Bf,cAAa;EACb,sCAA4C;EAC5C,2BAAiC;EACjC,qCAA2C;CAgCxC;;AAkBD;EACE,eAAc;CACf;;ADRL;EAEI,OAAM;EACN,YAAW;EACX,WAAU;EACV,cAAa;EACb,sBvB2gBuC;CuB1gBxC;;ACjCC;EACE,sBAAqB;EACrB,SAAQ;EACR,UAAS;EACT,qBAA+B;EAC/B,wBAAkC;EAClC,YAAW;EApBf,oCAA0C;EAC1C,gBAAe;EACf,uCAA6C;EAC7C,yBAA+B;CAyB5B;;AAkBD;EACE,eAAc;CACf;;AAlCD;EDsCE,kBAAiB;CAClB;;AAIL;EAEI,OAAM;EACN,YAAW;EACX,WAAU;EACV,cAAa;EACb,uBvB0fuC;CuBzfxC;;AClDC;EACE,sBAAqB;EACrB,SAAQ;EACR,UAAS;EACT,qBAA+B;EAC/B,wBAAkC;EAClC,YAAW;CAQZ;;AAdD;EAkBI,cAAa;CACd;;AAED;EACE,sBAAqB;EACrB,SAAQ;EACR,UAAS;EACT,sBAAgC;EAChC,wBAAkC;EAClC,YAAW;EAlCjB,oCAA0C;EAC1C,0BAAgC;EAChC,uCAA6C;CAkCxC;;AAGH;EACE,eAAc;CACf;;AAbC;EDkCA,kBAAiB;CAClB;;AAML;EAKI,YAAW;EACX,aAAY;CACb;;AAKH;EElGE,UAAS;EACT,iBAAmB;EACnB,iBAAgB;EAChB,8BzBIgB;CuB6FjB;;AAKD;EACE,eAAc;EACd,YAAW;EACX,wBvByewC;EuBxexC,YAAW;EACX,iBvBiJ+B;EuBhJ/B,evBjGgB;EuBkGhB,oBAAmB;EACnB,oBAAmB;EACnB,8BAA6B;EAC7B,UAAS;CAwBV;;ArBhIC;EqB2GE,evBsdqD;EuBrdrD,sBAAqB;EJtHrB,0BnBKc;CEQf;;AqB2FH;EAoBI,YvBxHW;EuByHX,sBAAqB;EJ7HrB,0BnBkCa;CuB6Fd;;AAvBH;EA2BI,evBzHc;EuB0Hd,8BAA6B;CAK9B;;AAGH;EACE,eAAc;CACf;;AAGD;EACE,eAAc;EACd,uBvBicwC;EuBhcxC,iBAAgB;EAChB,oBvBsGoD;EuBrGpD,evB5IgB;EuB6IhB,oBAAmB;CACpB;;AAGD;EACE,eAAc;EACd,wBvBubwC;EuBtbxC,evBjJgB;CuBkJjB;;AGlKD;;EAEE,mBAAkB;EAClB,4BAAoB;EAApB,qBAAoB;EACpB,uBAAsB;CAyBvB;;AA7BD;;EAOI,mBAAkB;EAClB,mBAAc;EAAd,eAAc;CAYf;;AxBXD;;EwBII,WAAU;CxBJQ;;AwBTxB;;;;EAkBM,WAAU;CACX;;AAnBL;;;;;;;;EA2BI,kB1BkM6B;C0BjM9B;;AAIH;EACE,qBAAa;EAAb,cAAa;EACb,oBAAe;EAAf,gBAAe;EACf,qBAA2B;EAA3B,4BAA2B;CAK5B;;AARD;EAMI,YAAW;CACZ;;AAGH;EAEI,eAAc;CACf;;AAHH;;EnB5BI,2BmBoC8B;EnBnC9B,8BmBmC8B;CAC/B;;AATH;;EnBdI,0BmB2B6B;EnB1B7B,6BmB0B6B;CAC9B;;AAeH;EACE,yBAAmC;EACnC,wBAAkC;CAWnC;;AAbD;;;EAOI,eAAc;CACf;;AAED;EACE,gBAAe;CAChB;;AAGH;EACE,wBAAsC;EACtC,uBAAqC;CACtC;;AAED;EACE,uBAAsC;EACtC,sBAAqC;CACtC;;AAmBD;EACE,2BAAsB;EAAtB,uBAAsB;EACtB,sBAAuB;EAAvB,wBAAuB;EACvB,sBAAuB;EAAvB,wBAAuB;CAyBxB;;AA5BD;;EAOI,YAAW;CACZ;;AARH;;;;EAcI,iB1B8F6B;E0B7F7B,eAAc;CACf;;AAhBH;;EnB5FI,8BmBiH+B;EnBhH/B,6BmBgH+B;CAChC;;AAtBH;;EnB1GI,0BmBoI4B;EnBnI5B,2BmBmI4B;CAC7B;;AAgBH;;EAGI,iBAAgB;CAQjB;;AAXH;;;;EAOM,mBAAkB;EAClB,uBAAsB;EACtB,qBAAoB;CACrB;;ACnKL;EACE,mBAAkB;EAClB,qBAAa;EAAb,cAAa;EACb,oBAAe;EAAf,gBAAe;EACf,wBAAoB;EAApB,qBAAoB;EACpB,YAAW;CA+CZ;;AApDD;;;EAUI,mBAAkB;EAClB,mBAAc;EAAd,eAAc;EAGd,UAAS;EACT,iBAAgB;CAOjB;;AAtBH;;;;;;;;;EAoBM,kB3BsM2B;C2BrM5B;;AArBL;;;EA4BI,WAAU;CACX;;AA7BH;EAiCI,WAAU;CACX;;AAlCH;;EpBWI,2BoB2BmD;EpB1BnD,8BoB0BmD;CAAK;;AAtC5D;;EpByBI,0BoBcmD;EpBbnD,6BoBamD;CAAK;;AAvC5D;EA6CI,qBAAa;EAAb,cAAa;EACb,uBAAmB;EAAnB,oBAAmB;CAKpB;;AAnDH;;EpBWI,2BoBsC6E;EpBrC7E,8BoBqC6E;CAAK;;AAjDtF;EpByBI,0BoByBsE;EpBxBtE,6BoBwBsE;CAAK;;AAW/E;;EAEE,qBAAa;EAAb,cAAa;CAgBd;;AAlBD;;EAQI,mBAAkB;EAClB,WAAU;CACX;;AAVH;;;;;;;;EAgBI,kB3B6I6B;C2B5I9B;;AAGH;EAAuB,mB3ByIU;C2BzI4B;;AAC7D;EAAsB,kB3BwIW;C2BxI0B;;AAQ3D;EACE,qBAAa;EAAb,cAAa;EACb,uBAAmB;EAAnB,oBAAmB;EACnB,0B3B2PkC;E2B1PlC,iBAAgB;EAChB,gB3B0JgC;E2BzJhC,iB3B8J+B;E2B7J/B,iB3BiK+B;E2BhK/B,e3BvFgB;E2BwFhB,mBAAkB;EAClB,oBAAmB;EACnB,0B3B/FgB;E2BgGhB,0B3B9FgB;EOVd,uBP+NgC;C2B/GnC;;AApBD;;EAkBI,cAAa;CACd;;AASH;;;;;EAKE,6B3BkU+F;E2BjU/F,qB3BwOgC;E2BvOhC,mB3B6HoD;E2B5HpD,iB3ByF+B;EOzN7B,sBPgO+B;C2B9FlC;;AAED;;;;;EAKE,8B3BmT+F;E2BlT/F,wB3BwNiC;E2BvNjC,oB3BkHoD;E2BjHpD,iB3B8E+B;EO1N7B,sBPiO+B;C2BnFlC;;AAUD;;;;;;EpB3II,2BoBiJ4B;EpBhJ5B,8BoBgJ4B;CAC/B;;AAED;;;;;;EpBtII,0BoB4I2B;EpB3I3B,6BoB2I2B;CAC9B;;ACnKD;EACE,mBAAkB;EAClB,eAAc;EACd,mBAAiD;EACjD,qB5B2c4C;C4B1c7C;;AAED;EACE,4BAAoB;EAApB,qBAAoB;EACpB,mB5Buc0C;C4Btc3C;;AAED;EACE,mBAAkB;EAClB,YAAW;EACX,WAAU;CA4BX;;AA/BD;EAMI,Y5BjBW;EmBJX,0BnBkCa;C4BVd;;AATH;EAaI,iE5BMa;C4BLd;;AAdH;EAiBI,Y5B5BW;E4B6BX,0B5Boc8E;C4Blc/E;;AApBH;EAwBM,e5B7BY;C4BkCb;;AA7BL;EA2BQ,0B5BpCU;C4BqCX;;AASP;EACE,mBAAkB;EAClB,iBAAgB;CA8BjB;;AAhCD;EAMI,mBAAkB;EAClB,aAAiF;EACjF,c5BsZ0C;E4BrZ1C,eAAc;EACd,Y5BuZwC;E4BtZxC,a5BsZwC;E4BrZxC,qBAAoB;EACpB,YAAW;EACX,0BAAiB;EAAjB,uBAAiB;EAAjB,sBAAiB;EAAjB,kBAAiB;EACjB,0B5B5Dc;C4B8Df;;AAjBH;EAqBI,mBAAkB;EAClB,aAAiF;EACjF,c5BuY0C;E4BtY1C,eAAc;EACd,Y5BwYwC;E4BvYxC,a5BuYwC;E4BtYxC,YAAW;EACX,6BAA4B;EAC5B,mCAAkC;EAClC,yB5BqY2C;C4BpY5C;;AAQH;ErB7FI,uBP+NgC;C4B/HjC;;AAHH;ET3FI,0BnBkCa;C4BiEZ;;AARL;EAUM,2Nb/DqI;CagEtI;;AAXL;ET3FI,0BnBkCa;C4B2EZ;;AAlBL;EAoBM,wKbzEqI;Ca0EtI;;AArBL;EA0BM,yC5BnFW;C4BoFZ;;AA3BL;EA6BM,yC5BtFW;C4BuFZ;;AAQL;EAEI,mB5B6W+C;C4B5WhD;;AAHH;ETjII,0BnBkCa;C4BuGZ;;AARL;EAUM,qKbrGqI;CasGtI;;AAXL;EAgBM,yC5B/GW;C4BgHZ;;AAWL;EACE,sBAAqB;EACrB,YAAW;EACX,4B5BuR4F;E4BtR5F,2C5BmVwC;E4BlVxC,iB5BgG+B;E4B/F/B,e5BxJgB;E4ByJhB,uBAAsB;EACtB,uNAAsG;EACtG,0B5BsV0C;E4BrV1C,0B5B/JgB;E4BiKd,uB5BoDgC;E4B/ClC,yBAAgB;EAAhB,sBAAgB;EAAhB,iBAAgB;CAsCjB;;AAvDD;EAoBI,sB5B2PsE;E4B1PtE,WAAU;EAIR,kD5BsPoE;C4B1OvE;;AArCH;EAkCM,e5BpLY;E4BqLZ,uB5B5LS;C4B6LV;;AApCL;EAyCI,aAAY;EACZ,uB5B6SsC;E4B5StC,uBAAsB;CACvB;;AA5CH;EA+CI,e5BlMc;E4BmMd,0B5BvMc;C4BwMf;;AAjDH;EAqDI,WAAU;CACX;;AAGH;EACE,8B5BmO+F;E4BlO/F,sB5B2RyC;E4B1RzC,yB5B0RyC;E4BzRzC,e5B8SqC;C4B7StC;;AAED;EACE,6B5B+N+F;E4B9N/F,sB5BoRyC;E4BnRzC,yB5BmRyC;E4BlRzC,gB5B0SsC;C4BzSvC;;AAOD;EACE,mBAAkB;EAClB,sBAAqB;EACrB,YAAW;EACX,4B5B0M4F;E4BzM5F,iBAAgB;CACjB;;AAED;EACE,mBAAkB;EAClB,WAAU;EACV,YAAW;EACX,4B5BkM4F;E4BjM5F,UAAS;EACT,WAAU;CAoBX;;AA1BD;EASI,sB5BkLsE;E4BjLtE,iD5BzNa;C4B8Nd;;AAfH;EAaM,sB5B8KoE;C4B7KrE;;AAdL;EAkBI,0B5B7Pc;C4B8Pf;;AAnBH;EAuBM,kB5BySQ;C4BxST;;AAIL;EACE,mBAAkB;EAClB,OAAM;EACN,SAAQ;EACR,QAAO;EACP,WAAU;EACV,4B5BoK4F;E4BnK5F,0B5BoEkC;E4BnElC,iB5BnB+B;E4BoB/B,e5B3QgB;E4B4QhB,uB5BnRa;E4BoRb,0B5BhRgB;EOVd,uBP+NgC;C4B+EnC;;AA/BD;EAgBI,mBAAkB;EAClB,OAAM;EACN,SAAQ;EACR,UAAS;EACT,WAAU;EACV,eAAc;EACd,gB5BmJ2G;E4BlJ3G,0B5BoDgC;E4BnDhC,iB5BnC6B;E4BoC7B,e5B3Rc;E4B4Rd,kBAAiB;ETvSjB,0BnBMc;E4BmSd,+B5BjSc;EOVd,mCqB4SgF;CACjF;;AASH;EACE,YAAW;EACX,gBAAe;EACf,8BAA6B;EAC7B,yBAAgB;EAAhB,sBAAgB;EAAhB,iBAAgB;CA4GjB;;AAhHD;EAOI,cAAa;CAOd;;AAdH;EAW8B,iE5B7Rb;C4B6RiE;;AAXlF;EAY8B,iE5B9Rb;C4B8RiE;;AAZlF;EAa8B,iE5B/Rb;C4B+RiE;;AAblF;EAiBI,UAAS;CACV;;AAlBH;EAqBI,Y5B4M6C;E4B3M7C,a5B2M6C;E4B1M7C,qBAA2E;ET3U3E,0BnBkCa;E4B2Sb,U5B2M0C;EO1hB1C,oBP2hB6C;EiB1hB3C,6GjBid+H;E4B/HjI,yBAAgB;EAAhB,iBAAgB;CAKjB;;AXnVD;EWiTF;IXhTI,iBAAgB;GWkVjB;C3B2nGF;;A2B7pGD;ETpTI,0BnB6hB2E;C4BxM1E;;AAjCL;EAqCI,Y5BqLoC;E4BpLpC,e5BqLqC;E4BpLrC,mBAAkB;EAClB,gB5BoLuC;E4BnLvC,0B5BtVc;E4BuVd,0BAAyB;ErBhWzB,oBPohBoC;C4BjLrC;;AA7CH;EAgDI,Y5BiL6C;E4BhL7C,a5BgL6C;EmBrhB7C,0BnBkCa;E4BqUb,U5BiL0C;EO1hB1C,oBP2hB6C;EiB1hB3C,6GjBid+H;E4BrGjI,sBAAgB;EAAhB,iBAAgB;CAKjB;;AX7WD;EWiTF;IXhTI,iBAAgB;GW4WjB;C3B+nGF;;A2B3rGD;ETpTI,0BnB6hB2E;C4B9K1E;;AA3DL;EA+DI,Y5B2JoC;E4B1JpC,e5B2JqC;E4B1JrC,mBAAkB;EAClB,gB5B0JuC;E4BzJvC,0B5BhXc;E4BiXd,0BAAyB;ErB1XzB,oBPohBoC;C4BvJrC;;AAvEH;EA0EI,Y5BuJ6C;E4BtJ7C,a5BsJ6C;E4BrJ7C,cAAa;EACb,qB5BtC+B;E4BuC/B,oB5BvC+B;EmB3V/B,0BnBkCa;E4BkWb,U5BoJ0C;EO1hB1C,oBP2hB6C;EiB1hB3C,6GjBid+H;E4BxEjI,iBAAgB;CAKjB;;AX1YD;EWiTF;IXhTI,iBAAgB;GWyYjB;C3BmoGF;;A2B5tGD;ETpTI,0BnB6hB2E;C4BjJ1E;;AAxFL;EA4FI,Y5B8HoC;E4B7HpC,e5B8HqC;E4B7HrC,mBAAkB;EAClB,gB5B6HuC;E4B5HvC,8BAA6B;EAC7B,0BAAyB;EACzB,qBAA+C;CAEhD;;AApGH;EAuGI,0B5BpZc;EOTd,oBPohBoC;C4BrHrC;;AAzGH;EA4GI,mBAAkB;EAClB,0B5B1Zc;EOTd,oBPohBoC;C4B/GrC;;AAGH;;;EXvaM,6GjBid+H;C4BtCpI;;AXvaC;EWmaF;;;IXlaI,iBAAgB;GWsanB;C3B6oGA;;A4BxjHD;EACE,qBAAa;EAAb,cAAa;EACb,oBAAe;EAAf,gBAAe;EACf,gBAAe;EACf,iBAAgB;EAChB,iBAAgB;CACjB;;AAED;EACE,eAAc;EACd,qB7BgmBsC;C6BtlBvC;;A3BTC;E2BEE,sBAAqB;C3BCtB;;A2BNH;EAUI,e7BPc;C6BQf;;AAOH;EACE,iC7BnBgB;C6BqDjB;;AAnCD;EAII,oB7B6L6B;C6B5L9B;;AALH;EAQI,8BAAgD;EtB7BhD,gCPyNgC;EOxNhC,iCPwNgC;C6BhLjC;;A3BnCD;E2B2BI,sC7B9BY;CEMf;;A2BYH;EAgBM,e7B/BY;E6BgCZ,8BAA6B;EAC7B,0BAAyB;CAC1B;;AAnBL;;EAwBI,e7BtCc;E6BuCd,uB7B9CW;E6B+CX,mC7B/CW;C6BgDZ;;AA3BH;EA+BI,iB7BkK6B;EOtN7B,0BsBsD4B;EtBrD5B,2BsBqD4B;CAC7B;;AAQH;EtBrEI,uBP+NgC;C6BvJjC;;AAHH;;EAOI,Y7BtEW;E6BuEX,0B7BzCa;C6B0Cd;;AAQH;EAEI,mBAA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C3NnC;;AAED;EAGI,qBhCg3BqC;CgCx2BtC;;AAXH;EAMM,sBAAqB;EACrB,sBhC42BmC;EgC32BnC,ehCFY;EgCGZ,ahCi3BuC;CgCh3BxC;;AAVL;EAoBI,2BAA0B;CAC3B;;AArBH;EAwBI,sBAAqB;CACtB;;AAzBH;EA4BI,ehCtBc;CgCuBf;;ACvCH;EACE,qBAAa;EAAb,cAAa;E7BGb,gBAAe;EACf,iBAAgB;EGDd,uBP+NgC;CiC/NnC;;AAED;EACE,mBAAkB;EAClB,eAAc;EACd,wBjC2pBwC;EiC1pBxC,kBjCsN+B;EiCrN/B,kBjC8pBsC;EiC7pBtC,ejC4Be;EiC3Bf,uBjCHa;EiCIb,0BjCDgB;CiCqBjB;;AA5BD;EAWI,WAAU;EACV,ejCuJgD;EiCtJhD,sBAAqB;EACrB,0BjCRc;EiCSd,sBjCRc;CiCSf;;AAhBH;EAmBI,WAAU;EACV,WjCupBiC;EiCtpBjC,iDjCaa;CiCZd;;AAtBH;EA0BI,gBAAe;CAChB;;AAGH;EAGM,eAAc;E1BRhB,gCPoMgC;EOnMhC,mCPmMgC;CiC1L/B;;AALL;E1BnBI,iCPkNgC;EOjNhC,oCPiNgC;CiCrL/B;;AAVL;EAcI,WAAU;EACV,YjCzCW;EiC0CX,0BjCZa;EiCab,sBjCba;CiCcd;;AAlBH;EAqBI,ejCzCc;EiC0Cd,qBAAoB;EAEpB,aAAY;EACZ,uBjCnDW;EiCoDX,sBjCjDc;CiCkDf;;AC5DD;EACE,wBlCoqBsC;EkCnqBtC,mBlC2PkD;EkC1PlD,iBlCuN6B;CkCtN9B;;AAIG;E3BoBF,+BPqM+B;EOpM/B,kCPoM+B;CkCvN5B;;AAGD;E3BCF,gCPmN+B;EOlN/B,mCPkN+B;CkClN5B;;AAfL;EACE,wBlCkqBqC;EkCjqBrC,oBlC4PkD;EkC3PlD,iBlCwN6B;CkCvN9B;;AAIG;E3BoBF,+BPsM+B;EOrM/B,kCPqM+B;CkCxN5B;;AAGD;E3BCF,gCPoN+B;EOnN/B,mCPmN+B;CkCnN5B;;ACbP;EACE,sBAAqB;EACrB,sBnCowBsC;EmCnwBtC,enCgwBqC;EmC/vBrC,iBnC4P+B;EmC3P/B,eAAc;EACd,mBAAkB;EAClB,oBAAmB;EACnB,yBAAwB;E5BTtB,uBP+NgC;CmC/MnC;;AAfD;EAaI,cAAa;CACd;;AAIH;EACE,mBAAkB;EAClB,UAAS;CACV;;AAMD;EACE,qBnC6uBsC;EmC5uBtC,oBnC4uBsC;EO1wBpC,qBP6wBqC;CmC7uBxC;;AAOC;EC1CA,YpCSa;EoCRb,0BpCsCe;CmCKd;;AjC7BD;EkCVI,YpCIS;EoCHT,sBAAqB;EACrB,0BAAkC;ClCWrC;;AiCwBD;EC1CA,YpCSa;EoCRb,0BpCcgB;CmC6Bf;;AjC7BD;EkCVI,YpCIS;EoCHT,sBAAqB;EACrB,0BAAkC;ClCWrC;;AiCwBD;EC1CA,YpCSa;EoCRb,0BpC6Ce;CmCFd;;AjC7BD;EkCVI,YpCIS;EoCHT,sBAAqB;EACrB,0BAAkC;ClCWrC;;AiCwBD;EC1CA,YpCSa;EoCRb,0BpC+Ce;CmCJd;;AjC7BD;EkCVI,YpCIS;EoCHT,sBAAqB;EACrB,0BAAkC;ClCWrC;;AiCwBD;EC1CA,epCkBgB;EoCjBhB,0BpC4Ce;CmCDd;;AjC7BD;EkCVI,epCaY;EoCZZ,sBAAqB;EACrB,0BAAkC;ClCWrC;;AiCwBD;EC1CA,YpCSa;EoCRb,0BpC0Ce;CmCCd;;AjC7BD;EkCVI,YpCIS;EoCHT,sBAAqB;EACrB,0BAAkC;ClCWrC;;AiCwBD;EC1CA,epCkBgB;EoCjBhB,0BpCSgB;CmCkCf;;AjC7BD;EkCVI,epCaY;EoCZZ,sBAAqB;EACrB,0BAAkC;ClCWrC;;AiCwBD;EC1CA,YpCSa;EoCRb,0BpCgBgB;CmC2Bf;;AjC7BD;EkCVI,YpCIS;EoCHT,sBAAqB;EACrB,0BAAkC;ClCWrC;;AmCnBH;EACE,mBAAoD;EACpD,oBrCgsBsC;EqC/rBtC,0BrCSgB;EORd,sBPgO+B;CqC3NlC;;A1BmDG;E0B5DJ;IAOI,mBrC2rBoC;GqCzrBvC;CpC++IA;;AoC7+ID;EACE,iBAAgB;EAChB,gBAAe;E9BTb,iB8BUsB;CACzB;;ACXD;EACE,mBAAkB;EAClB,yBtCmzByC;EsClzBzC,oBtCmzBsC;EsClzBtC,8BAA6C;E/BJ3C,uBP+NgC;CsCzNnC;;AAGD;EAEE,eAAc;CACf;;AAG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E2CKP,0B5BqE0D;E4BpE1D,sB5BoE0D;C4BnE3D;;AAdL;EACE,e5BgF8D;E4B/E9D,0B5B+E8D;C4BjE/D;;AzCHD;EyCPM,e5B2E0D;E4B1E1D,0BAAyC;CzCS9C;;AyChBD;EAWM,Y3CJO;E2CKP,0B5BqE0D;E4BpE1D,sB5BoE0D;C4BnE3D;;AAdL;EACE,e5BgF8D;E4B/E9D,0B5B+E8D;C4BjE/D;;AzCHD;EyCPM,e5B2E0D;E4B1E1D,0BAAyC;CzCS9C;;AyChBD;EAWM,Y3CJO;E2CKP,0B5BqE0D;E4BpE1D,sB5BoE0D;C4BnE3D;;AAdL;EACE,e5BgF8D;E4B/E9D,0B5B+E8D;C4BjE/D;;AzCHD;EyCPM,e5B2E0D;E4B1E1D,0BAAyC;CzCS9C;;AyChBD;EAWM,Y3CJO;E2CKP,0B5BqE0D;E4BpE1D,sB5BoE0D;C4BnE3D;;AAdL;EACE,e5BgF8D;E4B/E9D,0B5B+E8D;C4BjE/D;;AzCHD;EyCPM,e5B2E0D;E4B1E1D,0BAAyC;CzCS9C;;AyChBD;EAWM,Y3CJO;E2CKP,0B5BqE0D;E4BpE1D,sB5BoE0D;C4BnE3D;;AAdL;EACE,e5BgF8D;E4B/E9D,0B5B+E8D;C4BjE/D;;AzCHD;EyCPM,e5B2E0D;E4B1E1D,0BAAyC;CzCS9C;;AyChBD;EAWM,Y3CJO;E2CKP,0B5BqE0D;E4BpE1D,sB5BoE0D;C4BnE3D;;AAdL;EACE,e5BgF8D;E4B/E9D,0B5B+E8D;C4BjE/D;;AzCHD;EyCPM,e5B2E0D;E4B1E1D,0BAAyC;CzCS9C;;AyChBD;EAWM,Y3CJO;E2CKP,0B5BqE0D;E4BpE1D,sB5BoE0D;C4BnE3D;;AAdL;EACE,e5BgF8D;E4B/E9D,0B5B+E8D;C4BjE/D;;AzCHD;EyCPM,e5B2E0D;E4B1E1D,0BAAyC;CzCS9C;;AyChBD;EAWM,Y3CJO;E2CKP,0B5BqE0D;E4BpE1D,sB5BoE0D;C4BnE3D;;ACjBP;EACE,aAAY;EACZ,kB5C+5BuD;E4C95BvD,iB5CkQ+B;E4CjQ/B,eAAc;EACd,Y5Cea;E4Cdb,0B5CIa;E4CHb,YAAW;CAaZ;;AApBD;EAkBI,gBAAe;CAChB;;A1CHD;E0C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","file":"bootstrap.css","sourcesContent":["/*!\n * Bootstrap v4.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n@import \"functions\";\n@import \"variables\";\n@import \"mixins\";\n@import \"root\";\n@import \"reboot\";\n@import \"type\";\n@import \"images\";\n@import \"code\";\n@import \"grid\";\n@import \"tables\";\n@import \"forms\";\n@import \"buttons\";\n@import \"transitions\";\n@import \"dropdown\";\n@import \"button-group\";\n@import \"input-group\";\n@import \"custom-forms\";\n@import \"nav\";\n@import \"navbar\";\n@import \"card\";\n@import \"breadcrumb\";\n@import \"pagination\";\n@import \"badge\";\n@import \"jumbotron\";\n@import \"alert\";\n@import \"progress\";\n@import \"media\";\n@import \"list-group\";\n@import \"close\";\n@import \"modal\";\n@import \"tooltip\";\n@import \"popover\";\n@import \"carousel\";\n@import \"utilities\";\n@import \"print\";\n",":root {\n // Custom variable values only support SassScript inside `#{}`.\n @each $color, $value in $colors {\n --#{$color}: #{$value};\n }\n\n @each $color, $value in $theme-colors {\n --#{$color}: #{$value};\n }\n\n @each $bp, $value in $grid-breakpoints {\n --breakpoint-#{$bp}: #{$value};\n }\n\n // Use `inspect` for lists so that quoted items keep the quotes.\n // See https://github.com/sass/sass/issues/2383#issuecomment-336349172\n --font-family-sans-serif: #{inspect($font-family-sans-serif)};\n --font-family-monospace: #{inspect($font-family-monospace)};\n}\n","// stylelint-disable at-rule-no-vendor-prefix, declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix\n\n// Reboot\n//\n// Normalization of HTML elements, manually forked from Normalize.css to remove\n// styles targeting irrelevant browsers while applying new styles.\n//\n// Normalize is licensed MIT. https://github.com/necolas/normalize.css\n\n\n// Document\n//\n// 1. Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.\n// 2. Change the default font family in all browsers.\n// 3. Correct the line height in all browsers.\n// 4. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS.\n// 5. Setting @viewport causes scrollbars to overlap content in IE11 and Edge, so\n// we force a non-overlapping, non-auto-hiding scrollbar to counteract.\n// 6. Change the default tap highlight to be completely transparent in iOS.\n\n*,\n*::before,\n*::after {\n box-sizing: border-box; // 1\n}\n\nhtml {\n font-family: sans-serif; // 2\n line-height: 1.15; // 3\n -webkit-text-size-adjust: 100%; // 4\n -ms-text-size-adjust: 100%; // 4\n -ms-overflow-style: scrollbar; // 5\n -webkit-tap-highlight-color: rgba($black, 0); // 6\n}\n\n// IE10+ doesn't honor `` in some cases.\n@at-root {\n @-ms-viewport {\n width: device-width;\n }\n}\n\n// stylelint-disable selector-list-comma-newline-after\n// Shim for \"new\" HTML5 structural elements to display correctly (IE10, older browsers)\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n// stylelint-enable selector-list-comma-newline-after\n\n// Body\n//\n// 1. Remove the margin in all browsers.\n// 2. As a best practice, apply a default `background-color`.\n// 3. Set an explicit initial text-align value so that we can later use the\n// the `inherit` value on things like `` elements.\n\nbody {\n margin: 0; // 1\n font-family: $font-family-base;\n font-size: $font-size-base;\n font-weight: $font-weight-base;\n line-height: $line-height-base;\n color: $body-color;\n text-align: left; // 3\n background-color: $body-bg; // 2\n}\n\n// Suppress the focus outline on elements that cannot be accessed via keyboard.\n// This prevents an unwanted focus outline from appearing around elements that\n// might still respond to pointer events.\n//\n// Credit: https://github.com/suitcss/base\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\n\n// Content grouping\n//\n// 1. Add the correct box sizing in Firefox.\n// 2. Show the overflow in Edge and IE.\n\nhr {\n box-sizing: content-box; // 1\n height: 0; // 1\n overflow: visible; // 2\n}\n\n\n//\n// Typography\n//\n\n// Remove top margins from headings\n//\n// By default, `

`-`

` all receive top and bottom margins. We nuke the top\n// margin for easier control within type scales as it avoids margin collapsing.\n// stylelint-disable selector-list-comma-newline-after\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: $headings-margin-bottom;\n}\n// stylelint-enable selector-list-comma-newline-after\n\n// Reset margins on paragraphs\n//\n// Similarly, the top margin on `

`s get reset. However, we also reset the\n// bottom margin to use `rem` units instead of `em`.\np {\n margin-top: 0;\n margin-bottom: $paragraph-margin-bottom;\n}\n\n// Abbreviations\n//\n// 1. Remove the bottom border in Firefox 39-.\n// 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n// 3. Add explicit cursor to indicate changed behavior.\n// 4. Duplicate behavior to the data-* attribute for our tooltip plugin\n\nabbr[title],\nabbr[data-original-title] { // 4\n text-decoration: underline; // 2\n text-decoration: underline dotted; // 2\n cursor: help; // 3\n border-bottom: 0; // 1\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: $dt-font-weight;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0; // Undo browser default\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\ndfn {\n font-style: italic; // Add the correct font style in Android 4.3-\n}\n\n// stylelint-disable font-weight-notation\nb,\nstrong {\n font-weight: bolder; // Add the correct font weight in Chrome, Edge, and Safari\n}\n// stylelint-enable font-weight-notation\n\nsmall {\n font-size: 80%; // Add the correct font size in all browsers\n}\n\n//\n// Prevent `sub` and `sup` elements from affecting the line height in\n// all browsers.\n//\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub { bottom: -.25em; }\nsup { top: -.5em; }\n\n\n//\n// Links\n//\n\na {\n color: $link-color;\n text-decoration: $link-decoration;\n background-color: transparent; // Remove the gray background on active links in IE 10.\n -webkit-text-decoration-skip: objects; // Remove gaps in links underline in iOS 8+ and Safari 8+.\n\n @include hover {\n color: $link-hover-color;\n text-decoration: $link-hover-decoration;\n }\n}\n\n// And undo these styles for placeholder links/named anchors (without href)\n// which have not been made explicitly keyboard-focusable (without tabindex).\n// It would be more straightforward to just use a[href] in previous block, but that\n// causes specificity issues in many other styles that are too complex to fix.\n// See https://github.com/twbs/bootstrap/issues/19402\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n\n @include hover-focus {\n color: inherit;\n text-decoration: none;\n }\n\n &:focus {\n outline: 0;\n }\n}\n\n\n//\n// Code\n//\n\npre,\ncode,\nkbd,\nsamp {\n font-family: $font-family-monospace;\n font-size: 1em; // Correct the odd `em` font sizing in all browsers.\n}\n\npre {\n // Remove browser default top margin\n margin-top: 0;\n // Reset browser default of `1em` to use `rem`s\n margin-bottom: 1rem;\n // Don't allow content to break outside\n overflow: auto;\n // We have @viewport set which causes scrollbars to overlap content in IE11 and Edge, so\n // we force a non-overlapping, non-auto-hiding scrollbar to counteract.\n -ms-overflow-style: scrollbar;\n}\n\n\n//\n// Figures\n//\n\nfigure {\n // Apply a consistent margin strategy (matches our type styles).\n margin: 0 0 1rem;\n}\n\n\n//\n// Images and content\n//\n\nimg {\n vertical-align: middle;\n border-style: none; // Remove the border on images inside links in IE 10-.\n}\n\nsvg {\n // Workaround for the SVG overflow bug in IE10/11 is still required.\n // See https://github.com/twbs/bootstrap/issues/26878\n overflow: hidden;\n vertical-align: middle;\n}\n\n\n//\n// Tables\n//\n\ntable {\n border-collapse: collapse; // Prevent double borders\n}\n\ncaption {\n padding-top: $table-cell-padding;\n padding-bottom: $table-cell-padding;\n color: $table-caption-color;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n // Matches default `` alignment by inheriting from the ``, or the\n // closest parent with a set `text-align`.\n text-align: inherit;\n}\n\n\n//\n// Forms\n//\n\nlabel {\n // Allow labels to use `margin` for spacing.\n display: inline-block;\n margin-bottom: $label-margin-bottom;\n}\n\n// Remove the default `border-radius` that macOS Chrome adds.\n//\n// Details at https://github.com/twbs/bootstrap/issues/24093\nbutton {\n border-radius: 0;\n}\n\n// Work around a Firefox/IE bug where the transparent `button` background\n// results in a loss of the default `button` focus styles.\n//\n// Credit: https://github.com/suitcss/base/\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0; // Remove the margin in Firefox and Safari\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible; // Show the overflow in Edge\n}\n\nbutton,\nselect {\n text-transform: none; // Remove the inheritance of text transform in Firefox\n}\n\n// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`\n// controls in Android 4.\n// 2. Correct the inability to style clickable types in iOS and Safari.\nbutton,\nhtml [type=\"button\"], // 1\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button; // 2\n}\n\n// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box; // 1. Add the correct box sizing in IE 10-\n padding: 0; // 2. Remove the padding in IE 10-\n}\n\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n // Remove the default appearance of temporal inputs to avoid a Mobile Safari\n // bug where setting a custom line-height prevents text from being vertically\n // centered within the input.\n // See https://bugs.webkit.org/show_bug.cgi?id=139848\n // and https://github.com/twbs/bootstrap/issues/11266\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto; // Remove the default vertical scrollbar in IE.\n // Textareas should really only resize vertically so they don't break their (horizontal) containers.\n resize: vertical;\n}\n\nfieldset {\n // Browsers set a default `min-width: min-content;` on fieldsets,\n // unlike e.g. `

`s, which have `min-width: 0;` by default.\n // So we reset that to ensure fieldsets behave more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359\n // and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements\n min-width: 0;\n // Reset the default outline behavior of fieldsets so they don't affect page layout.\n padding: 0;\n margin: 0;\n border: 0;\n}\n\n// 1. Correct the text wrapping in Edge and IE.\n// 2. Correct the color inheritance from `fieldset` elements in IE.\nlegend {\n display: block;\n width: 100%;\n max-width: 100%; // 1\n padding: 0;\n margin-bottom: .5rem;\n font-size: 1.5rem;\n line-height: inherit;\n color: inherit; // 2\n white-space: normal; // 1\n}\n\nprogress {\n vertical-align: baseline; // Add the correct vertical alignment in Chrome, Firefox, and Opera.\n}\n\n// Correct the cursor style of increment and decrement buttons in Chrome.\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n // This overrides the extra rounded corners on search inputs in iOS so that our\n // `.form-control` class can properly style them. Note that this cannot simply\n // be added to `.form-control` as it's not specific enough. For details, see\n // https://github.com/twbs/bootstrap/issues/11586.\n outline-offset: -2px; // 2. Correct the outline style in Safari.\n -webkit-appearance: none;\n}\n\n//\n// Remove the inner padding and cancel buttons in Chrome and Safari on macOS.\n//\n\n[type=\"search\"]::-webkit-search-cancel-button,\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// 1. Correct the inability to style clickable types in iOS and Safari.\n// 2. Change font properties to `inherit` in Safari.\n//\n\n::-webkit-file-upload-button {\n font: inherit; // 2\n -webkit-appearance: button; // 1\n}\n\n//\n// Correct element displays\n//\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item; // Add the correct display in all browsers\n cursor: pointer;\n}\n\ntemplate {\n display: none; // Add the correct display in IE\n}\n\n// Always hide an element with the `hidden` HTML attribute (from PureCSS).\n// Needed for proper display in IE 10-.\n[hidden] {\n display: none !important;\n}\n","// Variables\n//\n// Variables should follow the `$component-state-property-size` formula for\n// consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.\n\n\n//\n// Color system\n//\n\n$white: #fff !default;\n$gray-100: #f8f9fa !default;\n$gray-200: #e9ecef !default;\n$gray-300: #dee2e6 !default;\n$gray-400: #ced4da !default;\n$gray-500: #adb5bd !default;\n$gray-600: #6c757d !default;\n$gray-700: #495057 !default;\n$gray-800: #343a40 !default;\n$gray-900: #212529 !default;\n$black: #000 !default;\n\n$grays: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$grays: map-merge(\n (\n \"100\": $gray-100,\n \"200\": $gray-200,\n \"300\": $gray-300,\n \"400\": $gray-400,\n \"500\": $gray-500,\n \"600\": $gray-600,\n \"700\": $gray-700,\n \"800\": $gray-800,\n \"900\": $gray-900\n ),\n $grays\n);\n\n\n$blue: #007bff !default;\n$indigo: #6610f2 !default;\n$purple: #6f42c1 !default;\n$pink: #e83e8c !default;\n$red: #dc3545 !default;\n$orange: #fd7e14 !default;\n$yellow: #ffc107 !default;\n$green: #28a745 !default;\n$teal: #20c997 !default;\n$cyan: #17a2b8 !default;\n\n$colors: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$colors: map-merge(\n (\n \"blue\": $blue,\n \"indigo\": $indigo,\n \"purple\": $purple,\n \"pink\": $pink,\n \"red\": $red,\n \"orange\": $orange,\n \"yellow\": $yellow,\n \"green\": $green,\n \"teal\": $teal,\n \"cyan\": $cyan,\n \"white\": $white,\n \"gray\": $gray-600,\n \"gray-dark\": $gray-800\n ),\n $colors\n);\n\n$primary: $blue !default;\n$secondary: $gray-600 !default;\n$success: $green !default;\n$info: $cyan !default;\n$warning: $yellow !default;\n$danger: $red !default;\n$light: $gray-100 !default;\n$dark: $gray-800 !default;\n\n$theme-colors: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$theme-colors: map-merge(\n (\n \"primary\": $primary,\n \"secondary\": $secondary,\n \"success\": $success,\n \"info\": $info,\n \"warning\": $warning,\n \"danger\": $danger,\n \"light\": $light,\n \"dark\": $dark\n ),\n $theme-colors\n);\n\n// Set a specific jump point for requesting color jumps\n$theme-color-interval: 8% !default;\n\n// The yiq lightness value that determines when the lightness of color changes from \"dark\" to \"light\". Acceptable values are between 0 and 255.\n$yiq-contrasted-threshold: 150 !default;\n\n// Customize the light and dark text colors for use in our YIQ color contrast function.\n$yiq-text-dark: $gray-900 !default;\n$yiq-text-light: $white !default;\n\n// Options\n//\n// Quickly modify global styling by enabling or disabling optional features.\n\n$enable-caret: true !default;\n$enable-rounded: true !default;\n$enable-shadows: false !default;\n$enable-gradients: false !default;\n$enable-transitions: true !default;\n$enable-hover-media-query: false !default; // Deprecated, no longer affects any compiled CSS\n$enable-grid-classes: true !default;\n$enable-print-styles: true !default;\n\n\n// Spacing\n//\n// Control the default styling of most Bootstrap elements by modifying these\n// variables. Mostly focused on spacing.\n// You can add more entries to the $spacers map, should you need more variation.\n\n$spacer: 1rem !default;\n$spacers: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$spacers: map-merge(\n (\n 0: 0,\n 1: ($spacer * .25),\n 2: ($spacer * .5),\n 3: $spacer,\n 4: ($spacer * 1.5),\n 5: ($spacer * 3)\n ),\n $spacers\n);\n\n// This variable affects the `.h-*` and `.w-*` classes.\n$sizes: () !default;\n// stylelint-disable-next-line scss/dollar-variable-default\n$sizes: map-merge(\n (\n 25: 25%,\n 50: 50%,\n 75: 75%,\n 100: 100%,\n auto: auto\n ),\n $sizes\n);\n\n// Body\n//\n// Settings for the `` element.\n\n$body-bg: $white !default;\n$body-color: $gray-900 !default;\n\n// Links\n//\n// Style anchor elements.\n\n$link-color: theme-color(\"primary\") !default;\n$link-decoration: none !default;\n$link-hover-color: darken($link-color, 15%) !default;\n$link-hover-decoration: underline !default;\n\n// Paragraphs\n//\n// Style p element.\n\n$paragraph-margin-bottom: 1rem !default;\n\n\n// Grid breakpoints\n//\n// Define the minimum dimensions at which your layout will change,\n// adapting to different screen sizes, for use in media queries.\n\n$grid-breakpoints: (\n xs: 0,\n sm: 576px,\n md: 768px,\n lg: 992px,\n xl: 1200px\n) !default;\n\n@include _assert-ascending($grid-breakpoints, \"$grid-breakpoints\");\n@include _assert-starts-at-zero($grid-breakpoints);\n\n\n// Grid containers\n//\n// Define the maximum width of `.container` for different screen sizes.\n\n$container-max-widths: (\n sm: 540px,\n md: 720px,\n lg: 960px,\n xl: 1140px\n) !default;\n\n@include _assert-ascending($container-max-widths, \"$container-max-widths\");\n\n\n// Grid columns\n//\n// Set the number of columns and specify the width of the gutters.\n\n$grid-columns: 12 !default;\n$grid-gutter-width: 30px !default;\n\n// Components\n//\n// Define common padding and border radius sizes and more.\n\n$line-height-lg: 1.5 !default;\n$line-height-sm: 1.5 !default;\n\n$border-width: 1px !default;\n$border-color: $gray-300 !default;\n\n$border-radius: .25rem !default;\n$border-radius-lg: .3rem !default;\n$border-radius-sm: .2rem !default;\n\n$box-shadow-sm: 0 .125rem .25rem rgba($black, .075) !default;\n$box-shadow: 0 .5rem 1rem rgba($black, .15) !default;\n$box-shadow-lg: 0 1rem 3rem rgba($black, .175) !default;\n\n$component-active-color: $white !default;\n$component-active-bg: theme-color(\"primary\") !default;\n\n$caret-width: .3em !default;\n\n$transition-base: all .2s ease-in-out !default;\n$transition-fade: opacity .15s linear !default;\n$transition-collapse: height .35s ease !default;\n\n\n// Fonts\n//\n// Font, line-height, and color for body text, headings, and more.\n\n// stylelint-disable value-keyword-case\n$font-family-sans-serif: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\" !default;\n$font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace !default;\n$font-family-base: $font-family-sans-serif !default;\n// stylelint-enable value-keyword-case\n\n$font-size-base: 1rem !default; // Assumes the browser default, typically `16px`\n$font-size-lg: ($font-size-base * 1.25) !default;\n$font-size-sm: ($font-size-base * .875) !default;\n\n$font-weight-light: 300 !default;\n$font-weight-normal: 400 !default;\n$font-weight-bold: 700 !default;\n\n$font-weight-base: $font-weight-normal !default;\n$line-height-base: 1.5 !default;\n\n$h1-font-size: $font-size-base * 2.5 !default;\n$h2-font-size: $font-size-base * 2 !default;\n$h3-font-size: $font-size-base * 1.75 !default;\n$h4-font-size: $font-size-base * 1.5 !default;\n$h5-font-size: $font-size-base * 1.25 !default;\n$h6-font-size: $font-size-base !default;\n\n$headings-margin-bottom: ($spacer / 2) !default;\n$headings-font-family: inherit !default;\n$headings-font-weight: 500 !default;\n$headings-line-height: 1.2 !default;\n$headings-color: inherit !default;\n\n$display1-size: 6rem !default;\n$display2-size: 5.5rem !default;\n$display3-size: 4.5rem !default;\n$display4-size: 3.5rem !default;\n\n$display1-weight: 300 !default;\n$display2-weight: 300 !default;\n$display3-weight: 300 !default;\n$display4-weight: 300 !default;\n$display-line-height: $headings-line-height !default;\n\n$lead-font-size: ($font-size-base * 1.25) !default;\n$lead-font-weight: 300 !default;\n\n$small-font-size: 80% !default;\n\n$text-muted: $gray-600 !default;\n\n$blockquote-small-color: $gray-600 !default;\n$blockquote-font-size: ($font-size-base * 1.25) !default;\n\n$hr-border-color: rgba($black, .1) !default;\n$hr-border-width: $border-width !default;\n\n$mark-padding: .2em !default;\n\n$dt-font-weight: $font-weight-bold !default;\n\n$kbd-box-shadow: inset 0 -.1rem 0 rgba($black, .25) !default;\n$nested-kbd-font-weight: $font-weight-bold !default;\n\n$list-inline-padding: .5rem !default;\n\n$mark-bg: #fcf8e3 !default;\n\n$hr-margin-y: $spacer !default;\n\n\n// Tables\n//\n// Customizes the `.table` component with basic values, each used across all table variations.\n\n$table-cell-padding: .75rem !default;\n$table-cell-padding-sm: .3rem !default;\n\n$table-bg: transparent !default;\n$table-accent-bg: rgba($black, .05) !default;\n$table-hover-bg: rgba($black, .075) !default;\n$table-active-bg: $table-hover-bg !default;\n\n$table-border-width: $border-width !default;\n$table-border-color: $gray-300 !default;\n\n$table-head-bg: $gray-200 !default;\n$table-head-color: $gray-700 !default;\n\n$table-dark-bg: $gray-900 !default;\n$table-dark-accent-bg: rgba($white, .05) !default;\n$table-dark-hover-bg: rgba($white, .075) !default;\n$table-dark-border-color: lighten($gray-900, 7.5%) !default;\n$table-dark-color: $body-bg !default;\n\n$table-striped-order: odd !default;\n\n$table-caption-color: $text-muted !default;\n\n// Buttons + Forms\n//\n// Shared variables that are reassigned to `$input-` and `$btn-` specific variables.\n\n$input-btn-padding-y: .375rem !default;\n$input-btn-padding-x: .75rem !default;\n$input-btn-line-height: $line-height-base !default;\n\n$input-btn-focus-width: .2rem !default;\n$input-btn-focus-color: rgba($component-active-bg, .25) !default;\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color !default;\n\n$input-btn-padding-y-sm: .25rem !default;\n$input-btn-padding-x-sm: .5rem !default;\n$input-btn-line-height-sm: $line-height-sm !default;\n\n$input-btn-padding-y-lg: .5rem !default;\n$input-btn-padding-x-lg: 1rem !default;\n$input-btn-line-height-lg: $line-height-lg !default;\n\n$input-btn-border-width: $border-width !default;\n\n\n// Buttons\n//\n// For each of Bootstrap's buttons, define text, background, and border color.\n\n$btn-padding-y: $input-btn-padding-y !default;\n$btn-padding-x: $input-btn-padding-x !default;\n$btn-line-height: $input-btn-line-height !default;\n\n$btn-padding-y-sm: $input-btn-padding-y-sm !default;\n$btn-padding-x-sm: $input-btn-padding-x-sm !default;\n$btn-line-height-sm: $input-btn-line-height-sm !default;\n\n$btn-padding-y-lg: $input-btn-padding-y-lg !default;\n$btn-padding-x-lg: $input-btn-padding-x-lg !default;\n$btn-line-height-lg: $input-btn-line-height-lg !default;\n\n$btn-border-width: $input-btn-border-width !default;\n\n$btn-font-weight: $font-weight-normal !default;\n$btn-box-shadow: inset 0 1px 0 rgba($white, .15), 0 1px 1px rgba($black, .075) !default;\n$btn-focus-width: $input-btn-focus-width !default;\n$btn-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$btn-disabled-opacity: .65 !default;\n$btn-active-box-shadow: inset 0 3px 5px rgba($black, .125) !default;\n\n$btn-link-disabled-color: $gray-600 !default;\n\n$btn-block-spacing-y: .5rem !default;\n\n// Allows for customizing button radius independently from global border radius\n$btn-border-radius: $border-radius !default;\n$btn-border-radius-lg: $border-radius-lg !default;\n$btn-border-radius-sm: $border-radius-sm !default;\n\n$btn-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n\n// Forms\n\n$label-margin-bottom: .5rem !default;\n\n$input-padding-y: $input-btn-padding-y !default;\n$input-padding-x: $input-btn-padding-x !default;\n$input-line-height: $input-btn-line-height !default;\n\n$input-padding-y-sm: $input-btn-padding-y-sm !default;\n$input-padding-x-sm: $input-btn-padding-x-sm !default;\n$input-line-height-sm: $input-btn-line-height-sm !default;\n\n$input-padding-y-lg: $input-btn-padding-y-lg !default;\n$input-padding-x-lg: $input-btn-padding-x-lg !default;\n$input-line-height-lg: $input-btn-line-height-lg !default;\n\n$input-bg: $white !default;\n$input-disabled-bg: $gray-200 !default;\n\n$input-color: $gray-700 !default;\n$input-border-color: $gray-400 !default;\n$input-border-width: $input-btn-border-width !default;\n$input-box-shadow: inset 0 1px 1px rgba($black, .075) !default;\n\n$input-border-radius: $border-radius !default;\n$input-border-radius-lg: $border-radius-lg !default;\n$input-border-radius-sm: $border-radius-sm !default;\n\n$input-focus-bg: $input-bg !default;\n$input-focus-border-color: lighten($component-active-bg, 25%) !default;\n$input-focus-color: $input-color !default;\n$input-focus-width: $input-btn-focus-width !default;\n$input-focus-box-shadow: $input-btn-focus-box-shadow !default;\n\n$input-placeholder-color: $gray-600 !default;\n$input-plaintext-color: $body-color !default;\n\n$input-height-border: $input-border-width * 2 !default;\n\n$input-height-inner: ($font-size-base * $input-btn-line-height) + ($input-btn-padding-y * 2) !default;\n$input-height: calc(#{$input-height-inner} + #{$input-height-border}) !default;\n\n$input-height-inner-sm: ($font-size-sm * $input-btn-line-height-sm) + ($input-btn-padding-y-sm * 2) !default;\n$input-height-sm: calc(#{$input-height-inner-sm} + #{$input-height-border}) !default;\n\n$input-height-inner-lg: ($font-size-lg * $input-btn-line-height-lg) + ($input-btn-padding-y-lg * 2) !default;\n$input-height-lg: calc(#{$input-height-inner-lg} + #{$input-height-border}) !default;\n\n$input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n$form-text-margin-top: .25rem !default;\n\n$form-check-input-gutter: 1.25rem !default;\n$form-check-input-margin-y: .3rem !default;\n$form-check-input-margin-x: .25rem !default;\n\n$form-check-inline-margin-x: .75rem !default;\n$form-check-inline-input-margin-x: .3125rem !default;\n\n$form-group-margin-bottom: 1rem !default;\n\n$input-group-addon-color: $input-color !default;\n$input-group-addon-bg: $gray-200 !default;\n$input-group-addon-border-color: $input-border-color !default;\n\n$custom-forms-transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n$custom-control-gutter: 1.5rem !default;\n$custom-control-spacer-x: 1rem !default;\n\n$custom-control-indicator-size: 1rem !default;\n$custom-control-indicator-bg: $gray-300 !default;\n$custom-control-indicator-bg-size: 50% 50% !default;\n$custom-control-indicator-box-shadow: inset 0 .25rem .25rem rgba($black, .1) !default;\n\n$custom-control-indicator-disabled-bg: $gray-200 !default;\n$custom-control-label-disabled-color: $gray-600 !default;\n\n$custom-control-indicator-checked-color: $component-active-color !default;\n$custom-control-indicator-checked-bg: $component-active-bg !default;\n$custom-control-indicator-checked-disabled-bg: rgba(theme-color(\"primary\"), .5) !default;\n$custom-control-indicator-checked-box-shadow: none !default;\n\n$custom-control-indicator-focus-box-shadow: 0 0 0 1px $body-bg, $input-btn-focus-box-shadow !default;\n\n$custom-control-indicator-active-color: $component-active-color !default;\n$custom-control-indicator-active-bg: lighten($component-active-bg, 35%) !default;\n$custom-control-indicator-active-box-shadow: none !default;\n\n$custom-checkbox-indicator-border-radius: $border-radius !default;\n$custom-checkbox-indicator-icon-checked: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$custom-checkbox-indicator-indeterminate-bg: $component-active-bg !default;\n$custom-checkbox-indicator-indeterminate-color: $custom-control-indicator-checked-color !default;\n$custom-checkbox-indicator-icon-indeterminate: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='#{$custom-checkbox-indicator-indeterminate-color}' d='M0 2h4'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$custom-checkbox-indicator-indeterminate-box-shadow: none !default;\n\n$custom-radio-indicator-border-radius: 50% !default;\n$custom-radio-indicator-icon-checked: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='#{$custom-control-indicator-checked-color}'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$custom-select-padding-y: .375rem !default;\n$custom-select-padding-x: .75rem !default;\n$custom-select-height: $input-height !default;\n$custom-select-indicator-padding: 1rem !default; // Extra padding to account for the presence of the background-image based indicator\n$custom-select-line-height: $input-btn-line-height !default;\n$custom-select-color: $input-color !default;\n$custom-select-disabled-color: $gray-600 !default;\n$custom-select-bg: $input-bg !default;\n$custom-select-disabled-bg: $gray-200 !default;\n$custom-select-bg-size: 8px 10px !default; // In pixels because image dimensions\n$custom-select-indicator-color: $gray-800 !default;\n$custom-select-indicator: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$custom-select-border-width: $input-btn-border-width !default;\n$custom-select-border-color: $input-border-color !default;\n$custom-select-border-radius: $border-radius !default;\n$custom-select-box-shadow: inset 0 1px 2px rgba($black, .075) !default;\n\n$custom-select-focus-border-color: $input-focus-border-color !default;\n$custom-select-focus-width: $input-btn-focus-width !default;\n$custom-select-focus-box-shadow: 0 0 0 $custom-select-focus-width rgba($custom-select-focus-border-color, .5) !default;\n\n$custom-select-font-size-sm: 75% !default;\n$custom-select-height-sm: $input-height-sm !default;\n\n$custom-select-font-size-lg: 125% !default;\n$custom-select-height-lg: $input-height-lg !default;\n\n$custom-range-track-width: 100% !default;\n$custom-range-track-height: .5rem !default;\n$custom-range-track-cursor: pointer !default;\n$custom-range-track-bg: $gray-300 !default;\n$custom-range-track-border-radius: 1rem !default;\n$custom-range-track-box-shadow: inset 0 .25rem .25rem rgba($black, .1) !default;\n\n$custom-range-thumb-width: 1rem !default;\n$custom-range-thumb-height: $custom-range-thumb-width !default;\n$custom-range-thumb-bg: $component-active-bg !default;\n$custom-range-thumb-border: 0 !default;\n$custom-range-thumb-border-radius: 1rem !default;\n$custom-range-thumb-box-shadow: 0 .1rem .25rem rgba($black, .1) !default;\n$custom-range-thumb-focus-box-shadow: 0 0 0 1px $body-bg, $input-btn-focus-box-shadow !default;\n$custom-range-thumb-focus-box-shadow-width: $input-btn-focus-width !default; // For focus box shadow issue in IE/Edge\n$custom-range-thumb-active-bg: lighten($component-active-bg, 35%) !default;\n\n$custom-file-height: $input-height !default;\n$custom-file-height-inner: $input-height-inner !default;\n$custom-file-focus-border-color: $input-focus-border-color !default;\n$custom-file-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$custom-file-disabled-bg: $input-disabled-bg !default;\n\n$custom-file-padding-y: $input-btn-padding-y !default;\n$custom-file-padding-x: $input-btn-padding-x !default;\n$custom-file-line-height: $input-btn-line-height !default;\n$custom-file-color: $input-color !default;\n$custom-file-bg: $input-bg !default;\n$custom-file-border-width: $input-btn-border-width !default;\n$custom-file-border-color: $input-border-color !default;\n$custom-file-border-radius: $input-border-radius !default;\n$custom-file-box-shadow: $input-box-shadow !default;\n$custom-file-button-color: $custom-file-color !default;\n$custom-file-button-bg: $input-group-addon-bg !default;\n$custom-file-text: (\n en: \"Browse\"\n) !default;\n\n\n// Form validation\n$form-feedback-margin-top: $form-text-margin-top !default;\n$form-feedback-font-size: $small-font-size !default;\n$form-feedback-valid-color: theme-color(\"success\") !default;\n$form-feedback-invalid-color: theme-color(\"danger\") !default;\n\n\n// Dropdowns\n//\n// Dropdown menu container and contents.\n\n$dropdown-min-width: 10rem !default;\n$dropdown-padding-y: .5rem !default;\n$dropdown-spacer: .125rem !default;\n$dropdown-bg: $white !default;\n$dropdown-border-color: rgba($black, .15) !default;\n$dropdown-border-radius: $border-radius !default;\n$dropdown-border-width: $border-width !default;\n$dropdown-divider-bg: $gray-200 !default;\n$dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;\n\n$dropdown-link-color: $gray-900 !default;\n$dropdown-link-hover-color: darken($gray-900, 5%) !default;\n$dropdown-link-hover-bg: $gray-100 !default;\n\n$dropdown-link-active-color: $component-active-color !default;\n$dropdown-link-active-bg: $component-active-bg !default;\n\n$dropdown-link-disabled-color: $gray-600 !default;\n\n$dropdown-item-padding-y: .25rem !default;\n$dropdown-item-padding-x: 1.5rem !default;\n\n$dropdown-header-color: $gray-600 !default;\n\n\n// Z-index master list\n//\n// Warning: Avoid customizing these values. They're used for a bird's eye view\n// of components dependent on the z-axis and are designed to all work together.\n\n$zindex-dropdown: 1000 !default;\n$zindex-sticky: 1020 !default;\n$zindex-fixed: 1030 !default;\n$zindex-modal-backdrop: 1040 !default;\n$zindex-modal: 1050 !default;\n$zindex-popover: 1060 !default;\n$zindex-tooltip: 1070 !default;\n\n// Navs\n\n$nav-link-padding-y: .5rem !default;\n$nav-link-padding-x: 1rem !default;\n$nav-link-disabled-color: $gray-600 !default;\n\n$nav-tabs-border-color: $gray-300 !default;\n$nav-tabs-border-width: $border-width !default;\n$nav-tabs-border-radius: $border-radius !default;\n$nav-tabs-link-hover-border-color: $gray-200 $gray-200 $nav-tabs-border-color !default;\n$nav-tabs-link-active-color: $gray-700 !default;\n$nav-tabs-link-active-bg: $body-bg !default;\n$nav-tabs-link-active-border-color: $gray-300 $gray-300 $nav-tabs-link-active-bg !default;\n\n$nav-pills-border-radius: $border-radius !default;\n$nav-pills-link-active-color: $component-active-color !default;\n$nav-pills-link-active-bg: $component-active-bg !default;\n\n$nav-divider-color: $gray-200 !default;\n$nav-divider-margin-y: ($spacer / 2) !default;\n\n// Navbar\n\n$navbar-padding-y: ($spacer / 2) !default;\n$navbar-padding-x: $spacer !default;\n\n$navbar-nav-link-padding-x: .5rem !default;\n\n$navbar-brand-font-size: $font-size-lg !default;\n// Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link\n$nav-link-height: ($font-size-base * $line-height-base + $nav-link-padding-y * 2) !default;\n$navbar-brand-height: $navbar-brand-font-size * $line-height-base !default;\n$navbar-brand-padding-y: ($nav-link-height - $navbar-brand-height) / 2 !default;\n\n$navbar-toggler-padding-y: .25rem !default;\n$navbar-toggler-padding-x: .75rem !default;\n$navbar-toggler-font-size: $font-size-lg !default;\n$navbar-toggler-border-radius: $btn-border-radius !default;\n\n$navbar-dark-color: rgba($white, .5) !default;\n$navbar-dark-hover-color: rgba($white, .75) !default;\n$navbar-dark-active-color: $white !default;\n$navbar-dark-disabled-color: rgba($white, .25) !default;\n$navbar-dark-toggler-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-dark-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$navbar-dark-toggler-border-color: rgba($white, .1) !default;\n\n$navbar-light-color: rgba($black, .5) !default;\n$navbar-light-hover-color: rgba($black, .7) !default;\n$navbar-light-active-color: rgba($black, .9) !default;\n$navbar-light-disabled-color: rgba($black, .3) !default;\n$navbar-light-toggler-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-light-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$navbar-light-toggler-border-color: rgba($black, .1) !default;\n\n// Pagination\n\n$pagination-padding-y: .5rem !default;\n$pagination-padding-x: .75rem !default;\n$pagination-padding-y-sm: .25rem !default;\n$pagination-padding-x-sm: .5rem !default;\n$pagination-padding-y-lg: .75rem !default;\n$pagination-padding-x-lg: 1.5rem !default;\n$pagination-line-height: 1.25 !default;\n\n$pagination-color: $link-color !default;\n$pagination-bg: $white !default;\n$pagination-border-width: $border-width !default;\n$pagination-border-color: $gray-300 !default;\n\n$pagination-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$pagination-focus-outline: 0 !default;\n\n$pagination-hover-color: $link-hover-color !default;\n$pagination-hover-bg: $gray-200 !default;\n$pagination-hover-border-color: $gray-300 !default;\n\n$pagination-active-color: $component-active-color !default;\n$pagination-active-bg: $component-active-bg !default;\n$pagination-active-border-color: $pagination-active-bg !default;\n\n$pagination-disabled-color: $gray-600 !default;\n$pagination-disabled-bg: $white !default;\n$pagination-disabled-border-color: $gray-300 !default;\n\n\n// Jumbotron\n\n$jumbotron-padding: 2rem !default;\n$jumbotron-bg: $gray-200 !default;\n\n\n// Cards\n\n$card-spacer-y: .75rem !default;\n$card-spacer-x: 1.25rem !default;\n$card-border-width: $border-width !default;\n$card-border-radius: $border-radius !default;\n$card-border-color: rgba($black, .125) !default;\n$card-inner-border-radius: calc(#{$card-border-radius} - #{$card-border-width}) !default;\n$card-cap-bg: rgba($black, .03) !default;\n$card-bg: $white !default;\n\n$card-img-overlay-padding: 1.25rem !default;\n\n$card-group-margin: ($grid-gutter-width / 2) !default;\n$card-deck-margin: $card-group-margin !default;\n\n$card-columns-count: 3 !default;\n$card-columns-gap: 1.25rem !default;\n$card-columns-margin: $card-spacer-y !default;\n\n\n// Tooltips\n\n$tooltip-font-size: $font-size-sm !default;\n$tooltip-max-width: 200px !default;\n$tooltip-color: $white !default;\n$tooltip-bg: $black !default;\n$tooltip-border-radius: $border-radius !default;\n$tooltip-opacity: .9 !default;\n$tooltip-padding-y: .25rem !default;\n$tooltip-padding-x: .5rem !default;\n$tooltip-margin: 0 !default;\n\n$tooltip-arrow-width: .8rem !default;\n$tooltip-arrow-height: .4rem !default;\n$tooltip-arrow-color: $tooltip-bg !default;\n\n\n// Popovers\n\n$popover-font-size: $font-size-sm !default;\n$popover-bg: $white !default;\n$popover-max-width: 276px !default;\n$popover-border-width: $border-width !default;\n$popover-border-color: rgba($black, .2) !default;\n$popover-border-radius: $border-radius-lg !default;\n$popover-box-shadow: 0 .25rem .5rem rgba($black, .2) !default;\n\n$popover-header-bg: darken($popover-bg, 3%) !default;\n$popover-header-color: $headings-color !default;\n$popover-header-padding-y: .5rem !default;\n$popover-header-padding-x: .75rem !default;\n\n$popover-body-color: $body-color !default;\n$popover-body-padding-y: $popover-header-padding-y !default;\n$popover-body-padding-x: $popover-header-padding-x !default;\n\n$popover-arrow-width: 1rem !default;\n$popover-arrow-height: .5rem !default;\n$popover-arrow-color: $popover-bg !default;\n\n$popover-arrow-outer-color: fade-in($popover-border-color, .05) !default;\n\n\n// Badges\n\n$badge-font-size: 75% !default;\n$badge-font-weight: $font-weight-bold !default;\n$badge-padding-y: .25em !default;\n$badge-padding-x: .4em !default;\n$badge-border-radius: $border-radius !default;\n\n$badge-pill-padding-x: .6em !default;\n// Use a higher than normal value to ensure completely rounded edges when\n// customizing padding or font-size on labels.\n$badge-pill-border-radius: 10rem !default;\n\n\n// Modals\n\n// Padding applied to the modal body\n$modal-inner-padding: 1rem !default;\n\n$modal-dialog-margin: .5rem !default;\n$modal-dialog-margin-y-sm-up: 1.75rem !default;\n\n$modal-title-line-height: $line-height-base !default;\n\n$modal-content-bg: $white !default;\n$modal-content-border-color: rgba($black, .2) !default;\n$modal-content-border-width: $border-width !default;\n$modal-content-border-radius: $border-radius-lg !default;\n$modal-content-box-shadow-xs: 0 .25rem .5rem rgba($black, .5) !default;\n$modal-content-box-shadow-sm-up: 0 .5rem 1rem rgba($black, .5) !default;\n\n$modal-backdrop-bg: $black !default;\n$modal-backdrop-opacity: .5 !default;\n$modal-header-border-color: $gray-200 !default;\n$modal-footer-border-color: $modal-header-border-color !default;\n$modal-header-border-width: $modal-content-border-width !default;\n$modal-footer-border-width: $modal-header-border-width !default;\n$modal-header-padding: 1rem !default;\n\n$modal-lg: 800px !default;\n$modal-md: 500px !default;\n$modal-sm: 300px !default;\n\n$modal-transition: transform .3s ease-out !default;\n\n\n// Alerts\n//\n// Define alert colors, border radius, and padding.\n\n$alert-padding-y: .75rem !default;\n$alert-padding-x: 1.25rem !default;\n$alert-margin-bottom: 1rem !default;\n$alert-border-radius: $border-radius !default;\n$alert-link-font-weight: $font-weight-bold !default;\n$alert-border-width: $border-width !default;\n\n$alert-bg-level: -10 !default;\n$alert-border-level: -9 !default;\n$alert-color-level: 6 !default;\n\n\n// Progress bars\n\n$progress-height: 1rem !default;\n$progress-font-size: ($font-size-base * .75) !default;\n$progress-bg: $gray-200 !default;\n$progress-border-radius: $border-radius !default;\n$progress-box-shadow: inset 0 .1rem .1rem rgba($black, .1) !default;\n$progress-bar-color: $white !default;\n$progress-bar-bg: theme-color(\"primary\") !default;\n$progress-bar-animation-timing: 1s linear infinite !default;\n$progress-bar-transition: width .6s ease !default;\n\n// List group\n\n$list-group-bg: $white !default;\n$list-group-border-color: rgba($black, .125) !default;\n$list-group-border-width: $border-width !default;\n$list-group-border-radius: $border-radius !default;\n\n$list-group-item-padding-y: .75rem !default;\n$list-group-item-padding-x: 1.25rem !default;\n\n$list-group-hover-bg: $gray-100 !default;\n$list-group-active-color: $component-active-color !default;\n$list-group-active-bg: $component-active-bg !default;\n$list-group-active-border-color: $list-group-active-bg !default;\n\n$list-group-disabled-color: $gray-600 !default;\n$list-group-disabled-bg: $list-group-bg !default;\n\n$list-group-action-color: $gray-700 !default;\n$list-group-action-hover-color: $list-group-action-color !default;\n\n$list-group-action-active-color: $body-color !default;\n$list-group-action-active-bg: $gray-200 !default;\n\n\n// Image thumbnails\n\n$thumbnail-padding: .25rem !default;\n$thumbnail-bg: $body-bg !default;\n$thumbnail-border-width: $border-width !default;\n$thumbnail-border-color: $gray-300 !default;\n$thumbnail-border-radius: $border-radius !default;\n$thumbnail-box-shadow: 0 1px 2px rgba($black, .075) !default;\n\n\n// Figures\n\n$figure-caption-font-size: 90% !default;\n$figure-caption-color: $gray-600 !default;\n\n\n// Breadcrumbs\n\n$breadcrumb-padding-y: .75rem !default;\n$breadcrumb-padding-x: 1rem !default;\n$breadcrumb-item-padding: .5rem !default;\n\n$breadcrumb-margin-bottom: 1rem !default;\n\n$breadcrumb-bg: $gray-200 !default;\n$breadcrumb-divider-color: $gray-600 !default;\n$breadcrumb-active-color: $gray-600 !default;\n$breadcrumb-divider: quote(\"/\") !default;\n\n$breadcrumb-border-radius: $border-radius !default;\n\n\n// Carousel\n\n$carousel-control-color: $white !default;\n$carousel-control-width: 15% !default;\n$carousel-control-opacity: .5 !default;\n\n$carousel-indicator-width: 30px !default;\n$carousel-indicator-height: 3px !default;\n$carousel-indicator-spacer: 3px !default;\n$carousel-indicator-active-bg: $white !default;\n\n$carousel-caption-width: 70% !default;\n$carousel-caption-color: $white !default;\n\n$carousel-control-icon-width: 20px !default;\n\n$carousel-control-prev-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$carousel-control-next-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$carousel-transition: transform .6s ease !default; // Define transform transition first if using multiple transitions (e.g., `transform 2s ease, opacity .5s ease-out`)\n\n\n// Close\n\n$close-font-size: $font-size-base * 1.5 !default;\n$close-font-weight: $font-weight-bold !default;\n$close-color: $black !default;\n$close-text-shadow: 0 1px 0 $white !default;\n\n// Code\n\n$code-font-size: 87.5% !default;\n$code-color: $pink !default;\n\n$kbd-padding-y: .2rem !default;\n$kbd-padding-x: .4rem !default;\n$kbd-font-size: $code-font-size !default;\n$kbd-color: $white !default;\n$kbd-bg: $gray-900 !default;\n\n$pre-color: $gray-900 !default;\n$pre-scrollable-max-height: 340px !default;\n\n\n// Printing\n$print-page-size: a3 !default;\n$print-body-min-width: map-get($grid-breakpoints, \"lg\") !default;\n","/*!\n * Bootstrap v4.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n:root {\n --blue: #007bff;\n --indigo: #6610f2;\n --purple: #6f42c1;\n --pink: #e83e8c;\n --red: #dc3545;\n --orange: #fd7e14;\n --yellow: #ffc107;\n --green: #28a745;\n --teal: #20c997;\n --cyan: #17a2b8;\n --white: #fff;\n --gray: #6c757d;\n --gray-dark: #343a40;\n --primary: #007bff;\n --secondary: #6c757d;\n --success: #28a745;\n --info: #17a2b8;\n --warning: #ffc107;\n --danger: #dc3545;\n --light: #f8f9fa;\n --dark: #343a40;\n --breakpoint-xs: 0;\n --breakpoint-sm: 576px;\n --breakpoint-md: 768px;\n --breakpoint-lg: 992px;\n --breakpoint-xl: 1200px;\n --font-family-sans-serif: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml {\n font-family: sans-serif;\n line-height: 1.15;\n -webkit-text-size-adjust: 100%;\n -ms-text-size-adjust: 100%;\n -ms-overflow-style: scrollbar;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\n@-ms-viewport {\n width: device-width;\n}\n\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n\nbody {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n text-align: left;\n background-color: #fff;\n}\n\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\nhr {\n box-sizing: content-box;\n height: 0;\n overflow: visible;\n}\n\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[title],\nabbr[data-original-title] {\n text-decoration: underline;\n text-decoration: underline dotted;\n cursor: help;\n border-bottom: 0;\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\ndfn {\n font-style: italic;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\na {\n color: #007bff;\n text-decoration: none;\n background-color: transparent;\n -webkit-text-decoration-skip: objects;\n}\n\na:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):focus {\n outline: 0;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n font-size: 1em;\n}\n\npre {\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n -ms-overflow-style: scrollbar;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg {\n vertical-align: middle;\n border-style: none;\n}\n\nsvg {\n overflow: hidden;\n vertical-align: middle;\n}\n\ntable {\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n color: #6c757d;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n text-align: inherit;\n}\n\nlabel {\n display: inline-block;\n margin-bottom: 0.5rem;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\nbutton,\nhtml [type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box;\n padding: 0;\n}\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto;\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n max-width: 100%;\n padding: 0;\n margin-bottom: .5rem;\n font-size: 1.5rem;\n line-height: inherit;\n color: inherit;\n white-space: normal;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n outline-offset: -2px;\n -webkit-appearance: none;\n}\n\n[type=\"search\"]::-webkit-search-cancel-button,\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\ntemplate {\n display: none;\n}\n\n[hidden] {\n display: none !important;\n}\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n margin-bottom: 0.5rem;\n font-family: inherit;\n font-weight: 500;\n line-height: 1.2;\n color: inherit;\n}\n\nh1, .h1 {\n font-size: 2.5rem;\n}\n\nh2, .h2 {\n font-size: 2rem;\n}\n\nh3, .h3 {\n font-size: 1.75rem;\n}\n\nh4, .h4 {\n font-size: 1.5rem;\n}\n\nh5, .h5 {\n font-size: 1.25rem;\n}\n\nh6, .h6 {\n font-size: 1rem;\n}\n\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n\n.display-1 {\n font-size: 6rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-2 {\n font-size: 5.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-3 {\n font-size: 4.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-4 {\n font-size: 3.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\nhr {\n margin-top: 1rem;\n margin-bottom: 1rem;\n border: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n}\n\nsmall,\n.small {\n font-size: 80%;\n font-weight: 400;\n}\n\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline-item {\n display: inline-block;\n}\n\n.list-inline-item:not(:last-child) {\n margin-right: 0.5rem;\n}\n\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\n\n.blockquote {\n margin-bottom: 1rem;\n font-size: 1.25rem;\n}\n\n.blockquote-footer {\n display: block;\n font-size: 80%;\n color: #6c757d;\n}\n\n.blockquote-footer::before {\n content: \"\\2014 \\00A0\";\n}\n\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n\n.img-thumbnail {\n padding: 0.25rem;\n background-color: #fff;\n border: 1px solid #dee2e6;\n border-radius: 0.25rem;\n max-width: 100%;\n height: auto;\n}\n\n.figure {\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: 0.5rem;\n line-height: 1;\n}\n\n.figure-caption {\n font-size: 90%;\n color: #6c757d;\n}\n\ncode {\n font-size: 87.5%;\n color: #e83e8c;\n word-break: break-word;\n}\n\na > code {\n color: inherit;\n}\n\nkbd {\n padding: 0.2rem 0.4rem;\n font-size: 87.5%;\n color: #fff;\n background-color: #212529;\n border-radius: 0.2rem;\n}\n\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n}\n\npre {\n display: block;\n font-size: 87.5%;\n color: #212529;\n}\n\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\n\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n\n.container {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container {\n max-width: 1140px;\n }\n}\n\n.container-fluid {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n.row {\n display: flex;\n flex-wrap: wrap;\n margin-right: -15px;\n margin-left: -15px;\n}\n\n.no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n\n.no-gutters > .col,\n.no-gutters > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n\n.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,\n.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,\n.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,\n.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,\n.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,\n.col-xl-auto {\n position: relative;\n width: 100%;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n.col {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n}\n\n.col-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n}\n\n.col-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n}\n\n.col-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n}\n\n.col-3 {\n flex: 0 0 25%;\n max-width: 25%;\n}\n\n.col-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n}\n\n.col-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n}\n\n.col-6 {\n flex: 0 0 50%;\n max-width: 50%;\n}\n\n.col-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n}\n\n.col-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n}\n\n.col-9 {\n flex: 0 0 75%;\n max-width: 75%;\n}\n\n.col-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n}\n\n.col-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n}\n\n.col-12 {\n flex: 0 0 100%;\n max-width: 100%;\n}\n\n.order-first {\n order: -1;\n}\n\n.order-last {\n order: 13;\n}\n\n.order-0 {\n order: 0;\n}\n\n.order-1 {\n order: 1;\n}\n\n.order-2 {\n order: 2;\n}\n\n.order-3 {\n order: 3;\n}\n\n.order-4 {\n order: 4;\n}\n\n.order-5 {\n order: 5;\n}\n\n.order-6 {\n order: 6;\n}\n\n.order-7 {\n order: 7;\n}\n\n.order-8 {\n order: 8;\n}\n\n.order-9 {\n order: 9;\n}\n\n.order-10 {\n order: 10;\n}\n\n.order-11 {\n order: 11;\n}\n\n.order-12 {\n order: 12;\n}\n\n.offset-1 {\n margin-left: 8.333333%;\n}\n\n.offset-2 {\n margin-left: 16.666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.333333%;\n}\n\n.offset-5 {\n margin-left: 41.666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.333333%;\n}\n\n.offset-8 {\n margin-left: 66.666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.333333%;\n}\n\n.offset-11 {\n margin-left: 91.666667%;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-sm-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-sm-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-sm-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-sm-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-sm-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-sm-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-sm-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-sm-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-sm-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-sm-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-sm-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-sm-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-sm-first {\n order: -1;\n }\n .order-sm-last {\n order: 13;\n }\n .order-sm-0 {\n order: 0;\n }\n .order-sm-1 {\n order: 1;\n }\n .order-sm-2 {\n order: 2;\n }\n .order-sm-3 {\n order: 3;\n }\n .order-sm-4 {\n order: 4;\n }\n .order-sm-5 {\n order: 5;\n }\n .order-sm-6 {\n order: 6;\n }\n .order-sm-7 {\n order: 7;\n }\n .order-sm-8 {\n order: 8;\n }\n .order-sm-9 {\n order: 9;\n }\n .order-sm-10 {\n order: 10;\n }\n .order-sm-11 {\n order: 11;\n }\n .order-sm-12 {\n order: 12;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.333333%;\n }\n .offset-sm-2 {\n margin-left: 16.666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.333333%;\n }\n .offset-sm-5 {\n margin-left: 41.666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.333333%;\n }\n .offset-sm-8 {\n margin-left: 66.666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.333333%;\n }\n .offset-sm-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 768px) {\n .col-md {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-md-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-md-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-md-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-md-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-md-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-md-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-md-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-md-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-md-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-md-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-md-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-md-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-md-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-md-first {\n order: -1;\n }\n .order-md-last {\n order: 13;\n }\n .order-md-0 {\n order: 0;\n }\n .order-md-1 {\n order: 1;\n }\n .order-md-2 {\n order: 2;\n }\n .order-md-3 {\n order: 3;\n }\n .order-md-4 {\n order: 4;\n }\n .order-md-5 {\n order: 5;\n }\n .order-md-6 {\n order: 6;\n }\n .order-md-7 {\n order: 7;\n }\n .order-md-8 {\n order: 8;\n }\n .order-md-9 {\n order: 9;\n }\n .order-md-10 {\n order: 10;\n }\n .order-md-11 {\n order: 11;\n }\n .order-md-12 {\n order: 12;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.333333%;\n }\n .offset-md-2 {\n margin-left: 16.666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.333333%;\n }\n .offset-md-5 {\n margin-left: 41.666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.333333%;\n }\n .offset-md-8 {\n margin-left: 66.666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.333333%;\n }\n .offset-md-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 992px) {\n .col-lg {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-lg-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-lg-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-lg-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-lg-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-lg-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-lg-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-lg-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-lg-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-lg-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-lg-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-lg-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-lg-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-lg-first {\n order: -1;\n }\n .order-lg-last {\n order: 13;\n }\n .order-lg-0 {\n order: 0;\n }\n .order-lg-1 {\n order: 1;\n }\n .order-lg-2 {\n order: 2;\n }\n .order-lg-3 {\n order: 3;\n }\n .order-lg-4 {\n order: 4;\n }\n .order-lg-5 {\n order: 5;\n }\n .order-lg-6 {\n order: 6;\n }\n .order-lg-7 {\n order: 7;\n }\n .order-lg-8 {\n order: 8;\n }\n .order-lg-9 {\n order: 9;\n }\n .order-lg-10 {\n order: 10;\n }\n .order-lg-11 {\n order: 11;\n }\n .order-lg-12 {\n order: 12;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.333333%;\n }\n .offset-lg-2 {\n margin-left: 16.666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.333333%;\n }\n .offset-lg-5 {\n margin-left: 41.666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.333333%;\n }\n .offset-lg-8 {\n margin-left: 66.666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.333333%;\n }\n .offset-lg-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 1200px) {\n .col-xl {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-xl-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-xl-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-xl-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-xl-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-xl-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-xl-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-xl-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-xl-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-xl-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-xl-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-xl-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-xl-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-xl-first {\n order: -1;\n }\n .order-xl-last {\n order: 13;\n }\n .order-xl-0 {\n order: 0;\n }\n .order-xl-1 {\n order: 1;\n }\n .order-xl-2 {\n order: 2;\n }\n .order-xl-3 {\n order: 3;\n }\n .order-xl-4 {\n order: 4;\n }\n .order-xl-5 {\n order: 5;\n }\n .order-xl-6 {\n order: 6;\n }\n .order-xl-7 {\n order: 7;\n }\n .order-xl-8 {\n order: 8;\n }\n .order-xl-9 {\n order: 9;\n }\n .order-xl-10 {\n order: 10;\n }\n .order-xl-11 {\n order: 11;\n }\n .order-xl-12 {\n order: 12;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.333333%;\n }\n .offset-xl-2 {\n margin-left: 16.666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.333333%;\n }\n .offset-xl-5 {\n margin-left: 41.666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.333333%;\n }\n .offset-xl-8 {\n margin-left: 66.666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.333333%;\n }\n .offset-xl-11 {\n margin-left: 91.666667%;\n }\n}\n\n.table {\n width: 100%;\n margin-bottom: 1rem;\n background-color: transparent;\n}\n\n.table th,\n.table td {\n padding: 0.75rem;\n vertical-align: top;\n border-top: 1px solid #dee2e6;\n}\n\n.table thead th {\n vertical-align: bottom;\n border-bottom: 2px solid #dee2e6;\n}\n\n.table tbody + tbody {\n border-top: 2px solid #dee2e6;\n}\n\n.table .table {\n background-color: #fff;\n}\n\n.table-sm th,\n.table-sm td {\n padding: 0.3rem;\n}\n\n.table-bordered {\n border: 1px solid #dee2e6;\n}\n\n.table-bordered th,\n.table-bordered td {\n border: 1px solid #dee2e6;\n}\n\n.table-bordered thead th,\n.table-bordered thead td {\n border-bottom-width: 2px;\n}\n\n.table-borderless th,\n.table-borderless td,\n.table-borderless thead th,\n.table-borderless tbody + tbody {\n border: 0;\n}\n\n.table-striped tbody tr:nth-of-type(odd) {\n background-color: rgba(0, 0, 0, 0.05);\n}\n\n.table-hover tbody tr:hover {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-primary,\n.table-primary > th,\n.table-primary > td {\n background-color: #b8daff;\n}\n\n.table-hover .table-primary:hover {\n background-color: #9fcdff;\n}\n\n.table-hover .table-primary:hover > td,\n.table-hover .table-primary:hover > th {\n background-color: #9fcdff;\n}\n\n.table-secondary,\n.table-secondary > th,\n.table-secondary > td {\n background-color: #d6d8db;\n}\n\n.table-hover .table-secondary:hover {\n background-color: #c8cbcf;\n}\n\n.table-hover .table-secondary:hover > td,\n.table-hover .table-secondary:hover > th {\n background-color: #c8cbcf;\n}\n\n.table-success,\n.table-success > th,\n.table-success > td {\n background-color: #c3e6cb;\n}\n\n.table-hover .table-success:hover {\n background-color: #b1dfbb;\n}\n\n.table-hover .table-success:hover > td,\n.table-hover .table-success:hover > th {\n background-color: #b1dfbb;\n}\n\n.table-info,\n.table-info > th,\n.table-info > td {\n background-color: #bee5eb;\n}\n\n.table-hover .table-info:hover {\n background-color: #abdde5;\n}\n\n.table-hover .table-info:hover > td,\n.table-hover .table-info:hover > th {\n background-color: #abdde5;\n}\n\n.table-warning,\n.table-warning > th,\n.table-warning > td {\n background-color: #ffeeba;\n}\n\n.table-hover .table-warning:hover {\n background-color: #ffe8a1;\n}\n\n.table-hover .table-warning:hover > td,\n.table-hover .table-warning:hover > th {\n background-color: #ffe8a1;\n}\n\n.table-danger,\n.table-danger > th,\n.table-danger > td {\n background-color: #f5c6cb;\n}\n\n.table-hover .table-danger:hover {\n background-color: #f1b0b7;\n}\n\n.table-hover .table-danger:hover > td,\n.table-hover .table-danger:hover > th {\n background-color: #f1b0b7;\n}\n\n.table-light,\n.table-light > th,\n.table-light > td {\n background-color: #fdfdfe;\n}\n\n.table-hover .table-light:hover {\n background-color: #ececf6;\n}\n\n.table-hover .table-light:hover > td,\n.table-hover .table-light:hover > th {\n background-color: #ececf6;\n}\n\n.table-dark,\n.table-dark > th,\n.table-dark > td {\n background-color: #c6c8ca;\n}\n\n.table-hover .table-dark:hover {\n background-color: #b9bbbe;\n}\n\n.table-hover .table-dark:hover > td,\n.table-hover .table-dark:hover > th {\n background-color: #b9bbbe;\n}\n\n.table-active,\n.table-active > th,\n.table-active > td {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-hover .table-active:hover {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-hover .table-active:hover > td,\n.table-hover .table-active:hover > th {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table .thead-dark th {\n color: #fff;\n background-color: #212529;\n border-color: #32383e;\n}\n\n.table .thead-light th {\n color: #495057;\n background-color: #e9ecef;\n border-color: #dee2e6;\n}\n\n.table-dark {\n color: #fff;\n background-color: #212529;\n}\n\n.table-dark th,\n.table-dark td,\n.table-dark thead th {\n border-color: #32383e;\n}\n\n.table-dark.table-bordered {\n border: 0;\n}\n\n.table-dark.table-striped tbody tr:nth-of-type(odd) {\n background-color: rgba(255, 255, 255, 0.05);\n}\n\n.table-dark.table-hover tbody tr:hover {\n background-color: rgba(255, 255, 255, 0.075);\n}\n\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n }\n .table-responsive-sm > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 767.98px) {\n .table-responsive-md {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n }\n .table-responsive-md > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n }\n .table-responsive-lg > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n }\n .table-responsive-xl > .table-bordered {\n border: 0;\n }\n}\n\n.table-responsive {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n}\n\n.table-responsive > .table-bordered {\n border: 0;\n}\n\n.form-control {\n display: block;\n width: 100%;\n height: calc(2.25rem + 2px);\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n line-height: 1.5;\n color: #495057;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media screen and (prefers-reduced-motion: reduce) {\n .form-control {\n transition: none;\n }\n}\n\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n\n.form-control:focus {\n color: #495057;\n background-color: #fff;\n border-color: #80bdff;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.form-control::placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control:disabled, .form-control[readonly] {\n background-color: #e9ecef;\n opacity: 1;\n}\n\nselect.form-control:focus::-ms-value {\n color: #495057;\n background-color: #fff;\n}\n\n.form-control-file,\n.form-control-range {\n display: block;\n width: 100%;\n}\n\n.col-form-label {\n padding-top: calc(0.375rem + 1px);\n padding-bottom: calc(0.375rem + 1px);\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n\n.col-form-label-lg {\n padding-top: calc(0.5rem + 1px);\n padding-bottom: calc(0.5rem + 1px);\n font-size: 1.25rem;\n line-height: 1.5;\n}\n\n.col-form-label-sm {\n padding-top: calc(0.25rem + 1px);\n padding-bottom: calc(0.25rem + 1px);\n font-size: 0.875rem;\n line-height: 1.5;\n}\n\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n margin-bottom: 0;\n line-height: 1.5;\n color: #212529;\n background-color: transparent;\n border: solid transparent;\n border-width: 1px 0;\n}\n\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n padding-right: 0;\n padding-left: 0;\n}\n\n.form-control-sm {\n height: calc(1.8125rem + 2px);\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.form-control-lg {\n height: calc(2.875rem + 2px);\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\nselect.form-control[size], select.form-control[multiple] {\n height: auto;\n}\n\ntextarea.form-control {\n height: auto;\n}\n\n.form-group {\n margin-bottom: 1rem;\n}\n\n.form-text {\n display: block;\n margin-top: 0.25rem;\n}\n\n.form-row {\n display: flex;\n flex-wrap: wrap;\n margin-right: -5px;\n margin-left: -5px;\n}\n\n.form-row > .col,\n.form-row > [class*=\"col-\"] {\n padding-right: 5px;\n padding-left: 5px;\n}\n\n.form-check {\n position: relative;\n display: block;\n padding-left: 1.25rem;\n}\n\n.form-check-input {\n position: absolute;\n margin-top: 0.3rem;\n margin-left: -1.25rem;\n}\n\n.form-check-input:disabled ~ .form-check-label {\n color: #6c757d;\n}\n\n.form-check-label {\n margin-bottom: 0;\n}\n\n.form-check-inline {\n display: inline-flex;\n align-items: center;\n padding-left: 0;\n margin-right: 0.75rem;\n}\n\n.form-check-inline .form-check-input {\n position: static;\n margin-top: 0;\n margin-right: 0.3125rem;\n margin-left: 0;\n}\n\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 80%;\n color: #28a745;\n}\n\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: .1rem;\n font-size: 0.875rem;\n line-height: 1.5;\n color: #fff;\n background-color: rgba(40, 167, 69, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated .form-control:valid, .form-control.is-valid, .was-validated\n.custom-select:valid,\n.custom-select.is-valid {\n border-color: #28a745;\n}\n\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus, .was-validated\n.custom-select:valid:focus,\n.custom-select.is-valid:focus {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .form-control:valid ~ .valid-feedback,\n.was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback,\n.form-control.is-valid ~ .valid-tooltip, .was-validated\n.custom-select:valid ~ .valid-feedback,\n.was-validated\n.custom-select:valid ~ .valid-tooltip,\n.custom-select.is-valid ~ .valid-feedback,\n.custom-select.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-control-file:valid ~ .valid-feedback,\n.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,\n.form-control-file.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n color: #28a745;\n}\n\n.was-validated .form-check-input:valid ~ .valid-feedback,\n.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,\n.form-check-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {\n color: #28a745;\n}\n\n.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {\n background-color: #71dd8a;\n}\n\n.was-validated .custom-control-input:valid ~ .valid-feedback,\n.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback,\n.custom-control-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {\n background-color: #34ce57;\n}\n\n.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {\n border-color: #28a745;\n}\n\n.was-validated .custom-file-input:valid ~ .custom-file-label::after, .custom-file-input.is-valid ~ .custom-file-label::after {\n border-color: inherit;\n}\n\n.was-validated .custom-file-input:valid ~ .valid-feedback,\n.was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback,\n.custom-file-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 80%;\n color: #dc3545;\n}\n\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: .1rem;\n font-size: 0.875rem;\n line-height: 1.5;\n color: #fff;\n background-color: rgba(220, 53, 69, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated .form-control:invalid, .form-control.is-invalid, .was-validated\n.custom-select:invalid,\n.custom-select.is-invalid {\n border-color: #dc3545;\n}\n\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus, .was-validated\n.custom-select:invalid:focus,\n.custom-select.is-invalid:focus {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .form-control:invalid ~ .invalid-feedback,\n.was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback,\n.form-control.is-invalid ~ .invalid-tooltip, .was-validated\n.custom-select:invalid ~ .invalid-feedback,\n.was-validated\n.custom-select:invalid ~ .invalid-tooltip,\n.custom-select.is-invalid ~ .invalid-feedback,\n.custom-select.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-control-file:invalid ~ .invalid-feedback,\n.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,\n.form-control-file.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n color: #dc3545;\n}\n\n.was-validated .form-check-input:invalid ~ .invalid-feedback,\n.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,\n.form-check-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {\n color: #dc3545;\n}\n\n.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {\n background-color: #efa2a9;\n}\n\n.was-validated .custom-control-input:invalid ~ .invalid-feedback,\n.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback,\n.custom-control-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {\n background-color: #e4606d;\n}\n\n.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {\n border-color: #dc3545;\n}\n\n.was-validated .custom-file-input:invalid ~ .custom-file-label::after, .custom-file-input.is-invalid ~ .custom-file-label::after {\n border-color: inherit;\n}\n\n.was-validated .custom-file-input:invalid ~ .invalid-feedback,\n.was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback,\n.custom-file-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.form-inline {\n display: flex;\n flex-flow: row wrap;\n align-items: center;\n}\n\n.form-inline .form-check {\n width: 100%;\n}\n\n@media (min-width: 576px) {\n .form-inline label {\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 0;\n }\n .form-inline .form-group {\n display: flex;\n flex: 0 0 auto;\n flex-flow: row wrap;\n align-items: center;\n margin-bottom: 0;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-plaintext {\n display: inline-block;\n }\n .form-inline .input-group,\n .form-inline .custom-select {\n width: auto;\n }\n .form-inline .form-check {\n display: flex;\n align-items: center;\n justify-content: center;\n width: auto;\n padding-left: 0;\n }\n .form-inline .form-check-input {\n position: relative;\n margin-top: 0;\n margin-right: 0.25rem;\n margin-left: 0;\n }\n .form-inline .custom-control {\n align-items: center;\n justify-content: center;\n }\n .form-inline .custom-control-label {\n margin-bottom: 0;\n }\n}\n\n.btn {\n display: inline-block;\n font-weight: 400;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n user-select: none;\n border: 1px solid transparent;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n line-height: 1.5;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media screen and (prefers-reduced-motion: reduce) {\n .btn {\n transition: none;\n }\n}\n\n.btn:hover, .btn:focus {\n text-decoration: none;\n}\n\n.btn:focus, .btn.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.btn.disabled, .btn:disabled {\n opacity: 0.65;\n}\n\n.btn:not(:disabled):not(.disabled) {\n cursor: pointer;\n}\n\na.btn.disabled,\nfieldset:disabled a.btn {\n pointer-events: none;\n}\n\n.btn-primary {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:hover {\n color: #fff;\n background-color: #0069d9;\n border-color: #0062cc;\n}\n\n.btn-primary:focus, .btn-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-primary.disabled, .btn-primary:disabled {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,\n.show > .btn-primary.dropdown-toggle {\n color: #fff;\n background-color: #0062cc;\n border-color: #005cbf;\n}\n\n.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-primary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-secondary {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:hover {\n color: #fff;\n background-color: #5a6268;\n border-color: #545b62;\n}\n\n.btn-secondary:focus, .btn-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-secondary.disabled, .btn-secondary:disabled {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,\n.show > .btn-secondary.dropdown-toggle {\n color: #fff;\n background-color: #545b62;\n border-color: #4e555b;\n}\n\n.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-secondary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-success {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:hover {\n color: #fff;\n background-color: #218838;\n border-color: #1e7e34;\n}\n\n.btn-success:focus, .btn-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-success.disabled, .btn-success:disabled {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,\n.show > .btn-success.dropdown-toggle {\n color: #fff;\n background-color: #1e7e34;\n border-color: #1c7430;\n}\n\n.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,\n.show > .btn-success.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-info {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:hover {\n color: #fff;\n background-color: #138496;\n border-color: #117a8b;\n}\n\n.btn-info:focus, .btn-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-info.disabled, .btn-info:disabled {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,\n.show > .btn-info.dropdown-toggle {\n color: #fff;\n background-color: #117a8b;\n border-color: #10707f;\n}\n\n.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,\n.show > .btn-info.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-warning {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:hover {\n color: #212529;\n background-color: #e0a800;\n border-color: #d39e00;\n}\n\n.btn-warning:focus, .btn-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-warning.disabled, .btn-warning:disabled {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,\n.show > .btn-warning.dropdown-toggle {\n color: #212529;\n background-color: #d39e00;\n border-color: #c69500;\n}\n\n.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,\n.show > .btn-warning.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-danger {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:hover {\n color: #fff;\n background-color: #c82333;\n border-color: #bd2130;\n}\n\n.btn-danger:focus, .btn-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-danger.disabled, .btn-danger:disabled {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,\n.show > .btn-danger.dropdown-toggle {\n color: #fff;\n background-color: #bd2130;\n border-color: #b21f2d;\n}\n\n.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,\n.show > .btn-danger.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-light {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:hover {\n color: #212529;\n background-color: #e2e6ea;\n border-color: #dae0e5;\n}\n\n.btn-light:focus, .btn-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-light.disabled, .btn-light:disabled {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,\n.show > .btn-light.dropdown-toggle {\n color: #212529;\n background-color: #dae0e5;\n border-color: #d3d9df;\n}\n\n.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,\n.show > .btn-light.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-dark {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:hover {\n color: #fff;\n background-color: #23272b;\n border-color: #1d2124;\n}\n\n.btn-dark:focus, .btn-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-dark.disabled, .btn-dark:disabled {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,\n.show > .btn-dark.dropdown-toggle {\n color: #fff;\n background-color: #1d2124;\n border-color: #171a1d;\n}\n\n.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,\n.show > .btn-dark.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-outline-primary {\n color: #007bff;\n background-color: transparent;\n background-image: none;\n border-color: #007bff;\n}\n\n.btn-outline-primary:hover {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:focus, .btn-outline-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-outline-primary.disabled, .btn-outline-primary:disabled {\n color: #007bff;\n background-color: transparent;\n}\n\n.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,\n.show > .btn-outline-primary.dropdown-toggle {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-primary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-outline-secondary {\n color: #6c757d;\n background-color: transparent;\n background-image: none;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:hover {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:focus, .btn-outline-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {\n color: #6c757d;\n background-color: transparent;\n}\n\n.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,\n.show > .btn-outline-secondary.dropdown-toggle {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-secondary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-outline-success {\n color: #28a745;\n background-color: transparent;\n background-image: none;\n border-color: #28a745;\n}\n\n.btn-outline-success:hover {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:focus, .btn-outline-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-outline-success.disabled, .btn-outline-success:disabled {\n color: #28a745;\n background-color: transparent;\n}\n\n.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,\n.show > .btn-outline-success.dropdown-toggle {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-success.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-outline-info {\n color: #17a2b8;\n background-color: transparent;\n background-image: none;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:hover {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:focus, .btn-outline-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-outline-info.disabled, .btn-outline-info:disabled {\n color: #17a2b8;\n background-color: transparent;\n}\n\n.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,\n.show > .btn-outline-info.dropdown-toggle {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-info.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-outline-warning {\n color: #ffc107;\n background-color: transparent;\n background-image: none;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:hover {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:focus, .btn-outline-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-outline-warning.disabled, .btn-outline-warning:disabled {\n color: #ffc107;\n background-color: transparent;\n}\n\n.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,\n.show > .btn-outline-warning.dropdown-toggle {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-warning.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-outline-danger {\n color: #dc3545;\n background-color: transparent;\n background-image: none;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:hover {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:focus, .btn-outline-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-outline-danger.disabled, .btn-outline-danger:disabled {\n color: #dc3545;\n background-color: transparent;\n}\n\n.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,\n.show > .btn-outline-danger.dropdown-toggle {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-danger.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-outline-light {\n color: #f8f9fa;\n background-color: transparent;\n background-image: none;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:hover {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:focus, .btn-outline-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-outline-light.disabled, .btn-outline-light:disabled {\n color: #f8f9fa;\n background-color: transparent;\n}\n\n.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,\n.show > .btn-outline-light.dropdown-toggle {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-light.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-outline-dark {\n color: #343a40;\n background-color: transparent;\n background-image: none;\n border-color: #343a40;\n}\n\n.btn-outline-dark:hover {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:focus, .btn-outline-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-outline-dark.disabled, .btn-outline-dark:disabled {\n color: #343a40;\n background-color: transparent;\n}\n\n.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,\n.show > .btn-outline-dark.dropdown-toggle {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-dark.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-link {\n font-weight: 400;\n color: #007bff;\n background-color: transparent;\n}\n\n.btn-link:hover {\n color: #0056b3;\n text-decoration: underline;\n background-color: transparent;\n border-color: transparent;\n}\n\n.btn-link:focus, .btn-link.focus {\n text-decoration: underline;\n border-color: transparent;\n box-shadow: none;\n}\n\n.btn-link:disabled, .btn-link.disabled {\n color: #6c757d;\n pointer-events: none;\n}\n\n.btn-lg, .btn-group-lg > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.btn-sm, .btn-group-sm > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.btn-block {\n display: block;\n width: 100%;\n}\n\n.btn-block + .btn-block {\n margin-top: 0.5rem;\n}\n\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n\n.fade {\n transition: opacity 0.15s linear;\n}\n\n@media screen and (prefers-reduced-motion: reduce) {\n .fade {\n transition: none;\n }\n}\n\n.fade:not(.show) {\n opacity: 0;\n}\n\n.collapse:not(.show) {\n display: none;\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n transition: height 0.35s ease;\n}\n\n@media screen and (prefers-reduced-motion: reduce) {\n .collapsing {\n transition: none;\n }\n}\n\n.dropup,\n.dropright,\n.dropdown,\n.dropleft {\n position: relative;\n}\n\n.dropdown-toggle::after {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid;\n border-right: 0.3em solid transparent;\n border-bottom: 0;\n border-left: 0.3em solid transparent;\n}\n\n.dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 10rem;\n padding: 0.5rem 0;\n margin: 0.125rem 0 0;\n font-size: 1rem;\n color: #212529;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 0.25rem;\n}\n\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n\n.dropup .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: 0.125rem;\n}\n\n.dropup .dropdown-toggle::after {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0;\n border-right: 0.3em solid transparent;\n border-bottom: 0.3em solid;\n border-left: 0.3em solid transparent;\n}\n\n.dropup .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropright .dropdown-menu {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: 0.125rem;\n}\n\n.dropright .dropdown-toggle::after {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0;\n border-bottom: 0.3em solid transparent;\n border-left: 0.3em solid;\n}\n\n.dropright .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropright .dropdown-toggle::after {\n vertical-align: 0;\n}\n\n.dropleft .dropdown-menu {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: 0.125rem;\n}\n\n.dropleft .dropdown-toggle::after {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n}\n\n.dropleft .dropdown-toggle::after {\n display: none;\n}\n\n.dropleft .dropdown-toggle::before {\n display: inline-block;\n width: 0;\n height: 0;\n margin-right: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0.3em solid;\n border-bottom: 0.3em solid transparent;\n}\n\n.dropleft .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropleft .dropdown-toggle::before {\n vertical-align: 0;\n}\n\n.dropdown-menu[x-placement^=\"top\"], .dropdown-menu[x-placement^=\"right\"], .dropdown-menu[x-placement^=\"bottom\"], .dropdown-menu[x-placement^=\"left\"] {\n right: auto;\n bottom: auto;\n}\n\n.dropdown-divider {\n height: 0;\n margin: 0.5rem 0;\n overflow: hidden;\n border-top: 1px solid #e9ecef;\n}\n\n.dropdown-item {\n display: block;\n width: 100%;\n padding: 0.25rem 1.5rem;\n clear: both;\n font-weight: 400;\n color: #212529;\n text-align: inherit;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n}\n\n.dropdown-item:hover, .dropdown-item:focus {\n color: #16181b;\n text-decoration: none;\n background-color: #f8f9fa;\n}\n\n.dropdown-item.active, .dropdown-item:active {\n color: #fff;\n text-decoration: none;\n background-color: #007bff;\n}\n\n.dropdown-item.disabled, .dropdown-item:disabled {\n color: #6c757d;\n background-color: transparent;\n}\n\n.dropdown-menu.show {\n display: block;\n}\n\n.dropdown-header {\n display: block;\n padding: 0.5rem 1.5rem;\n margin-bottom: 0;\n font-size: 0.875rem;\n color: #6c757d;\n white-space: nowrap;\n}\n\n.dropdown-item-text {\n display: block;\n padding: 0.25rem 1.5rem;\n color: #212529;\n}\n\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-flex;\n vertical-align: middle;\n}\n\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n flex: 0 1 auto;\n}\n\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover {\n z-index: 1;\n}\n\n.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,\n.btn-group-vertical > .btn:focus,\n.btn-group-vertical > .btn:active,\n.btn-group-vertical > .btn.active {\n z-index: 1;\n}\n\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group,\n.btn-group-vertical .btn + .btn,\n.btn-group-vertical .btn + .btn-group,\n.btn-group-vertical .btn-group + .btn,\n.btn-group-vertical .btn-group + .btn-group {\n margin-left: -1px;\n}\n\n.btn-toolbar {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n}\n\n.btn-toolbar .input-group {\n width: auto;\n}\n\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.btn-group > .btn:not(:first-child),\n.btn-group > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.dropdown-toggle-split {\n padding-right: 0.5625rem;\n padding-left: 0.5625rem;\n}\n\n.dropdown-toggle-split::after,\n.dropup .dropdown-toggle-split::after,\n.dropright .dropdown-toggle-split::after {\n margin-left: 0;\n}\n\n.dropleft .dropdown-toggle-split::before {\n margin-right: 0;\n}\n\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n padding-right: 0.375rem;\n padding-left: 0.375rem;\n}\n\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n}\n\n.btn-group-vertical {\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n}\n\n.btn-group-vertical .btn,\n.btn-group-vertical .btn-group {\n width: 100%;\n}\n\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.btn-group-toggle > .btn,\n.btn-group-toggle > .btn-group > .btn {\n margin-bottom: 0;\n}\n\n.btn-group-toggle > .btn input[type=\"radio\"],\n.btn-group-toggle > .btn input[type=\"checkbox\"],\n.btn-group-toggle > .btn-group > .btn input[type=\"radio\"],\n.btn-group-toggle > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n\n.input-group {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: stretch;\n width: 100%;\n}\n\n.input-group > .form-control,\n.input-group > .custom-select,\n.input-group > .custom-file {\n position: relative;\n flex: 1 1 auto;\n width: 1%;\n margin-bottom: 0;\n}\n\n.input-group > .form-control + .form-control,\n.input-group > .form-control + .custom-select,\n.input-group > .form-control + .custom-file,\n.input-group > .custom-select + .form-control,\n.input-group > .custom-select + .custom-select,\n.input-group > .custom-select + .custom-file,\n.input-group > .custom-file + .form-control,\n.input-group > .custom-file + .custom-select,\n.input-group > .custom-file + .custom-file {\n margin-left: -1px;\n}\n\n.input-group > .form-control:focus,\n.input-group > .custom-select:focus,\n.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {\n z-index: 3;\n}\n\n.input-group > .custom-file .custom-file-input:focus {\n z-index: 4;\n}\n\n.input-group > .form-control:not(:last-child),\n.input-group > .custom-select:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .form-control:not(:first-child),\n.input-group > .custom-select:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.input-group > .custom-file {\n display: flex;\n align-items: center;\n}\n\n.input-group > .custom-file:not(:last-child) .custom-file-label,\n.input-group > .custom-file:not(:last-child) .custom-file-label::after {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .custom-file:not(:first-child) .custom-file-label {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.input-group-prepend,\n.input-group-append {\n display: flex;\n}\n\n.input-group-prepend .btn,\n.input-group-append .btn {\n position: relative;\n z-index: 2;\n}\n\n.input-group-prepend .btn + .btn,\n.input-group-prepend .btn + .input-group-text,\n.input-group-prepend .input-group-text + .input-group-text,\n.input-group-prepend .input-group-text + .btn,\n.input-group-append .btn + .btn,\n.input-group-append .btn + .input-group-text,\n.input-group-append .input-group-text + .input-group-text,\n.input-group-append .input-group-text + .btn {\n margin-left: -1px;\n}\n\n.input-group-prepend {\n margin-right: -1px;\n}\n\n.input-group-append {\n margin-left: -1px;\n}\n\n.input-group-text {\n display: flex;\n align-items: center;\n padding: 0.375rem 0.75rem;\n margin-bottom: 0;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n text-align: center;\n white-space: nowrap;\n background-color: #e9ecef;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n}\n\n.input-group-text input[type=\"radio\"],\n.input-group-text input[type=\"checkbox\"] {\n margin-top: 0;\n}\n\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-prepend > .input-group-text,\n.input-group-lg > .input-group-append > .input-group-text,\n.input-group-lg > .input-group-prepend > .btn,\n.input-group-lg > .input-group-append > .btn {\n height: calc(2.875rem + 2px);\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-prepend > .input-group-text,\n.input-group-sm > .input-group-append > .input-group-text,\n.input-group-sm > .input-group-prepend > .btn,\n.input-group-sm > .input-group-append > .btn {\n height: calc(1.8125rem + 2px);\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.input-group > .input-group-prepend > .btn,\n.input-group > .input-group-prepend > .input-group-text,\n.input-group > .input-group-append:not(:last-child) > .btn,\n.input-group > .input-group-append:not(:last-child) > .input-group-text,\n.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .input-group-append > .btn,\n.input-group > .input-group-append > .input-group-text,\n.input-group > .input-group-prepend:not(:first-child) > .btn,\n.input-group > .input-group-prepend:not(:first-child) > .input-group-text,\n.input-group > .input-group-prepend:first-child > .btn:not(:first-child),\n.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.custom-control {\n position: relative;\n display: block;\n min-height: 1.5rem;\n padding-left: 1.5rem;\n}\n\n.custom-control-inline {\n display: inline-flex;\n margin-right: 1rem;\n}\n\n.custom-control-input {\n position: absolute;\n z-index: -1;\n opacity: 0;\n}\n\n.custom-control-input:checked ~ .custom-control-label::before {\n color: #fff;\n background-color: #007bff;\n}\n\n.custom-control-input:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-control-input:active ~ .custom-control-label::before {\n color: #fff;\n background-color: #b3d7ff;\n}\n\n.custom-control-input:disabled ~ .custom-control-label {\n color: #6c757d;\n}\n\n.custom-control-input:disabled ~ .custom-control-label::before {\n background-color: #e9ecef;\n}\n\n.custom-control-label {\n position: relative;\n margin-bottom: 0;\n}\n\n.custom-control-label::before {\n position: absolute;\n top: 0.25rem;\n left: -1.5rem;\n display: block;\n width: 1rem;\n height: 1rem;\n pointer-events: none;\n content: \"\";\n user-select: none;\n background-color: #dee2e6;\n}\n\n.custom-control-label::after {\n position: absolute;\n top: 0.25rem;\n left: -1.5rem;\n display: block;\n width: 1rem;\n height: 1rem;\n content: \"\";\n background-repeat: no-repeat;\n background-position: center center;\n background-size: 50% 50%;\n}\n\n.custom-checkbox .custom-control-label::before {\n border-radius: 0.25rem;\n}\n\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {\n background-color: #007bff;\n}\n\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {\n background-image: url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E\");\n}\n\n.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {\n background-color: #007bff;\n}\n\n.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {\n background-image: url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E\");\n}\n\n.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-radio .custom-control-label::before {\n border-radius: 50%;\n}\n\n.custom-radio .custom-control-input:checked ~ .custom-control-label::before {\n background-color: #007bff;\n}\n\n.custom-radio .custom-control-input:checked ~ .custom-control-label::after {\n background-image: url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E\");\n}\n\n.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-select {\n display: inline-block;\n width: 100%;\n height: calc(2.25rem + 2px);\n padding: 0.375rem 1.75rem 0.375rem 0.75rem;\n line-height: 1.5;\n color: #495057;\n vertical-align: middle;\n background: #fff url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E\") no-repeat right 0.75rem center;\n background-size: 8px 10px;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n appearance: none;\n}\n\n.custom-select:focus {\n border-color: #80bdff;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(128, 189, 255, 0.5);\n}\n\n.custom-select:focus::-ms-value {\n color: #495057;\n background-color: #fff;\n}\n\n.custom-select[multiple], .custom-select[size]:not([size=\"1\"]) {\n height: auto;\n padding-right: 0.75rem;\n background-image: none;\n}\n\n.custom-select:disabled {\n color: #6c757d;\n background-color: #e9ecef;\n}\n\n.custom-select::-ms-expand {\n opacity: 0;\n}\n\n.custom-select-sm {\n height: calc(1.8125rem + 2px);\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n font-size: 75%;\n}\n\n.custom-select-lg {\n height: calc(2.875rem + 2px);\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n font-size: 125%;\n}\n\n.custom-file {\n position: relative;\n display: inline-block;\n width: 100%;\n height: calc(2.25rem + 2px);\n margin-bottom: 0;\n}\n\n.custom-file-input {\n position: relative;\n z-index: 2;\n width: 100%;\n height: calc(2.25rem + 2px);\n margin: 0;\n opacity: 0;\n}\n\n.custom-file-input:focus ~ .custom-file-label {\n border-color: #80bdff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-file-input:focus ~ .custom-file-label::after {\n border-color: #80bdff;\n}\n\n.custom-file-input:disabled ~ .custom-file-label {\n background-color: #e9ecef;\n}\n\n.custom-file-input:lang(en) ~ .custom-file-label::after {\n content: \"Browse\";\n}\n\n.custom-file-label {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1;\n height: calc(2.25rem + 2px);\n padding: 0.375rem 0.75rem;\n line-height: 1.5;\n color: #495057;\n background-color: #fff;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n}\n\n.custom-file-label::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n z-index: 3;\n display: block;\n height: 2.25rem;\n padding: 0.375rem 0.75rem;\n line-height: 1.5;\n color: #495057;\n content: \"Browse\";\n background-color: #e9ecef;\n border-left: 1px solid #ced4da;\n border-radius: 0 0.25rem 0.25rem 0;\n}\n\n.custom-range {\n width: 100%;\n padding-left: 0;\n background-color: transparent;\n appearance: none;\n}\n\n.custom-range:focus {\n outline: none;\n}\n\n.custom-range:focus::-webkit-slider-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range:focus::-moz-range-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range:focus::-ms-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range::-moz-focus-outer {\n border: 0;\n}\n\n.custom-range::-webkit-slider-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: -0.25rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n\n@media screen and (prefers-reduced-motion: reduce) {\n .custom-range::-webkit-slider-thumb {\n transition: none;\n }\n}\n\n.custom-range::-webkit-slider-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n\n.custom-range::-moz-range-thumb {\n width: 1rem;\n height: 1rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n\n@media screen and (prefers-reduced-motion: reduce) {\n .custom-range::-moz-range-thumb {\n transition: none;\n }\n}\n\n.custom-range::-moz-range-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-moz-range-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n\n.custom-range::-ms-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: 0;\n margin-right: 0.2rem;\n margin-left: 0.2rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n\n@media screen and (prefers-reduced-motion: reduce) {\n .custom-range::-ms-thumb {\n transition: none;\n }\n}\n\n.custom-range::-ms-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-ms-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: transparent;\n border-color: transparent;\n border-width: 0.5rem;\n}\n\n.custom-range::-ms-fill-lower {\n background-color: #dee2e6;\n border-radius: 1rem;\n}\n\n.custom-range::-ms-fill-upper {\n margin-right: 15px;\n background-color: #dee2e6;\n border-radius: 1rem;\n}\n\n.custom-control-label::before,\n.custom-file-label,\n.custom-select {\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media screen and (prefers-reduced-motion: reduce) {\n .custom-control-label::before,\n .custom-file-label,\n .custom-select {\n transition: none;\n }\n}\n\n.nav {\n display: flex;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.nav-link {\n display: block;\n padding: 0.5rem 1rem;\n}\n\n.nav-link:hover, .nav-link:focus {\n text-decoration: none;\n}\n\n.nav-link.disabled {\n color: #6c757d;\n}\n\n.nav-tabs {\n border-bottom: 1px solid #dee2e6;\n}\n\n.nav-tabs .nav-item {\n margin-bottom: -1px;\n}\n\n.nav-tabs .nav-link {\n border: 1px solid transparent;\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n border-color: #e9ecef #e9ecef #dee2e6;\n}\n\n.nav-tabs .nav-link.disabled {\n color: #6c757d;\n background-color: transparent;\n border-color: transparent;\n}\n\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: #495057;\n background-color: #fff;\n border-color: #dee2e6 #dee2e6 #fff;\n}\n\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav-pills .nav-link {\n border-radius: 0.25rem;\n}\n\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: #fff;\n background-color: #007bff;\n}\n\n.nav-fill .nav-item {\n flex: 1 1 auto;\n text-align: center;\n}\n\n.nav-justified .nav-item {\n flex-basis: 0;\n flex-grow: 1;\n text-align: center;\n}\n\n.tab-content > .tab-pane {\n display: none;\n}\n\n.tab-content > .active {\n display: block;\n}\n\n.navbar {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n padding: 0.5rem 1rem;\n}\n\n.navbar > .container,\n.navbar > .container-fluid {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n}\n\n.navbar-brand {\n display: inline-block;\n padding-top: 0.3125rem;\n padding-bottom: 0.3125rem;\n margin-right: 1rem;\n font-size: 1.25rem;\n line-height: inherit;\n white-space: nowrap;\n}\n\n.navbar-brand:hover, .navbar-brand:focus {\n text-decoration: none;\n}\n\n.navbar-nav {\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.navbar-nav .nav-link {\n padding-right: 0;\n padding-left: 0;\n}\n\n.navbar-nav .dropdown-menu {\n position: static;\n float: none;\n}\n\n.navbar-text {\n display: inline-block;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.navbar-collapse {\n flex-basis: 100%;\n flex-grow: 1;\n align-items: center;\n}\n\n.navbar-toggler {\n padding: 0.25rem 0.75rem;\n font-size: 1.25rem;\n line-height: 1;\n background-color: transparent;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n\n.navbar-toggler:hover, .navbar-toggler:focus {\n text-decoration: none;\n}\n\n.navbar-toggler:not(:disabled):not(.disabled) {\n cursor: pointer;\n}\n\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n content: \"\";\n background: no-repeat center center;\n background-size: 100% 100%;\n}\n\n@media (max-width: 575.98px) {\n .navbar-expand-sm > .container,\n .navbar-expand-sm > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-sm > .container,\n .navbar-expand-sm > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-sm .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 767.98px) {\n .navbar-expand-md > .container,\n .navbar-expand-md > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 768px) {\n .navbar-expand-md {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-md > .container,\n .navbar-expand-md > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-md .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 991.98px) {\n .navbar-expand-lg > .container,\n .navbar-expand-lg > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 992px) {\n .navbar-expand-lg {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-lg > .container,\n .navbar-expand-lg > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-lg .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 1199.98px) {\n .navbar-expand-xl > .container,\n .navbar-expand-xl > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-xl > .container,\n .navbar-expand-xl > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-xl .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n}\n\n.navbar-expand {\n flex-flow: row nowrap;\n justify-content: flex-start;\n}\n\n.navbar-expand > .container,\n.navbar-expand > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n}\n\n.navbar-expand .navbar-nav {\n flex-direction: row;\n}\n\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n\n.navbar-expand .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n}\n\n.navbar-expand > .container,\n.navbar-expand > .container-fluid {\n flex-wrap: nowrap;\n}\n\n.navbar-expand .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n}\n\n.navbar-expand .navbar-toggler {\n display: none;\n}\n\n.navbar-light .navbar-brand {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-nav .nav-link {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {\n color: rgba(0, 0, 0, 0.7);\n}\n\n.navbar-light .navbar-nav .nav-link.disabled {\n color: rgba(0, 0, 0, 0.3);\n}\n\n.navbar-light .navbar-nav .show > .nav-link,\n.navbar-light .navbar-nav .active > .nav-link,\n.navbar-light .navbar-nav .nav-link.show,\n.navbar-light .navbar-nav .nav-link.active {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-toggler {\n color: rgba(0, 0, 0, 0.5);\n border-color: rgba(0, 0, 0, 0.1);\n}\n\n.navbar-light .navbar-toggler-icon {\n background-image: url(\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E\");\n}\n\n.navbar-light .navbar-text {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.navbar-light .navbar-text a {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-dark .navbar-brand {\n color: #fff;\n}\n\n.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {\n color: #fff;\n}\n\n.navbar-dark .navbar-nav .nav-link {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: rgba(255, 255, 255, 0.75);\n}\n\n.navbar-dark .navbar-nav .nav-link.disabled {\n color: rgba(255, 255, 255, 0.25);\n}\n\n.navbar-dark .navbar-nav .show > .nav-link,\n.navbar-dark .navbar-nav .active > .nav-link,\n.navbar-dark .navbar-nav .nav-link.show,\n.navbar-dark .navbar-nav .nav-link.active {\n color: #fff;\n}\n\n.navbar-dark .navbar-toggler {\n color: rgba(255, 255, 255, 0.5);\n border-color: rgba(255, 255, 255, 0.1);\n}\n\n.navbar-dark .navbar-toggler-icon {\n background-image: url(\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E\");\n}\n\n.navbar-dark .navbar-text {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.navbar-dark .navbar-text a {\n color: #fff;\n}\n\n.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {\n color: #fff;\n}\n\n.card {\n position: relative;\n display: flex;\n flex-direction: column;\n min-width: 0;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: border-box;\n border: 1px solid rgba(0, 0, 0, 0.125);\n border-radius: 0.25rem;\n}\n\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n\n.card > .list-group:first-child .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.card > .list-group:last-child .list-group-item:last-child {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.card-body {\n flex: 1 1 auto;\n padding: 1.25rem;\n}\n\n.card-title {\n margin-bottom: 0.75rem;\n}\n\n.card-subtitle {\n margin-top: -0.375rem;\n margin-bottom: 0;\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link:hover {\n text-decoration: none;\n}\n\n.card-link + .card-link {\n margin-left: 1.25rem;\n}\n\n.card-header {\n padding: 0.75rem 1.25rem;\n margin-bottom: 0;\n background-color: rgba(0, 0, 0, 0.03);\n border-bottom: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-header:first-child {\n border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;\n}\n\n.card-header + .list-group .list-group-item:first-child {\n border-top: 0;\n}\n\n.card-footer {\n padding: 0.75rem 1.25rem;\n background-color: rgba(0, 0, 0, 0.03);\n border-top: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-footer:last-child {\n border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);\n}\n\n.card-header-tabs {\n margin-right: -0.625rem;\n margin-bottom: -0.75rem;\n margin-left: -0.625rem;\n border-bottom: 0;\n}\n\n.card-header-pills {\n margin-right: -0.625rem;\n margin-left: -0.625rem;\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: 1.25rem;\n}\n\n.card-img {\n width: 100%;\n border-radius: calc(0.25rem - 1px);\n}\n\n.card-img-top {\n width: 100%;\n border-top-left-radius: calc(0.25rem - 1px);\n border-top-right-radius: calc(0.25rem - 1px);\n}\n\n.card-img-bottom {\n width: 100%;\n border-bottom-right-radius: calc(0.25rem - 1px);\n border-bottom-left-radius: calc(0.25rem - 1px);\n}\n\n.card-deck {\n display: flex;\n flex-direction: column;\n}\n\n.card-deck .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-deck {\n flex-flow: row wrap;\n margin-right: -15px;\n margin-left: -15px;\n }\n .card-deck .card {\n display: flex;\n flex: 1 0 0%;\n flex-direction: column;\n margin-right: 15px;\n margin-bottom: 0;\n margin-left: 15px;\n }\n}\n\n.card-group {\n display: flex;\n flex-direction: column;\n}\n\n.card-group > .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-group {\n flex-flow: row wrap;\n }\n .card-group > .card {\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:first-child {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:first-child .card-img-top,\n .card-group > .card:first-child .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:first-child .card-img-bottom,\n .card-group > .card:first-child .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:last-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:last-child .card-img-top,\n .card-group > .card:last-child .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:last-child .card-img-bottom,\n .card-group > .card:last-child .card-footer {\n border-bottom-left-radius: 0;\n }\n .card-group > .card:only-child {\n border-radius: 0.25rem;\n }\n .card-group > .card:only-child .card-img-top,\n .card-group > .card:only-child .card-header {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n }\n .card-group > .card:only-child .card-img-bottom,\n .card-group > .card:only-child .card-footer {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n }\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) {\n border-radius: 0;\n }\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-top,\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-header,\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-footer {\n border-radius: 0;\n }\n}\n\n.card-columns .card {\n margin-bottom: 0.75rem;\n}\n\n@media (min-width: 576px) {\n .card-columns {\n column-count: 3;\n column-gap: 1.25rem;\n orphans: 1;\n widows: 1;\n }\n .card-columns .card {\n display: inline-block;\n width: 100%;\n }\n}\n\n.accordion .card:not(:first-of-type):not(:last-of-type) {\n border-bottom: 0;\n border-radius: 0;\n}\n\n.accordion .card:not(:first-of-type) .card-header:first-child {\n border-radius: 0;\n}\n\n.accordion .card:first-of-type {\n border-bottom: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.accordion .card:last-of-type {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.breadcrumb {\n display: flex;\n flex-wrap: wrap;\n padding: 0.75rem 1rem;\n margin-bottom: 1rem;\n list-style: none;\n background-color: #e9ecef;\n border-radius: 0.25rem;\n}\n\n.breadcrumb-item + .breadcrumb-item {\n padding-left: 0.5rem;\n}\n\n.breadcrumb-item + .breadcrumb-item::before {\n display: inline-block;\n padding-right: 0.5rem;\n color: #6c757d;\n content: \"/\";\n}\n\n.breadcrumb-item + .breadcrumb-item:hover::before {\n text-decoration: underline;\n}\n\n.breadcrumb-item + .breadcrumb-item:hover::before {\n text-decoration: none;\n}\n\n.breadcrumb-item.active {\n color: #6c757d;\n}\n\n.pagination {\n display: flex;\n padding-left: 0;\n list-style: none;\n border-radius: 0.25rem;\n}\n\n.page-link {\n position: relative;\n display: block;\n padding: 0.5rem 0.75rem;\n margin-left: -1px;\n line-height: 1.25;\n color: #007bff;\n background-color: #fff;\n border: 1px solid #dee2e6;\n}\n\n.page-link:hover {\n z-index: 2;\n color: #0056b3;\n text-decoration: none;\n background-color: #e9ecef;\n border-color: #dee2e6;\n}\n\n.page-link:focus {\n z-index: 2;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.page-link:not(:disabled):not(.disabled) {\n cursor: pointer;\n}\n\n.page-item:first-child .page-link {\n margin-left: 0;\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.page-item:last-child .page-link {\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n}\n\n.page-item.active .page-link {\n z-index: 1;\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.page-item.disabled .page-link {\n color: #6c757d;\n pointer-events: none;\n cursor: auto;\n background-color: #fff;\n border-color: #dee2e6;\n}\n\n.pagination-lg .page-link {\n padding: 0.75rem 1.5rem;\n font-size: 1.25rem;\n line-height: 1.5;\n}\n\n.pagination-lg .page-item:first-child .page-link {\n border-top-left-radius: 0.3rem;\n border-bottom-left-radius: 0.3rem;\n}\n\n.pagination-lg .page-item:last-child .page-link {\n border-top-right-radius: 0.3rem;\n border-bottom-right-radius: 0.3rem;\n}\n\n.pagination-sm .page-link {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n}\n\n.pagination-sm .page-item:first-child .page-link {\n border-top-left-radius: 0.2rem;\n border-bottom-left-radius: 0.2rem;\n}\n\n.pagination-sm .page-item:last-child .page-link {\n border-top-right-radius: 0.2rem;\n border-bottom-right-radius: 0.2rem;\n}\n\n.badge {\n display: inline-block;\n padding: 0.25em 0.4em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25rem;\n}\n\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.badge-pill {\n padding-right: 0.6em;\n padding-left: 0.6em;\n border-radius: 10rem;\n}\n\n.badge-primary {\n color: #fff;\n background-color: #007bff;\n}\n\n.badge-primary[href]:hover, .badge-primary[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #0062cc;\n}\n\n.badge-secondary {\n color: #fff;\n background-color: #6c757d;\n}\n\n.badge-secondary[href]:hover, .badge-secondary[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #545b62;\n}\n\n.badge-success {\n color: #fff;\n background-color: #28a745;\n}\n\n.badge-success[href]:hover, .badge-success[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #1e7e34;\n}\n\n.badge-info {\n color: #fff;\n background-color: #17a2b8;\n}\n\n.badge-info[href]:hover, .badge-info[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #117a8b;\n}\n\n.badge-warning {\n color: #212529;\n background-color: #ffc107;\n}\n\n.badge-warning[href]:hover, .badge-warning[href]:focus {\n color: #212529;\n text-decoration: none;\n background-color: #d39e00;\n}\n\n.badge-danger {\n color: #fff;\n background-color: #dc3545;\n}\n\n.badge-danger[href]:hover, .badge-danger[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #bd2130;\n}\n\n.badge-light {\n color: #212529;\n background-color: #f8f9fa;\n}\n\n.badge-light[href]:hover, .badge-light[href]:focus {\n color: #212529;\n text-decoration: none;\n background-color: #dae0e5;\n}\n\n.badge-dark {\n color: #fff;\n background-color: #343a40;\n}\n\n.badge-dark[href]:hover, .badge-dark[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #1d2124;\n}\n\n.jumbotron {\n padding: 2rem 1rem;\n margin-bottom: 2rem;\n background-color: #e9ecef;\n border-radius: 0.3rem;\n}\n\n@media (min-width: 576px) {\n .jumbotron {\n padding: 4rem 2rem;\n }\n}\n\n.jumbotron-fluid {\n padding-right: 0;\n padding-left: 0;\n border-radius: 0;\n}\n\n.alert {\n position: relative;\n padding: 0.75rem 1.25rem;\n margin-bottom: 1rem;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n\n.alert-heading {\n color: inherit;\n}\n\n.alert-link {\n font-weight: 700;\n}\n\n.alert-dismissible {\n padding-right: 4rem;\n}\n\n.alert-dismissible .close {\n position: absolute;\n top: 0;\n right: 0;\n padding: 0.75rem 1.25rem;\n color: inherit;\n}\n\n.alert-primary {\n color: #004085;\n background-color: #cce5ff;\n border-color: #b8daff;\n}\n\n.alert-primary hr {\n border-top-color: #9fcdff;\n}\n\n.alert-primary .alert-link {\n color: #002752;\n}\n\n.alert-secondary {\n color: #383d41;\n background-color: #e2e3e5;\n border-color: #d6d8db;\n}\n\n.alert-secondary hr {\n border-top-color: #c8cbcf;\n}\n\n.alert-secondary .alert-link {\n color: #202326;\n}\n\n.alert-success {\n color: #155724;\n background-color: #d4edda;\n border-color: #c3e6cb;\n}\n\n.alert-success hr {\n border-top-color: #b1dfbb;\n}\n\n.alert-success .alert-link {\n color: #0b2e13;\n}\n\n.alert-info {\n color: #0c5460;\n background-color: #d1ecf1;\n border-color: #bee5eb;\n}\n\n.alert-info hr {\n border-top-color: #abdde5;\n}\n\n.alert-info .alert-link {\n color: #062c33;\n}\n\n.alert-warning {\n color: #856404;\n background-color: #fff3cd;\n border-color: #ffeeba;\n}\n\n.alert-warning hr {\n border-top-color: #ffe8a1;\n}\n\n.alert-warning .alert-link {\n color: #533f03;\n}\n\n.alert-danger {\n color: #721c24;\n background-color: #f8d7da;\n border-color: #f5c6cb;\n}\n\n.alert-danger hr {\n border-top-color: #f1b0b7;\n}\n\n.alert-danger .alert-link {\n color: #491217;\n}\n\n.alert-light {\n color: #818182;\n background-color: #fefefe;\n border-color: #fdfdfe;\n}\n\n.alert-light hr {\n border-top-color: #ececf6;\n}\n\n.alert-light .alert-link {\n color: #686868;\n}\n\n.alert-dark {\n color: #1b1e21;\n background-color: #d6d8d9;\n border-color: #c6c8ca;\n}\n\n.alert-dark hr {\n border-top-color: #b9bbbe;\n}\n\n.alert-dark .alert-link {\n color: #040505;\n}\n\n@keyframes progress-bar-stripes {\n from {\n background-position: 1rem 0;\n }\n to {\n background-position: 0 0;\n }\n}\n\n.progress {\n display: flex;\n height: 1rem;\n overflow: hidden;\n font-size: 0.75rem;\n background-color: #e9ecef;\n border-radius: 0.25rem;\n}\n\n.progress-bar {\n display: flex;\n flex-direction: column;\n justify-content: center;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n background-color: #007bff;\n transition: width 0.6s ease;\n}\n\n@media screen and (prefers-reduced-motion: reduce) {\n .progress-bar {\n transition: none;\n }\n}\n\n.progress-bar-striped {\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 1rem 1rem;\n}\n\n.progress-bar-animated {\n animation: progress-bar-stripes 1s linear infinite;\n}\n\n.media {\n display: flex;\n align-items: flex-start;\n}\n\n.media-body {\n flex: 1;\n}\n\n.list-group {\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n}\n\n.list-group-item-action {\n width: 100%;\n color: #495057;\n text-align: inherit;\n}\n\n.list-group-item-action:hover, .list-group-item-action:focus {\n color: #495057;\n text-decoration: none;\n background-color: #f8f9fa;\n}\n\n.list-group-item-action:active {\n color: #212529;\n background-color: #e9ecef;\n}\n\n.list-group-item {\n position: relative;\n display: block;\n padding: 0.75rem 1.25rem;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.list-group-item:hover, .list-group-item:focus {\n z-index: 1;\n text-decoration: none;\n}\n\n.list-group-item.disabled, .list-group-item:disabled {\n color: #6c757d;\n background-color: #fff;\n}\n\n.list-group-item.active {\n z-index: 2;\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.list-group-flush .list-group-item {\n border-right: 0;\n border-left: 0;\n border-radius: 0;\n}\n\n.list-group-flush:first-child .list-group-item:first-child {\n border-top: 0;\n}\n\n.list-group-flush:last-child .list-group-item:last-child {\n border-bottom: 0;\n}\n\n.list-group-item-primary {\n color: #004085;\n background-color: #b8daff;\n}\n\n.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {\n color: #004085;\n background-color: #9fcdff;\n}\n\n.list-group-item-primary.list-group-item-action.active {\n color: #fff;\n background-color: #004085;\n border-color: #004085;\n}\n\n.list-group-item-secondary {\n color: #383d41;\n background-color: #d6d8db;\n}\n\n.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {\n color: #383d41;\n background-color: #c8cbcf;\n}\n\n.list-group-item-secondary.list-group-item-action.active {\n color: #fff;\n background-color: #383d41;\n border-color: #383d41;\n}\n\n.list-group-item-success {\n color: #155724;\n background-color: #c3e6cb;\n}\n\n.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {\n color: #155724;\n background-color: #b1dfbb;\n}\n\n.list-group-item-success.list-group-item-action.active {\n color: #fff;\n background-color: #155724;\n border-color: #155724;\n}\n\n.list-group-item-info {\n color: #0c5460;\n background-color: #bee5eb;\n}\n\n.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {\n color: #0c5460;\n background-color: #abdde5;\n}\n\n.list-group-item-info.list-group-item-action.active {\n color: #fff;\n background-color: #0c5460;\n border-color: #0c5460;\n}\n\n.list-group-item-warning {\n color: #856404;\n background-color: #ffeeba;\n}\n\n.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {\n color: #856404;\n background-color: #ffe8a1;\n}\n\n.list-group-item-warning.list-group-item-action.active {\n color: #fff;\n background-color: #856404;\n border-color: #856404;\n}\n\n.list-group-item-danger {\n color: #721c24;\n background-color: #f5c6cb;\n}\n\n.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {\n color: #721c24;\n background-color: #f1b0b7;\n}\n\n.list-group-item-danger.list-group-item-action.active {\n color: #fff;\n background-color: #721c24;\n border-color: #721c24;\n}\n\n.list-group-item-light {\n color: #818182;\n background-color: #fdfdfe;\n}\n\n.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {\n color: #818182;\n background-color: #ececf6;\n}\n\n.list-group-item-light.list-group-item-action.active {\n color: #fff;\n background-color: #818182;\n border-color: #818182;\n}\n\n.list-group-item-dark {\n color: #1b1e21;\n background-color: #c6c8ca;\n}\n\n.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {\n color: #1b1e21;\n background-color: #b9bbbe;\n}\n\n.list-group-item-dark.list-group-item-action.active {\n color: #fff;\n background-color: #1b1e21;\n border-color: #1b1e21;\n}\n\n.close {\n float: right;\n font-size: 1.5rem;\n font-weight: 700;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n opacity: .5;\n}\n\n.close:not(:disabled):not(.disabled) {\n cursor: pointer;\n}\n\n.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {\n color: #000;\n text-decoration: none;\n opacity: .75;\n}\n\nbutton.close {\n padding: 0;\n background-color: transparent;\n border: 0;\n -webkit-appearance: none;\n}\n\n.modal-open {\n overflow: hidden;\n}\n\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n display: none;\n overflow: hidden;\n outline: 0;\n}\n\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 0.5rem;\n pointer-events: none;\n}\n\n.modal.fade .modal-dialog {\n transition: transform 0.3s ease-out;\n transform: translate(0, -25%);\n}\n\n@media screen and (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n transition: none;\n }\n}\n\n.modal.show .modal-dialog {\n transform: translate(0, 0);\n}\n\n.modal-dialog-centered {\n display: flex;\n align-items: center;\n min-height: calc(100% - (0.5rem * 2));\n}\n\n.modal-dialog-centered::before {\n display: block;\n height: calc(100vh - (0.5rem * 2));\n content: \"\";\n}\n\n.modal-content {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n pointer-events: auto;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n outline: 0;\n}\n\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000;\n}\n\n.modal-backdrop.fade {\n opacity: 0;\n}\n\n.modal-backdrop.show {\n opacity: 0.5;\n}\n\n.modal-header {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n padding: 1rem;\n border-bottom: 1px solid #e9ecef;\n border-top-left-radius: 0.3rem;\n border-top-right-radius: 0.3rem;\n}\n\n.modal-header .close {\n padding: 1rem;\n margin: -1rem -1rem -1rem auto;\n}\n\n.modal-title {\n margin-bottom: 0;\n line-height: 1.5;\n}\n\n.modal-body {\n position: relative;\n flex: 1 1 auto;\n padding: 1rem;\n}\n\n.modal-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n padding: 1rem;\n border-top: 1px solid #e9ecef;\n}\n\n.modal-footer > :not(:first-child) {\n margin-left: .25rem;\n}\n\n.modal-footer > :not(:last-child) {\n margin-right: .25rem;\n}\n\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n\n@media (min-width: 576px) {\n .modal-dialog {\n max-width: 500px;\n margin: 1.75rem auto;\n }\n .modal-dialog-centered {\n min-height: calc(100% - (1.75rem * 2));\n }\n .modal-dialog-centered::before {\n height: calc(100vh - (1.75rem * 2));\n }\n .modal-sm {\n max-width: 300px;\n }\n}\n\n@media (min-width: 992px) {\n .modal-lg {\n max-width: 800px;\n }\n}\n\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n opacity: 0;\n}\n\n.tooltip.show {\n opacity: 0.9;\n}\n\n.tooltip .arrow {\n position: absolute;\n display: block;\n width: 0.8rem;\n height: 0.4rem;\n}\n\n.tooltip .arrow::before {\n position: absolute;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-tooltip-top, .bs-tooltip-auto[x-placement^=\"top\"] {\n padding: 0.4rem 0;\n}\n\n.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=\"top\"] .arrow {\n bottom: 0;\n}\n\n.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=\"top\"] .arrow::before {\n top: 0;\n border-width: 0.4rem 0.4rem 0;\n border-top-color: #000;\n}\n\n.bs-tooltip-right, .bs-tooltip-auto[x-placement^=\"right\"] {\n padding: 0 0.4rem;\n}\n\n.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=\"right\"] .arrow {\n left: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n\n.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=\"right\"] .arrow::before {\n right: 0;\n border-width: 0.4rem 0.4rem 0.4rem 0;\n border-right-color: #000;\n}\n\n.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=\"bottom\"] {\n padding: 0.4rem 0;\n}\n\n.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=\"bottom\"] .arrow {\n top: 0;\n}\n\n.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=\"bottom\"] .arrow::before {\n bottom: 0;\n border-width: 0 0.4rem 0.4rem;\n border-bottom-color: #000;\n}\n\n.bs-tooltip-left, .bs-tooltip-auto[x-placement^=\"left\"] {\n padding: 0 0.4rem;\n}\n\n.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=\"left\"] .arrow {\n right: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n\n.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=\"left\"] .arrow::before {\n left: 0;\n border-width: 0.4rem 0 0.4rem 0.4rem;\n border-left-color: #000;\n}\n\n.tooltip-inner {\n max-width: 200px;\n padding: 0.25rem 0.5rem;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 0.25rem;\n}\n\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: block;\n max-width: 276px;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n}\n\n.popover .arrow {\n position: absolute;\n display: block;\n width: 1rem;\n height: 0.5rem;\n margin: 0 0.3rem;\n}\n\n.popover .arrow::before, .popover .arrow::after {\n position: absolute;\n display: block;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-popover-top, .bs-popover-auto[x-placement^=\"top\"] {\n margin-bottom: 0.5rem;\n}\n\n.bs-popover-top .arrow, .bs-popover-auto[x-placement^=\"top\"] .arrow {\n bottom: calc((0.5rem + 1px) * -1);\n}\n\n.bs-popover-top .arrow::before, .bs-popover-auto[x-placement^=\"top\"] .arrow::before,\n.bs-popover-top .arrow::after,\n.bs-popover-auto[x-placement^=\"top\"] .arrow::after {\n border-width: 0.5rem 0.5rem 0;\n}\n\n.bs-popover-top .arrow::before, .bs-popover-auto[x-placement^=\"top\"] .arrow::before {\n bottom: 0;\n border-top-color: rgba(0, 0, 0, 0.25);\n}\n\n\n.bs-popover-top .arrow::after,\n.bs-popover-auto[x-placement^=\"top\"] .arrow::after {\n bottom: 1px;\n border-top-color: #fff;\n}\n\n.bs-popover-right, .bs-popover-auto[x-placement^=\"right\"] {\n margin-left: 0.5rem;\n}\n\n.bs-popover-right .arrow, .bs-popover-auto[x-placement^=\"right\"] .arrow {\n left: calc((0.5rem + 1px) * -1);\n width: 0.5rem;\n height: 1rem;\n margin: 0.3rem 0;\n}\n\n.bs-popover-right .arrow::before, .bs-popover-auto[x-placement^=\"right\"] .arrow::before,\n.bs-popover-right .arrow::after,\n.bs-popover-auto[x-placement^=\"right\"] .arrow::after {\n border-width: 0.5rem 0.5rem 0.5rem 0;\n}\n\n.bs-popover-right .arrow::before, .bs-popover-auto[x-placement^=\"right\"] .arrow::before {\n left: 0;\n border-right-color: rgba(0, 0, 0, 0.25);\n}\n\n\n.bs-popover-right .arrow::after,\n.bs-popover-auto[x-placement^=\"right\"] .arrow::after {\n left: 1px;\n border-right-color: #fff;\n}\n\n.bs-popover-bottom, .bs-popover-auto[x-placement^=\"bottom\"] {\n margin-top: 0.5rem;\n}\n\n.bs-popover-bottom .arrow, .bs-popover-auto[x-placement^=\"bottom\"] .arrow {\n top: calc((0.5rem + 1px) * -1);\n}\n\n.bs-popover-bottom .arrow::before, .bs-popover-auto[x-placement^=\"bottom\"] .arrow::before,\n.bs-popover-bottom .arrow::after,\n.bs-popover-auto[x-placement^=\"bottom\"] .arrow::after {\n border-width: 0 0.5rem 0.5rem 0.5rem;\n}\n\n.bs-popover-bottom .arrow::before, .bs-popover-auto[x-placement^=\"bottom\"] .arrow::before {\n top: 0;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n\n\n.bs-popover-bottom .arrow::after,\n.bs-popover-auto[x-placement^=\"bottom\"] .arrow::after {\n top: 1px;\n border-bottom-color: #fff;\n}\n\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=\"bottom\"] .popover-header::before {\n position: absolute;\n top: 0;\n left: 50%;\n display: block;\n width: 1rem;\n margin-left: -0.5rem;\n content: \"\";\n border-bottom: 1px solid #f7f7f7;\n}\n\n.bs-popover-left, .bs-popover-auto[x-placement^=\"left\"] {\n margin-right: 0.5rem;\n}\n\n.bs-popover-left .arrow, .bs-popover-auto[x-placement^=\"left\"] .arrow {\n right: calc((0.5rem + 1px) * -1);\n width: 0.5rem;\n height: 1rem;\n margin: 0.3rem 0;\n}\n\n.bs-popover-left .arrow::before, .bs-popover-auto[x-placement^=\"left\"] .arrow::before,\n.bs-popover-left .arrow::after,\n.bs-popover-auto[x-placement^=\"left\"] .arrow::after {\n border-width: 0.5rem 0 0.5rem 0.5rem;\n}\n\n.bs-popover-left .arrow::before, .bs-popover-auto[x-placement^=\"left\"] .arrow::before {\n right: 0;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n\n\n.bs-popover-left .arrow::after,\n.bs-popover-auto[x-placement^=\"left\"] .arrow::after {\n right: 1px;\n border-left-color: #fff;\n}\n\n.popover-header {\n padding: 0.5rem 0.75rem;\n margin-bottom: 0;\n font-size: 1rem;\n color: inherit;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-top-left-radius: calc(0.3rem - 1px);\n border-top-right-radius: calc(0.3rem - 1px);\n}\n\n.popover-header:empty {\n display: none;\n}\n\n.popover-body {\n padding: 0.5rem 0.75rem;\n color: #212529;\n}\n\n.carousel {\n position: relative;\n}\n\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n\n.carousel-item {\n position: relative;\n display: none;\n align-items: center;\n width: 100%;\n backface-visibility: hidden;\n perspective: 1000px;\n}\n\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n transition: transform 0.6s ease;\n}\n\n@media screen and (prefers-reduced-motion: reduce) {\n .carousel-item.active,\n .carousel-item-next,\n .carousel-item-prev {\n transition: none;\n }\n}\n\n.carousel-item-next,\n.carousel-item-prev {\n position: absolute;\n top: 0;\n}\n\n.carousel-item-next.carousel-item-left,\n.carousel-item-prev.carousel-item-right {\n transform: translateX(0);\n}\n\n@supports (transform-style: preserve-3d) {\n .carousel-item-next.carousel-item-left,\n .carousel-item-prev.carousel-item-right {\n transform: translate3d(0, 0, 0);\n }\n}\n\n.carousel-item-next,\n.active.carousel-item-right {\n transform: translateX(100%);\n}\n\n@supports (transform-style: preserve-3d) {\n .carousel-item-next,\n .active.carousel-item-right {\n transform: translate3d(100%, 0, 0);\n }\n}\n\n.carousel-item-prev,\n.active.carousel-item-left {\n transform: translateX(-100%);\n}\n\n@supports (transform-style: preserve-3d) {\n .carousel-item-prev,\n .active.carousel-item-left {\n transform: translate3d(-100%, 0, 0);\n }\n}\n\n.carousel-fade .carousel-item {\n opacity: 0;\n transition-duration: .6s;\n transition-property: opacity;\n}\n\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-left,\n.carousel-fade .carousel-item-prev.carousel-item-right {\n opacity: 1;\n}\n\n.carousel-fade .active.carousel-item-left,\n.carousel-fade .active.carousel-item-right {\n opacity: 0;\n}\n\n.carousel-fade .carousel-item-next,\n.carousel-fade .carousel-item-prev,\n.carousel-fade .carousel-item.active,\n.carousel-fade .active.carousel-item-left,\n.carousel-fade .active.carousel-item-prev {\n transform: translateX(0);\n}\n\n@supports (transform-style: preserve-3d) {\n .carousel-fade .carousel-item-next,\n .carousel-fade .carousel-item-prev,\n .carousel-fade .carousel-item.active,\n .carousel-fade .active.carousel-item-left,\n .carousel-fade .active.carousel-item-prev {\n transform: translate3d(0, 0, 0);\n }\n}\n\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 15%;\n color: #fff;\n text-align: center;\n opacity: 0.5;\n}\n\n.carousel-control-prev:hover, .carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: .9;\n}\n\n.carousel-control-prev {\n left: 0;\n}\n\n.carousel-control-next {\n right: 0;\n}\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 20px;\n height: 20px;\n background: transparent no-repeat center center;\n background-size: 100% 100%;\n}\n\n.carousel-control-prev-icon {\n background-image: url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E\");\n}\n\n.carousel-control-next-icon {\n background-image: url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E\");\n}\n\n.carousel-indicators {\n position: absolute;\n right: 0;\n bottom: 10px;\n left: 0;\n z-index: 15;\n display: flex;\n justify-content: center;\n padding-left: 0;\n margin-right: 15%;\n margin-left: 15%;\n list-style: none;\n}\n\n.carousel-indicators li {\n position: relative;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n margin-right: 3px;\n margin-left: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: rgba(255, 255, 255, 0.5);\n}\n\n.carousel-indicators li::before {\n position: absolute;\n top: -10px;\n left: 0;\n display: inline-block;\n width: 100%;\n height: 10px;\n content: \"\";\n}\n\n.carousel-indicators li::after {\n position: absolute;\n bottom: -10px;\n left: 0;\n display: inline-block;\n width: 100%;\n height: 10px;\n content: \"\";\n}\n\n.carousel-indicators .active {\n background-color: #fff;\n}\n\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n}\n\n.align-baseline {\n vertical-align: baseline !important;\n}\n\n.align-top {\n vertical-align: top !important;\n}\n\n.align-middle {\n vertical-align: middle !important;\n}\n\n.align-bottom {\n vertical-align: bottom !important;\n}\n\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n\n.align-text-top {\n vertical-align: text-top !important;\n}\n\n.bg-primary {\n background-color: #007bff !important;\n}\n\na.bg-primary:hover, a.bg-primary:focus,\nbutton.bg-primary:hover,\nbutton.bg-primary:focus {\n background-color: #0062cc !important;\n}\n\n.bg-secondary {\n background-color: #6c757d !important;\n}\n\na.bg-secondary:hover, a.bg-secondary:focus,\nbutton.bg-secondary:hover,\nbutton.bg-secondary:focus {\n background-color: #545b62 !important;\n}\n\n.bg-success {\n background-color: #28a745 !important;\n}\n\na.bg-success:hover, a.bg-success:focus,\nbutton.bg-success:hover,\nbutton.bg-success:focus {\n background-color: #1e7e34 !important;\n}\n\n.bg-info {\n background-color: #17a2b8 !important;\n}\n\na.bg-info:hover, a.bg-info:focus,\nbutton.bg-info:hover,\nbutton.bg-info:focus {\n background-color: #117a8b !important;\n}\n\n.bg-warning {\n background-color: #ffc107 !important;\n}\n\na.bg-warning:hover, a.bg-warning:focus,\nbutton.bg-warning:hover,\nbutton.bg-warning:focus {\n background-color: #d39e00 !important;\n}\n\n.bg-danger {\n background-color: #dc3545 !important;\n}\n\na.bg-danger:hover, a.bg-danger:focus,\nbutton.bg-danger:hover,\nbutton.bg-danger:focus {\n background-color: #bd2130 !important;\n}\n\n.bg-light {\n background-color: #f8f9fa !important;\n}\n\na.bg-light:hover, a.bg-light:focus,\nbutton.bg-light:hover,\nbutton.bg-light:focus {\n background-color: #dae0e5 !important;\n}\n\n.bg-dark {\n background-color: #343a40 !important;\n}\n\na.bg-dark:hover, a.bg-dark:focus,\nbutton.bg-dark:hover,\nbutton.bg-dark:focus {\n background-color: #1d2124 !important;\n}\n\n.bg-white {\n background-color: #fff !important;\n}\n\n.bg-transparent {\n background-color: transparent !important;\n}\n\n.border {\n border: 1px solid #dee2e6 !important;\n}\n\n.border-top {\n border-top: 1px solid #dee2e6 !important;\n}\n\n.border-right {\n border-right: 1px solid #dee2e6 !important;\n}\n\n.border-bottom {\n border-bottom: 1px solid #dee2e6 !important;\n}\n\n.border-left {\n border-left: 1px solid #dee2e6 !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-right-0 {\n border-right: 0 !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-left-0 {\n border-left: 0 !important;\n}\n\n.border-primary {\n border-color: #007bff !important;\n}\n\n.border-secondary {\n border-color: #6c757d !important;\n}\n\n.border-success {\n border-color: #28a745 !important;\n}\n\n.border-info {\n border-color: #17a2b8 !important;\n}\n\n.border-warning {\n border-color: #ffc107 !important;\n}\n\n.border-danger {\n border-color: #dc3545 !important;\n}\n\n.border-light {\n border-color: #f8f9fa !important;\n}\n\n.border-dark {\n border-color: #343a40 !important;\n}\n\n.border-white {\n border-color: #fff !important;\n}\n\n.rounded {\n border-radius: 0.25rem !important;\n}\n\n.rounded-top {\n border-top-left-radius: 0.25rem !important;\n border-top-right-radius: 0.25rem !important;\n}\n\n.rounded-right {\n border-top-right-radius: 0.25rem !important;\n border-bottom-right-radius: 0.25rem !important;\n}\n\n.rounded-bottom {\n border-bottom-right-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-left {\n border-top-left-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n\n.clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.d-none {\n display: none !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: flex !important;\n}\n\n.d-inline-flex {\n display: inline-flex !important;\n}\n\n@media (min-width: 576px) {\n .d-sm-none {\n display: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 768px) {\n .d-md-none {\n display: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: flex !important;\n }\n .d-md-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 992px) {\n .d-lg-none {\n display: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 1200px) {\n .d-xl-none {\n display: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media print {\n .d-print-none {\n display: none !important;\n }\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: flex !important;\n }\n .d-print-inline-flex {\n display: inline-flex !important;\n }\n}\n\n.embed-responsive {\n position: relative;\n display: block;\n width: 100%;\n padding: 0;\n overflow: hidden;\n}\n\n.embed-responsive::before {\n display: block;\n content: \"\";\n}\n\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n\n.embed-responsive-21by9::before {\n padding-top: 42.857143%;\n}\n\n.embed-responsive-16by9::before {\n padding-top: 56.25%;\n}\n\n.embed-responsive-4by3::before {\n padding-top: 75%;\n}\n\n.embed-responsive-1by1::before {\n padding-top: 100%;\n}\n\n.flex-row {\n flex-direction: row !important;\n}\n\n.flex-column {\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n flex-direction: column-reverse !important;\n}\n\n.flex-wrap {\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n.flex-fill {\n flex: 1 1 auto !important;\n}\n\n.flex-grow-0 {\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n flex-shrink: 1 !important;\n}\n\n.justify-content-start {\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n justify-content: center !important;\n}\n\n.justify-content-between {\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n justify-content: space-around !important;\n}\n\n.align-items-start {\n align-items: flex-start !important;\n}\n\n.align-items-end {\n align-items: flex-end !important;\n}\n\n.align-items-center {\n align-items: center !important;\n}\n\n.align-items-baseline {\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n align-items: stretch !important;\n}\n\n.align-content-start {\n align-content: flex-start !important;\n}\n\n.align-content-end {\n align-content: flex-end !important;\n}\n\n.align-content-center {\n align-content: center !important;\n}\n\n.align-content-between {\n align-content: space-between !important;\n}\n\n.align-content-around {\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n align-content: stretch !important;\n}\n\n.align-self-auto {\n align-self: auto !important;\n}\n\n.align-self-start {\n align-self: flex-start !important;\n}\n\n.align-self-end {\n align-self: flex-end !important;\n}\n\n.align-self-center {\n align-self: center !important;\n}\n\n.align-self-baseline {\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n align-self: stretch !important;\n}\n\n@media (min-width: 576px) {\n .flex-sm-row {\n flex-direction: row !important;\n }\n .flex-sm-column {\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-sm-wrap {\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-sm-fill {\n flex: 1 1 auto !important;\n }\n .flex-sm-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-sm-start {\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n justify-content: center !important;\n }\n .justify-content-sm-between {\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n justify-content: space-around !important;\n }\n .align-items-sm-start {\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n align-items: center !important;\n }\n .align-items-sm-baseline {\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n align-items: stretch !important;\n }\n .align-content-sm-start {\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n align-content: center !important;\n }\n .align-content-sm-between {\n align-content: space-between !important;\n }\n .align-content-sm-around {\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n align-self: auto !important;\n }\n .align-self-sm-start {\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n align-self: center !important;\n }\n .align-self-sm-baseline {\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 768px) {\n .flex-md-row {\n flex-direction: row !important;\n }\n .flex-md-column {\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-md-wrap {\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-md-fill {\n flex: 1 1 auto !important;\n }\n .flex-md-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-md-start {\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n justify-content: center !important;\n }\n .justify-content-md-between {\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n justify-content: space-around !important;\n }\n .align-items-md-start {\n align-items: flex-start !important;\n }\n .align-items-md-end {\n align-items: flex-end !important;\n }\n .align-items-md-center {\n align-items: center !important;\n }\n .align-items-md-baseline {\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n align-items: stretch !important;\n }\n .align-content-md-start {\n align-content: flex-start !important;\n }\n .align-content-md-end {\n align-content: flex-end !important;\n }\n .align-content-md-center {\n align-content: center !important;\n }\n .align-content-md-between {\n align-content: space-between !important;\n }\n .align-content-md-around {\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n align-content: stretch !important;\n }\n .align-self-md-auto {\n align-self: auto !important;\n }\n .align-self-md-start {\n align-self: flex-start !important;\n }\n .align-self-md-end {\n align-self: flex-end !important;\n }\n .align-self-md-center {\n align-self: center !important;\n }\n .align-self-md-baseline {\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 992px) {\n .flex-lg-row {\n flex-direction: row !important;\n }\n .flex-lg-column {\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-lg-wrap {\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-lg-fill {\n flex: 1 1 auto !important;\n }\n .flex-lg-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-lg-start {\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n justify-content: center !important;\n }\n .justify-content-lg-between {\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n justify-content: space-around !important;\n }\n .align-items-lg-start {\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n align-items: center !important;\n }\n .align-items-lg-baseline {\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n align-items: stretch !important;\n }\n .align-content-lg-start {\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n align-content: center !important;\n }\n .align-content-lg-between {\n align-content: space-between !important;\n }\n .align-content-lg-around {\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n align-self: auto !important;\n }\n .align-self-lg-start {\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n align-self: center !important;\n }\n .align-self-lg-baseline {\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 1200px) {\n .flex-xl-row {\n flex-direction: row !important;\n }\n .flex-xl-column {\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-xl-wrap {\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-xl-fill {\n flex: 1 1 auto !important;\n }\n .flex-xl-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-xl-start {\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n justify-content: center !important;\n }\n .justify-content-xl-between {\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n justify-content: space-around !important;\n }\n .align-items-xl-start {\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n align-items: center !important;\n }\n .align-items-xl-baseline {\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n align-items: stretch !important;\n }\n .align-content-xl-start {\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n align-content: center !important;\n }\n .align-content-xl-between {\n align-content: space-between !important;\n }\n .align-content-xl-around {\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n align-self: auto !important;\n }\n .align-self-xl-start {\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n align-self: center !important;\n }\n .align-self-xl-baseline {\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n align-self: stretch !important;\n }\n}\n\n.float-left {\n float: left !important;\n}\n\n.float-right {\n float: right !important;\n}\n\n.float-none {\n float: none !important;\n}\n\n@media (min-width: 576px) {\n .float-sm-left {\n float: left !important;\n }\n .float-sm-right {\n float: right !important;\n }\n .float-sm-none {\n float: none !important;\n }\n}\n\n@media (min-width: 768px) {\n .float-md-left {\n float: left !important;\n }\n .float-md-right {\n float: right !important;\n }\n .float-md-none {\n float: none !important;\n }\n}\n\n@media (min-width: 992px) {\n .float-lg-left {\n float: left !important;\n }\n .float-lg-right {\n float: right !important;\n }\n .float-lg-none {\n float: none !important;\n }\n}\n\n@media (min-width: 1200px) {\n .float-xl-left {\n float: left !important;\n }\n .float-xl-right {\n float: right !important;\n }\n .float-xl-none {\n float: none !important;\n }\n}\n\n.position-static {\n position: static !important;\n}\n\n.position-relative {\n position: relative !important;\n}\n\n.position-absolute {\n position: absolute !important;\n}\n\n.position-fixed {\n position: fixed !important;\n}\n\n.position-sticky {\n position: sticky !important;\n}\n\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n\n.fixed-bottom {\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1030;\n}\n\n@supports (position: sticky) {\n .sticky-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n\n.sr-only-focusable:active, .sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n overflow: visible;\n clip: auto;\n white-space: normal;\n}\n\n.shadow-sm {\n box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n}\n\n.shadow {\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n}\n\n.shadow-lg {\n box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n}\n\n.shadow-none {\n box-shadow: none !important;\n}\n\n.w-25 {\n width: 25% !important;\n}\n\n.w-50 {\n width: 50% !important;\n}\n\n.w-75 {\n width: 75% !important;\n}\n\n.w-100 {\n width: 100% !important;\n}\n\n.w-auto {\n width: auto !important;\n}\n\n.h-25 {\n height: 25% !important;\n}\n\n.h-50 {\n height: 50% !important;\n}\n\n.h-75 {\n height: 75% !important;\n}\n\n.h-100 {\n height: 100% !important;\n}\n\n.h-auto {\n height: auto !important;\n}\n\n.mw-100 {\n max-width: 100% !important;\n}\n\n.mh-100 {\n max-height: 100% !important;\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.mt-0,\n.my-0 {\n margin-top: 0 !important;\n}\n\n.mr-0,\n.mx-0 {\n margin-right: 0 !important;\n}\n\n.mb-0,\n.my-0 {\n margin-bottom: 0 !important;\n}\n\n.ml-0,\n.mx-0 {\n margin-left: 0 !important;\n}\n\n.m-1 {\n margin: 0.25rem !important;\n}\n\n.mt-1,\n.my-1 {\n margin-top: 0.25rem !important;\n}\n\n.mr-1,\n.mx-1 {\n margin-right: 0.25rem !important;\n}\n\n.mb-1,\n.my-1 {\n margin-bottom: 0.25rem !important;\n}\n\n.ml-1,\n.mx-1 {\n margin-left: 0.25rem !important;\n}\n\n.m-2 {\n margin: 0.5rem !important;\n}\n\n.mt-2,\n.my-2 {\n margin-top: 0.5rem !important;\n}\n\n.mr-2,\n.mx-2 {\n margin-right: 0.5rem !important;\n}\n\n.mb-2,\n.my-2 {\n margin-bottom: 0.5rem !important;\n}\n\n.ml-2,\n.mx-2 {\n margin-left: 0.5rem !important;\n}\n\n.m-3 {\n margin: 1rem !important;\n}\n\n.mt-3,\n.my-3 {\n margin-top: 1rem !important;\n}\n\n.mr-3,\n.mx-3 {\n margin-right: 1rem !important;\n}\n\n.mb-3,\n.my-3 {\n margin-bottom: 1rem !important;\n}\n\n.ml-3,\n.mx-3 {\n margin-left: 1rem !important;\n}\n\n.m-4 {\n margin: 1.5rem !important;\n}\n\n.mt-4,\n.my-4 {\n margin-top: 1.5rem !important;\n}\n\n.mr-4,\n.mx-4 {\n margin-right: 1.5rem !important;\n}\n\n.mb-4,\n.my-4 {\n margin-bottom: 1.5rem !important;\n}\n\n.ml-4,\n.mx-4 {\n margin-left: 1.5rem !important;\n}\n\n.m-5 {\n margin: 3rem !important;\n}\n\n.mt-5,\n.my-5 {\n margin-top: 3rem !important;\n}\n\n.mr-5,\n.mx-5 {\n margin-right: 3rem !important;\n}\n\n.mb-5,\n.my-5 {\n margin-bottom: 3rem !important;\n}\n\n.ml-5,\n.mx-5 {\n margin-left: 3rem !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.pt-0,\n.py-0 {\n padding-top: 0 !important;\n}\n\n.pr-0,\n.px-0 {\n padding-right: 0 !important;\n}\n\n.pb-0,\n.py-0 {\n padding-bottom: 0 !important;\n}\n\n.pl-0,\n.px-0 {\n padding-left: 0 !important;\n}\n\n.p-1 {\n padding: 0.25rem !important;\n}\n\n.pt-1,\n.py-1 {\n padding-top: 0.25rem !important;\n}\n\n.pr-1,\n.px-1 {\n padding-right: 0.25rem !important;\n}\n\n.pb-1,\n.py-1 {\n padding-bottom: 0.25rem !important;\n}\n\n.pl-1,\n.px-1 {\n padding-left: 0.25rem !important;\n}\n\n.p-2 {\n padding: 0.5rem !important;\n}\n\n.pt-2,\n.py-2 {\n padding-top: 0.5rem !important;\n}\n\n.pr-2,\n.px-2 {\n padding-right: 0.5rem !important;\n}\n\n.pb-2,\n.py-2 {\n padding-bottom: 0.5rem !important;\n}\n\n.pl-2,\n.px-2 {\n padding-left: 0.5rem !important;\n}\n\n.p-3 {\n padding: 1rem !important;\n}\n\n.pt-3,\n.py-3 {\n padding-top: 1rem !important;\n}\n\n.pr-3,\n.px-3 {\n padding-right: 1rem !important;\n}\n\n.pb-3,\n.py-3 {\n padding-bottom: 1rem !important;\n}\n\n.pl-3,\n.px-3 {\n padding-left: 1rem !important;\n}\n\n.p-4 {\n padding: 1.5rem !important;\n}\n\n.pt-4,\n.py-4 {\n padding-top: 1.5rem !important;\n}\n\n.pr-4,\n.px-4 {\n padding-right: 1.5rem !important;\n}\n\n.pb-4,\n.py-4 {\n padding-bottom: 1.5rem !important;\n}\n\n.pl-4,\n.px-4 {\n padding-left: 1.5rem !important;\n}\n\n.p-5 {\n padding: 3rem !important;\n}\n\n.pt-5,\n.py-5 {\n padding-top: 3rem !important;\n}\n\n.pr-5,\n.px-5 {\n padding-right: 3rem !important;\n}\n\n.pb-5,\n.py-5 {\n padding-bottom: 3rem !important;\n}\n\n.pl-5,\n.px-5 {\n padding-left: 3rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mt-auto,\n.my-auto {\n margin-top: auto !important;\n}\n\n.mr-auto,\n.mx-auto {\n margin-right: auto !important;\n}\n\n.mb-auto,\n.my-auto {\n margin-bottom: auto !important;\n}\n\n.ml-auto,\n.mx-auto {\n margin-left: auto !important;\n}\n\n@media (min-width: 576px) {\n .m-sm-0 {\n margin: 0 !important;\n }\n .mt-sm-0,\n .my-sm-0 {\n margin-top: 0 !important;\n }\n .mr-sm-0,\n .mx-sm-0 {\n margin-right: 0 !important;\n }\n .mb-sm-0,\n .my-sm-0 {\n margin-bottom: 0 !important;\n }\n .ml-sm-0,\n .mx-sm-0 {\n margin-left: 0 !important;\n }\n .m-sm-1 {\n margin: 0.25rem !important;\n }\n .mt-sm-1,\n .my-sm-1 {\n margin-top: 0.25rem !important;\n }\n .mr-sm-1,\n .mx-sm-1 {\n margin-right: 0.25rem !important;\n }\n .mb-sm-1,\n .my-sm-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-sm-1,\n .mx-sm-1 {\n margin-left: 0.25rem !important;\n }\n .m-sm-2 {\n margin: 0.5rem !important;\n }\n .mt-sm-2,\n .my-sm-2 {\n margin-top: 0.5rem !important;\n }\n .mr-sm-2,\n .mx-sm-2 {\n margin-right: 0.5rem !important;\n }\n .mb-sm-2,\n .my-sm-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-sm-2,\n .mx-sm-2 {\n margin-left: 0.5rem !important;\n }\n .m-sm-3 {\n margin: 1rem !important;\n }\n .mt-sm-3,\n .my-sm-3 {\n margin-top: 1rem !important;\n }\n .mr-sm-3,\n .mx-sm-3 {\n margin-right: 1rem !important;\n }\n .mb-sm-3,\n .my-sm-3 {\n margin-bottom: 1rem !important;\n }\n .ml-sm-3,\n .mx-sm-3 {\n margin-left: 1rem !important;\n }\n .m-sm-4 {\n margin: 1.5rem !important;\n }\n .mt-sm-4,\n .my-sm-4 {\n margin-top: 1.5rem !important;\n }\n .mr-sm-4,\n .mx-sm-4 {\n margin-right: 1.5rem !important;\n }\n .mb-sm-4,\n .my-sm-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-sm-4,\n .mx-sm-4 {\n margin-left: 1.5rem !important;\n }\n .m-sm-5 {\n margin: 3rem !important;\n }\n .mt-sm-5,\n .my-sm-5 {\n margin-top: 3rem !important;\n }\n .mr-sm-5,\n .mx-sm-5 {\n margin-right: 3rem !important;\n }\n .mb-sm-5,\n .my-sm-5 {\n margin-bottom: 3rem !important;\n }\n .ml-sm-5,\n .mx-sm-5 {\n margin-left: 3rem !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .pt-sm-0,\n .py-sm-0 {\n padding-top: 0 !important;\n }\n .pr-sm-0,\n .px-sm-0 {\n padding-right: 0 !important;\n }\n .pb-sm-0,\n .py-sm-0 {\n padding-bottom: 0 !important;\n }\n .pl-sm-0,\n .px-sm-0 {\n padding-left: 0 !important;\n }\n .p-sm-1 {\n padding: 0.25rem !important;\n }\n .pt-sm-1,\n .py-sm-1 {\n padding-top: 0.25rem !important;\n }\n .pr-sm-1,\n .px-sm-1 {\n padding-right: 0.25rem !important;\n }\n .pb-sm-1,\n .py-sm-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-sm-1,\n .px-sm-1 {\n padding-left: 0.25rem !important;\n }\n .p-sm-2 {\n padding: 0.5rem !important;\n }\n .pt-sm-2,\n .py-sm-2 {\n padding-top: 0.5rem !important;\n }\n .pr-sm-2,\n .px-sm-2 {\n padding-right: 0.5rem !important;\n }\n .pb-sm-2,\n .py-sm-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-sm-2,\n .px-sm-2 {\n padding-left: 0.5rem !important;\n }\n .p-sm-3 {\n padding: 1rem !important;\n }\n .pt-sm-3,\n .py-sm-3 {\n padding-top: 1rem !important;\n }\n .pr-sm-3,\n .px-sm-3 {\n padding-right: 1rem !important;\n }\n .pb-sm-3,\n .py-sm-3 {\n padding-bottom: 1rem !important;\n }\n .pl-sm-3,\n .px-sm-3 {\n padding-left: 1rem !important;\n }\n .p-sm-4 {\n padding: 1.5rem !important;\n }\n .pt-sm-4,\n .py-sm-4 {\n padding-top: 1.5rem !important;\n }\n .pr-sm-4,\n .px-sm-4 {\n padding-right: 1.5rem !important;\n }\n .pb-sm-4,\n .py-sm-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-sm-4,\n .px-sm-4 {\n padding-left: 1.5rem !important;\n }\n .p-sm-5 {\n padding: 3rem !important;\n }\n .pt-sm-5,\n .py-sm-5 {\n padding-top: 3rem !important;\n }\n .pr-sm-5,\n .px-sm-5 {\n padding-right: 3rem !important;\n }\n .pb-sm-5,\n .py-sm-5 {\n padding-bottom: 3rem !important;\n }\n .pl-sm-5,\n .px-sm-5 {\n padding-left: 3rem !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mt-sm-auto,\n .my-sm-auto {\n margin-top: auto !important;\n }\n .mr-sm-auto,\n .mx-sm-auto {\n margin-right: auto !important;\n }\n .mb-sm-auto,\n .my-sm-auto {\n margin-bottom: auto !important;\n }\n .ml-sm-auto,\n .mx-sm-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 768px) {\n .m-md-0 {\n margin: 0 !important;\n }\n .mt-md-0,\n .my-md-0 {\n margin-top: 0 !important;\n }\n .mr-md-0,\n .mx-md-0 {\n margin-right: 0 !important;\n }\n .mb-md-0,\n .my-md-0 {\n margin-bottom: 0 !important;\n }\n .ml-md-0,\n .mx-md-0 {\n margin-left: 0 !important;\n }\n .m-md-1 {\n margin: 0.25rem !important;\n }\n .mt-md-1,\n .my-md-1 {\n margin-top: 0.25rem !important;\n }\n .mr-md-1,\n .mx-md-1 {\n margin-right: 0.25rem !important;\n }\n .mb-md-1,\n .my-md-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-md-1,\n .mx-md-1 {\n margin-left: 0.25rem !important;\n }\n .m-md-2 {\n margin: 0.5rem !important;\n }\n .mt-md-2,\n .my-md-2 {\n margin-top: 0.5rem !important;\n }\n .mr-md-2,\n .mx-md-2 {\n margin-right: 0.5rem !important;\n }\n .mb-md-2,\n .my-md-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-md-2,\n .mx-md-2 {\n margin-left: 0.5rem !important;\n }\n .m-md-3 {\n margin: 1rem !important;\n }\n .mt-md-3,\n .my-md-3 {\n margin-top: 1rem !important;\n }\n .mr-md-3,\n .mx-md-3 {\n margin-right: 1rem !important;\n }\n .mb-md-3,\n .my-md-3 {\n margin-bottom: 1rem !important;\n }\n .ml-md-3,\n .mx-md-3 {\n margin-left: 1rem !important;\n }\n .m-md-4 {\n margin: 1.5rem !important;\n }\n .mt-md-4,\n .my-md-4 {\n margin-top: 1.5rem !important;\n }\n .mr-md-4,\n .mx-md-4 {\n margin-right: 1.5rem !important;\n }\n .mb-md-4,\n .my-md-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-md-4,\n .mx-md-4 {\n margin-left: 1.5rem !important;\n }\n .m-md-5 {\n margin: 3rem !important;\n }\n .mt-md-5,\n .my-md-5 {\n margin-top: 3rem !important;\n }\n .mr-md-5,\n .mx-md-5 {\n margin-right: 3rem !important;\n }\n .mb-md-5,\n .my-md-5 {\n margin-bottom: 3rem !important;\n }\n .ml-md-5,\n .mx-md-5 {\n margin-left: 3rem !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .pt-md-0,\n .py-md-0 {\n padding-top: 0 !important;\n }\n .pr-md-0,\n .px-md-0 {\n padding-right: 0 !important;\n }\n .pb-md-0,\n .py-md-0 {\n padding-bottom: 0 !important;\n }\n .pl-md-0,\n .px-md-0 {\n padding-left: 0 !important;\n }\n .p-md-1 {\n padding: 0.25rem !important;\n }\n .pt-md-1,\n .py-md-1 {\n padding-top: 0.25rem !important;\n }\n .pr-md-1,\n .px-md-1 {\n padding-right: 0.25rem !important;\n }\n .pb-md-1,\n .py-md-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-md-1,\n .px-md-1 {\n padding-left: 0.25rem !important;\n }\n .p-md-2 {\n padding: 0.5rem !important;\n }\n .pt-md-2,\n .py-md-2 {\n padding-top: 0.5rem !important;\n }\n .pr-md-2,\n .px-md-2 {\n padding-right: 0.5rem !important;\n }\n .pb-md-2,\n .py-md-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-md-2,\n .px-md-2 {\n padding-left: 0.5rem !important;\n }\n .p-md-3 {\n padding: 1rem !important;\n }\n .pt-md-3,\n .py-md-3 {\n padding-top: 1rem !important;\n }\n .pr-md-3,\n .px-md-3 {\n padding-right: 1rem !important;\n }\n .pb-md-3,\n .py-md-3 {\n padding-bottom: 1rem !important;\n }\n .pl-md-3,\n .px-md-3 {\n padding-left: 1rem !important;\n }\n .p-md-4 {\n padding: 1.5rem !important;\n }\n .pt-md-4,\n .py-md-4 {\n padding-top: 1.5rem !important;\n }\n .pr-md-4,\n .px-md-4 {\n padding-right: 1.5rem !important;\n }\n .pb-md-4,\n .py-md-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-md-4,\n .px-md-4 {\n padding-left: 1.5rem !important;\n }\n .p-md-5 {\n padding: 3rem !important;\n }\n .pt-md-5,\n .py-md-5 {\n padding-top: 3rem !important;\n }\n .pr-md-5,\n .px-md-5 {\n padding-right: 3rem !important;\n }\n .pb-md-5,\n .py-md-5 {\n padding-bottom: 3rem !important;\n }\n .pl-md-5,\n .px-md-5 {\n padding-left: 3rem !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mt-md-auto,\n .my-md-auto {\n margin-top: auto !important;\n }\n .mr-md-auto,\n .mx-md-auto {\n margin-right: auto !important;\n }\n .mb-md-auto,\n .my-md-auto {\n margin-bottom: auto !important;\n }\n .ml-md-auto,\n .mx-md-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 992px) {\n .m-lg-0 {\n margin: 0 !important;\n }\n .mt-lg-0,\n .my-lg-0 {\n margin-top: 0 !important;\n }\n .mr-lg-0,\n .mx-lg-0 {\n margin-right: 0 !important;\n }\n .mb-lg-0,\n .my-lg-0 {\n margin-bottom: 0 !important;\n }\n .ml-lg-0,\n .mx-lg-0 {\n margin-left: 0 !important;\n }\n .m-lg-1 {\n margin: 0.25rem !important;\n }\n .mt-lg-1,\n .my-lg-1 {\n margin-top: 0.25rem !important;\n }\n .mr-lg-1,\n .mx-lg-1 {\n margin-right: 0.25rem !important;\n }\n .mb-lg-1,\n .my-lg-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-lg-1,\n .mx-lg-1 {\n margin-left: 0.25rem !important;\n }\n .m-lg-2 {\n margin: 0.5rem !important;\n }\n .mt-lg-2,\n .my-lg-2 {\n margin-top: 0.5rem !important;\n }\n .mr-lg-2,\n .mx-lg-2 {\n margin-right: 0.5rem !important;\n }\n .mb-lg-2,\n .my-lg-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-lg-2,\n .mx-lg-2 {\n margin-left: 0.5rem !important;\n }\n .m-lg-3 {\n margin: 1rem !important;\n }\n .mt-lg-3,\n .my-lg-3 {\n margin-top: 1rem !important;\n }\n .mr-lg-3,\n .mx-lg-3 {\n margin-right: 1rem !important;\n }\n .mb-lg-3,\n .my-lg-3 {\n margin-bottom: 1rem !important;\n }\n .ml-lg-3,\n .mx-lg-3 {\n margin-left: 1rem !important;\n }\n .m-lg-4 {\n margin: 1.5rem !important;\n }\n .mt-lg-4,\n .my-lg-4 {\n margin-top: 1.5rem !important;\n }\n .mr-lg-4,\n .mx-lg-4 {\n margin-right: 1.5rem !important;\n }\n .mb-lg-4,\n .my-lg-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-lg-4,\n .mx-lg-4 {\n margin-left: 1.5rem !important;\n }\n .m-lg-5 {\n margin: 3rem !important;\n }\n .mt-lg-5,\n .my-lg-5 {\n margin-top: 3rem !important;\n }\n .mr-lg-5,\n .mx-lg-5 {\n margin-right: 3rem !important;\n }\n .mb-lg-5,\n .my-lg-5 {\n margin-bottom: 3rem !important;\n }\n .ml-lg-5,\n .mx-lg-5 {\n margin-left: 3rem !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .pt-lg-0,\n .py-lg-0 {\n padding-top: 0 !important;\n }\n .pr-lg-0,\n .px-lg-0 {\n padding-right: 0 !important;\n }\n .pb-lg-0,\n .py-lg-0 {\n padding-bottom: 0 !important;\n }\n .pl-lg-0,\n .px-lg-0 {\n padding-left: 0 !important;\n }\n .p-lg-1 {\n padding: 0.25rem !important;\n }\n .pt-lg-1,\n .py-lg-1 {\n padding-top: 0.25rem !important;\n }\n .pr-lg-1,\n .px-lg-1 {\n padding-right: 0.25rem !important;\n }\n .pb-lg-1,\n .py-lg-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-lg-1,\n .px-lg-1 {\n padding-left: 0.25rem !important;\n }\n .p-lg-2 {\n padding: 0.5rem !important;\n }\n .pt-lg-2,\n .py-lg-2 {\n padding-top: 0.5rem !important;\n }\n .pr-lg-2,\n .px-lg-2 {\n padding-right: 0.5rem !important;\n }\n .pb-lg-2,\n .py-lg-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-lg-2,\n .px-lg-2 {\n padding-left: 0.5rem !important;\n }\n .p-lg-3 {\n padding: 1rem !important;\n }\n .pt-lg-3,\n .py-lg-3 {\n padding-top: 1rem !important;\n }\n .pr-lg-3,\n .px-lg-3 {\n padding-right: 1rem !important;\n }\n .pb-lg-3,\n .py-lg-3 {\n padding-bottom: 1rem !important;\n }\n .pl-lg-3,\n .px-lg-3 {\n padding-left: 1rem !important;\n }\n .p-lg-4 {\n padding: 1.5rem !important;\n }\n .pt-lg-4,\n .py-lg-4 {\n padding-top: 1.5rem !important;\n }\n .pr-lg-4,\n .px-lg-4 {\n padding-right: 1.5rem !important;\n }\n .pb-lg-4,\n .py-lg-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-lg-4,\n .px-lg-4 {\n padding-left: 1.5rem !important;\n }\n .p-lg-5 {\n padding: 3rem !important;\n }\n .pt-lg-5,\n .py-lg-5 {\n padding-top: 3rem !important;\n }\n .pr-lg-5,\n .px-lg-5 {\n padding-right: 3rem !important;\n }\n .pb-lg-5,\n .py-lg-5 {\n padding-bottom: 3rem !important;\n }\n .pl-lg-5,\n .px-lg-5 {\n padding-left: 3rem !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mt-lg-auto,\n .my-lg-auto {\n margin-top: auto !important;\n }\n .mr-lg-auto,\n .mx-lg-auto {\n margin-right: auto !important;\n }\n .mb-lg-auto,\n .my-lg-auto {\n margin-bottom: auto !important;\n }\n .ml-lg-auto,\n .mx-lg-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 1200px) {\n .m-xl-0 {\n margin: 0 !important;\n }\n .mt-xl-0,\n .my-xl-0 {\n margin-top: 0 !important;\n }\n .mr-xl-0,\n .mx-xl-0 {\n margin-right: 0 !important;\n }\n .mb-xl-0,\n .my-xl-0 {\n margin-bottom: 0 !important;\n }\n .ml-xl-0,\n .mx-xl-0 {\n margin-left: 0 !important;\n }\n .m-xl-1 {\n margin: 0.25rem !important;\n }\n .mt-xl-1,\n .my-xl-1 {\n margin-top: 0.25rem !important;\n }\n .mr-xl-1,\n .mx-xl-1 {\n margin-right: 0.25rem !important;\n }\n .mb-xl-1,\n .my-xl-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-xl-1,\n .mx-xl-1 {\n margin-left: 0.25rem !important;\n }\n .m-xl-2 {\n margin: 0.5rem !important;\n }\n .mt-xl-2,\n .my-xl-2 {\n margin-top: 0.5rem !important;\n }\n .mr-xl-2,\n .mx-xl-2 {\n margin-right: 0.5rem !important;\n }\n .mb-xl-2,\n .my-xl-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-xl-2,\n .mx-xl-2 {\n margin-left: 0.5rem !important;\n }\n .m-xl-3 {\n margin: 1rem !important;\n }\n .mt-xl-3,\n .my-xl-3 {\n margin-top: 1rem !important;\n }\n .mr-xl-3,\n .mx-xl-3 {\n margin-right: 1rem !important;\n }\n .mb-xl-3,\n .my-xl-3 {\n margin-bottom: 1rem !important;\n }\n .ml-xl-3,\n .mx-xl-3 {\n margin-left: 1rem !important;\n }\n .m-xl-4 {\n margin: 1.5rem !important;\n }\n .mt-xl-4,\n .my-xl-4 {\n margin-top: 1.5rem !important;\n }\n .mr-xl-4,\n .mx-xl-4 {\n margin-right: 1.5rem !important;\n }\n .mb-xl-4,\n .my-xl-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-xl-4,\n .mx-xl-4 {\n margin-left: 1.5rem !important;\n }\n .m-xl-5 {\n margin: 3rem !important;\n }\n .mt-xl-5,\n .my-xl-5 {\n margin-top: 3rem !important;\n }\n .mr-xl-5,\n .mx-xl-5 {\n margin-right: 3rem !important;\n }\n .mb-xl-5,\n .my-xl-5 {\n margin-bottom: 3rem !important;\n }\n .ml-xl-5,\n .mx-xl-5 {\n margin-left: 3rem !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .pt-xl-0,\n .py-xl-0 {\n padding-top: 0 !important;\n }\n .pr-xl-0,\n .px-xl-0 {\n padding-right: 0 !important;\n }\n .pb-xl-0,\n .py-xl-0 {\n padding-bottom: 0 !important;\n }\n .pl-xl-0,\n .px-xl-0 {\n padding-left: 0 !important;\n }\n .p-xl-1 {\n padding: 0.25rem !important;\n }\n .pt-xl-1,\n .py-xl-1 {\n padding-top: 0.25rem !important;\n }\n .pr-xl-1,\n .px-xl-1 {\n padding-right: 0.25rem !important;\n }\n .pb-xl-1,\n .py-xl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-xl-1,\n .px-xl-1 {\n padding-left: 0.25rem !important;\n }\n .p-xl-2 {\n padding: 0.5rem !important;\n }\n .pt-xl-2,\n .py-xl-2 {\n padding-top: 0.5rem !important;\n }\n .pr-xl-2,\n .px-xl-2 {\n padding-right: 0.5rem !important;\n }\n .pb-xl-2,\n .py-xl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-xl-2,\n .px-xl-2 {\n padding-left: 0.5rem !important;\n }\n .p-xl-3 {\n padding: 1rem !important;\n }\n .pt-xl-3,\n .py-xl-3 {\n padding-top: 1rem !important;\n }\n .pr-xl-3,\n .px-xl-3 {\n padding-right: 1rem !important;\n }\n .pb-xl-3,\n .py-xl-3 {\n padding-bottom: 1rem !important;\n }\n .pl-xl-3,\n .px-xl-3 {\n padding-left: 1rem !important;\n }\n .p-xl-4 {\n padding: 1.5rem !important;\n }\n .pt-xl-4,\n .py-xl-4 {\n padding-top: 1.5rem !important;\n }\n .pr-xl-4,\n .px-xl-4 {\n padding-right: 1.5rem !important;\n }\n .pb-xl-4,\n .py-xl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-xl-4,\n .px-xl-4 {\n padding-left: 1.5rem !important;\n }\n .p-xl-5 {\n padding: 3rem !important;\n }\n .pt-xl-5,\n .py-xl-5 {\n padding-top: 3rem !important;\n }\n .pr-xl-5,\n .px-xl-5 {\n padding-right: 3rem !important;\n }\n .pb-xl-5,\n .py-xl-5 {\n padding-bottom: 3rem !important;\n }\n .pl-xl-5,\n .px-xl-5 {\n padding-left: 3rem !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mt-xl-auto,\n .my-xl-auto {\n margin-top: auto !important;\n }\n .mr-xl-auto,\n .mx-xl-auto {\n margin-right: auto !important;\n }\n .mb-xl-auto,\n .my-xl-auto {\n margin-bottom: auto !important;\n }\n .ml-xl-auto,\n .mx-xl-auto {\n margin-left: auto !important;\n }\n}\n\n.text-monospace {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n.text-justify {\n text-align: justify !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.text-left {\n text-align: left !important;\n}\n\n.text-right {\n text-align: right !important;\n}\n\n.text-center {\n text-align: center !important;\n}\n\n@media (min-width: 576px) {\n .text-sm-left {\n text-align: left !important;\n }\n .text-sm-right {\n text-align: right !important;\n }\n .text-sm-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 768px) {\n .text-md-left {\n text-align: left !important;\n }\n .text-md-right {\n text-align: right !important;\n }\n .text-md-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 992px) {\n .text-lg-left {\n text-align: left !important;\n }\n .text-lg-right {\n text-align: right !important;\n }\n .text-lg-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 1200px) {\n .text-xl-left {\n text-align: left !important;\n }\n .text-xl-right {\n text-align: right !important;\n }\n .text-xl-center {\n text-align: center !important;\n }\n}\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.font-weight-light {\n font-weight: 300 !important;\n}\n\n.font-weight-normal {\n font-weight: 400 !important;\n}\n\n.font-weight-bold {\n font-weight: 700 !important;\n}\n\n.font-italic {\n font-style: italic !important;\n}\n\n.text-white {\n color: #fff !important;\n}\n\n.text-primary {\n color: #007bff !important;\n}\n\na.text-primary:hover, a.text-primary:focus {\n color: #0062cc !important;\n}\n\n.text-secondary {\n color: #6c757d !important;\n}\n\na.text-secondary:hover, a.text-secondary:focus {\n color: #545b62 !important;\n}\n\n.text-success {\n color: #28a745 !important;\n}\n\na.text-success:hover, a.text-success:focus {\n color: #1e7e34 !important;\n}\n\n.text-info {\n color: #17a2b8 !important;\n}\n\na.text-info:hover, a.text-info:focus {\n color: #117a8b !important;\n}\n\n.text-warning {\n color: #ffc107 !important;\n}\n\na.text-warning:hover, a.text-warning:focus {\n color: #d39e00 !important;\n}\n\n.text-danger {\n color: #dc3545 !important;\n}\n\na.text-danger:hover, a.text-danger:focus {\n color: #bd2130 !important;\n}\n\n.text-light {\n color: #f8f9fa !important;\n}\n\na.text-light:hover, a.text-light:focus {\n color: #dae0e5 !important;\n}\n\n.text-dark {\n color: #343a40 !important;\n}\n\na.text-dark:hover, a.text-dark:focus {\n color: #1d2124 !important;\n}\n\n.text-body {\n color: #212529 !important;\n}\n\n.text-muted {\n color: #6c757d !important;\n}\n\n.text-black-50 {\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n\n.visible {\n visibility: visible !important;\n}\n\n.invisible {\n visibility: hidden !important;\n}\n\n@media print {\n *,\n *::before,\n *::after {\n text-shadow: none !important;\n box-shadow: none !important;\n }\n a:not(.btn) {\n text-decoration: underline;\n }\n abbr[title]::after {\n content: \" (\" attr(title) \")\";\n }\n pre {\n white-space: pre-wrap !important;\n }\n pre,\n blockquote {\n border: 1px solid #adb5bd;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n @page {\n size: a3;\n }\n body {\n min-width: 992px !important;\n }\n .container {\n min-width: 992px !important;\n }\n .navbar {\n display: none;\n }\n .badge {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #dee2e6 !important;\n }\n .table-dark {\n color: inherit;\n }\n .table-dark th,\n .table-dark td,\n .table-dark thead th,\n .table-dark tbody + tbody {\n border-color: #dee2e6;\n }\n .table .thead-dark th {\n color: inherit;\n border-color: #dee2e6;\n }\n}\n\n/*# sourceMappingURL=bootstrap.css.map */","// Hover mixin and `$enable-hover-media-query` are deprecated.\n//\n// Originally added during our alphas and maintained during betas, this mixin was\n// designed to prevent `:hover` stickiness on iOS-an issue where hover styles\n// would persist after initial touch.\n//\n// For backward compatibility, we've kept these mixins and updated them to\n// always return their regular pseudo-classes instead of a shimmed media query.\n//\n// Issue: https://github.com/twbs/bootstrap/issues/25195\n\n@mixin hover {\n &:hover { @content; }\n}\n\n@mixin hover-focus {\n &:hover,\n &:focus {\n @content;\n }\n}\n\n@mixin plain-hover-focus {\n &,\n &:hover,\n &:focus {\n @content;\n }\n}\n\n@mixin hover-focus-active {\n &:hover,\n &:focus,\n &:active {\n @content;\n }\n}\n","// stylelint-disable declaration-no-important, selector-list-comma-newline-after\n\n//\n// Headings\n//\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n margin-bottom: $headings-margin-bottom;\n font-family: $headings-font-family;\n font-weight: $headings-font-weight;\n line-height: $headings-line-height;\n color: $headings-color;\n}\n\nh1, .h1 { font-size: $h1-font-size; }\nh2, .h2 { font-size: $h2-font-size; }\nh3, .h3 { font-size: $h3-font-size; }\nh4, .h4 { font-size: $h4-font-size; }\nh5, .h5 { font-size: $h5-font-size; }\nh6, .h6 { font-size: $h6-font-size; }\n\n.lead {\n font-size: $lead-font-size;\n font-weight: $lead-font-weight;\n}\n\n// Type display classes\n.display-1 {\n font-size: $display1-size;\n font-weight: $display1-weight;\n line-height: $display-line-height;\n}\n.display-2 {\n font-size: $display2-size;\n font-weight: $display2-weight;\n line-height: $display-line-height;\n}\n.display-3 {\n font-size: $display3-size;\n font-weight: $display3-weight;\n line-height: $display-line-height;\n}\n.display-4 {\n font-size: $display4-size;\n font-weight: $display4-weight;\n line-height: $display-line-height;\n}\n\n\n//\n// Horizontal rules\n//\n\nhr {\n margin-top: $hr-margin-y;\n margin-bottom: $hr-margin-y;\n border: 0;\n border-top: $hr-border-width solid $hr-border-color;\n}\n\n\n//\n// Emphasis\n//\n\nsmall,\n.small {\n font-size: $small-font-size;\n font-weight: $font-weight-normal;\n}\n\nmark,\n.mark {\n padding: $mark-padding;\n background-color: $mark-bg;\n}\n\n\n//\n// Lists\n//\n\n.list-unstyled {\n @include list-unstyled;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n @include list-unstyled;\n}\n.list-inline-item {\n display: inline-block;\n\n &:not(:last-child) {\n margin-right: $list-inline-padding;\n }\n}\n\n\n//\n// Misc\n//\n\n// Builds on `abbr`\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\n\n// Blockquotes\n.blockquote {\n margin-bottom: $spacer;\n font-size: $blockquote-font-size;\n}\n\n.blockquote-footer {\n display: block;\n font-size: 80%; // back to default font-size\n color: $blockquote-small-color;\n\n &::before {\n content: \"\\2014 \\00A0\"; // em dash, nbsp\n }\n}\n","// Lists\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n@mixin list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n","// Responsive images (ensure images don't scale beyond their parents)\n//\n// This is purposefully opt-in via an explicit class rather than being the default for all ``s.\n// We previously tried the \"images are responsive by default\" approach in Bootstrap v2,\n// and abandoned it in Bootstrap v3 because it breaks lots of third-party widgets (including Google Maps)\n// which weren't expecting the images within themselves to be involuntarily resized.\n// See also https://github.com/twbs/bootstrap/issues/18178\n.img-fluid {\n @include img-fluid;\n}\n\n\n// Image thumbnails\n.img-thumbnail {\n padding: $thumbnail-padding;\n background-color: $thumbnail-bg;\n border: $thumbnail-border-width solid $thumbnail-border-color;\n @include border-radius($thumbnail-border-radius);\n @include box-shadow($thumbnail-box-shadow);\n\n // Keep them at most 100% wide\n @include img-fluid;\n}\n\n//\n// Figures\n//\n\n.figure {\n // Ensures the caption's text aligns with the image.\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: ($spacer / 2);\n line-height: 1;\n}\n\n.figure-caption {\n font-size: $figure-caption-font-size;\n color: $figure-caption-color;\n}\n","// Image Mixins\n// - Responsive image\n// - Retina image\n\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n\n@mixin img-fluid {\n // Part 1: Set a maximum relative to the parent\n max-width: 100%;\n // Part 2: Override the height to auto, otherwise images will be stretched\n // when setting a width and height attribute on the img element.\n height: auto;\n}\n\n\n// Retina image\n//\n// Short retina mixin for setting background-image and -size.\n\n// stylelint-disable indentation, media-query-list-comma-newline-after\n@mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {\n background-image: url($file-1x);\n\n // Autoprefixer takes care of adding -webkit-min-device-pixel-ratio and -o-min-device-pixel-ratio,\n // but doesn't convert dppx=>dpi.\n // There's no such thing as unprefixed min-device-pixel-ratio since it's nonstandard.\n // Compatibility info: https://caniuse.com/#feat=css-media-resolution\n @media only screen and (min-resolution: 192dpi), // IE9-11 don't support dppx\n only screen and (min-resolution: 2dppx) { // Standardized\n background-image: url($file-2x);\n background-size: $width-1x $height-1x;\n }\n}\n","// Single side border-radius\n\n@mixin border-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-radius: $radius;\n }\n}\n\n@mixin border-top-radius($radius) {\n @if $enable-rounded {\n border-top-left-radius: $radius;\n border-top-right-radius: $radius;\n }\n}\n\n@mixin border-right-radius($radius) {\n @if $enable-rounded {\n border-top-right-radius: $radius;\n border-bottom-right-radius: $radius;\n }\n}\n\n@mixin border-bottom-radius($radius) {\n @if $enable-rounded {\n border-bottom-right-radius: $radius;\n border-bottom-left-radius: $radius;\n }\n}\n\n@mixin border-left-radius($radius) {\n @if $enable-rounded {\n border-top-left-radius: $radius;\n border-bottom-left-radius: $radius;\n }\n}\n","// Inline code\ncode {\n font-size: $code-font-size;\n color: $code-color;\n word-break: break-word;\n\n // Streamline the style when inside anchors to avoid broken underline and more\n a > & {\n color: inherit;\n }\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: $kbd-padding-y $kbd-padding-x;\n font-size: $kbd-font-size;\n color: $kbd-color;\n background-color: $kbd-bg;\n @include border-radius($border-radius-sm);\n @include box-shadow($kbd-box-shadow);\n\n kbd {\n padding: 0;\n font-size: 100%;\n font-weight: $nested-kbd-font-weight;\n @include box-shadow(none);\n }\n}\n\n// Blocks of code\npre {\n display: block;\n font-size: $code-font-size;\n color: $pre-color;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: $pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n@if $enable-grid-classes {\n .container {\n @include make-container();\n @include make-container-max-widths();\n }\n}\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but with 100% width for\n// fluid, full width layouts.\n\n@if $enable-grid-classes {\n .container-fluid {\n @include make-container();\n }\n}\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n@if $enable-grid-classes {\n .row {\n @include make-row();\n }\n\n // Remove the negative margin from default .row, then the horizontal padding\n // from all immediate children columns (to prevent runaway style inheritance).\n .no-gutters {\n margin-right: 0;\n margin-left: 0;\n\n > .col,\n > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n }\n }\n}\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n@if $enable-grid-classes {\n @include make-grid-columns();\n}\n","/// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n@mixin make-container() {\n width: 100%;\n padding-right: ($grid-gutter-width / 2);\n padding-left: ($grid-gutter-width / 2);\n margin-right: auto;\n margin-left: auto;\n}\n\n\n// For each breakpoint, define the maximum width of the container in a media query\n@mixin make-container-max-widths($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {\n @each $breakpoint, $container-max-width in $max-widths {\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n max-width: $container-max-width;\n }\n }\n}\n\n@mixin make-row() {\n display: flex;\n flex-wrap: wrap;\n margin-right: ($grid-gutter-width / -2);\n margin-left: ($grid-gutter-width / -2);\n}\n\n@mixin make-col-ready() {\n position: relative;\n // Prevent columns from becoming too narrow when at smaller grid tiers by\n // always setting `width: 100%;`. This works because we use `flex` values\n // later on to override this initial width.\n width: 100%;\n min-height: 1px; // Prevent collapsing\n padding-right: ($grid-gutter-width / 2);\n padding-left: ($grid-gutter-width / 2);\n}\n\n@mixin make-col($size, $columns: $grid-columns) {\n flex: 0 0 percentage($size / $columns);\n // Add a `max-width` to ensure content within each column does not blow out\n // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari\n // do not appear to require this.\n max-width: percentage($size / $columns);\n}\n\n@mixin make-col-offset($size, $columns: $grid-columns) {\n $num: $size / $columns;\n margin-left: if($num == 0, 0, percentage($num));\n}\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width. Null for the largest (last) breakpoint.\n// The maximum value is calculated as the minimum of the next one less 0.02px\n// to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $next: breakpoint-next($name, $breakpoints);\n @return if($next, breakpoint-min($next, $breakpoints) - .02px, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $max: breakpoint-max($name, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($name, $breakpoints) {\n @content;\n }\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `$grid-columns`.\n\n@mixin make-grid-columns($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {\n // Common properties for all breakpoints\n %grid-column {\n position: relative;\n width: 100%;\n min-height: 1px; // Prevent columns from collapsing when empty\n padding-right: ($gutter / 2);\n padding-left: ($gutter / 2);\n }\n\n @each $breakpoint in map-keys($breakpoints) {\n $infix: breakpoint-infix($breakpoint, $breakpoints);\n\n // Allow columns to stretch full width below their breakpoints\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @extend %grid-column;\n }\n }\n .col#{$infix},\n .col#{$infix}-auto {\n @extend %grid-column;\n }\n\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n // Provide basic `.col-{bp}` classes for equal-width flexbox columns\n .col#{$infix} {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col#{$infix}-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none; // Reset earlier grid tiers\n }\n\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @include make-col($i, $columns);\n }\n }\n\n .order#{$infix}-first { order: -1; }\n\n .order#{$infix}-last { order: $columns + 1; }\n\n @for $i from 0 through $columns {\n .order#{$infix}-#{$i} { order: $i; }\n }\n\n // `$columns - 1` because offsetting by the width of an entire row isn't possible\n @for $i from 0 through ($columns - 1) {\n @if not ($infix == \"\" and $i == 0) { // Avoid emitting useless .offset-0\n .offset#{$infix}-#{$i} {\n @include make-col-offset($i, $columns);\n }\n }\n }\n }\n }\n}\n","//\n// Basic Bootstrap table\n//\n\n.table {\n width: 100%;\n margin-bottom: $spacer;\n background-color: $table-bg; // Reset for nesting within parents with `background-color`.\n\n th,\n td {\n padding: $table-cell-padding;\n vertical-align: top;\n border-top: $table-border-width solid $table-border-color;\n }\n\n thead th {\n vertical-align: bottom;\n border-bottom: (2 * $table-border-width) solid $table-border-color;\n }\n\n tbody + tbody {\n border-top: (2 * $table-border-width) solid $table-border-color;\n }\n\n .table {\n background-color: $body-bg;\n }\n}\n\n\n//\n// Condensed table w/ half padding\n//\n\n.table-sm {\n th,\n td {\n padding: $table-cell-padding-sm;\n }\n}\n\n\n// Border versions\n//\n// Add or remove borders all around the table and between all the columns.\n\n.table-bordered {\n border: $table-border-width solid $table-border-color;\n\n th,\n td {\n border: $table-border-width solid $table-border-color;\n }\n\n thead {\n th,\n td {\n border-bottom-width: (2 * $table-border-width);\n }\n }\n}\n\n.table-borderless {\n th,\n td,\n thead th,\n tbody + tbody {\n border: 0;\n }\n}\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n tbody tr:nth-of-type(#{$table-striped-order}) {\n background-color: $table-accent-bg;\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n tbody tr {\n @include hover {\n background-color: $table-hover-bg;\n }\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n@each $color, $value in $theme-colors {\n @include table-row-variant($color, theme-color-level($color, -9));\n}\n\n@include table-row-variant(active, $table-active-bg);\n\n\n// Dark styles\n//\n// Same table markup, but inverted color scheme: dark background and light text.\n\n// stylelint-disable-next-line no-duplicate-selectors\n.table {\n .thead-dark {\n th {\n color: $table-dark-color;\n background-color: $table-dark-bg;\n border-color: $table-dark-border-color;\n }\n }\n\n .thead-light {\n th {\n color: $table-head-color;\n background-color: $table-head-bg;\n border-color: $table-border-color;\n }\n }\n}\n\n.table-dark {\n color: $table-dark-color;\n background-color: $table-dark-bg;\n\n th,\n td,\n thead th {\n border-color: $table-dark-border-color;\n }\n\n &.table-bordered {\n border: 0;\n }\n\n &.table-striped {\n tbody tr:nth-of-type(odd) {\n background-color: $table-dark-accent-bg;\n }\n }\n\n &.table-hover {\n tbody tr {\n @include hover {\n background-color: $table-dark-hover-bg;\n }\n }\n }\n}\n\n\n// Responsive tables\n//\n// Generate series of `.table-responsive-*` classes for configuring the screen\n// size of where your table will overflow.\n\n.table-responsive {\n @each $breakpoint in map-keys($grid-breakpoints) {\n $next: breakpoint-next($breakpoint, $grid-breakpoints);\n $infix: breakpoint-infix($next, $grid-breakpoints);\n\n &#{$infix} {\n @include media-breakpoint-down($breakpoint) {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n -ms-overflow-style: -ms-autohiding-scrollbar; // See https://github.com/twbs/bootstrap/pull/10057\n\n // Prevent double border on horizontal scroll due to use of `display: block;`\n > .table-bordered {\n border: 0;\n }\n }\n }\n }\n}\n","// Tables\n\n@mixin table-row-variant($state, $background) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table-#{$state} {\n &,\n > th,\n > td {\n background-color: $background;\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover {\n $hover-background: darken($background, 5%);\n\n .table-#{$state} {\n @include hover {\n background-color: $hover-background;\n\n > td,\n > th {\n background-color: $hover-background;\n }\n }\n }\n }\n}\n","// Bootstrap functions\n//\n// Utility mixins and functions for evaluating source code across our variables, maps, and mixins.\n\n// Ascending\n// Used to evaluate Sass maps like our grid breakpoints.\n@mixin _assert-ascending($map, $map-name) {\n $prev-key: null;\n $prev-num: null;\n @each $key, $num in $map {\n @if $prev-num == null {\n // Do nothing\n } @else if not comparable($prev-num, $num) {\n @warn \"Potentially invalid value for #{$map-name}: This map must be in ascending order, but key '#{$key}' has value #{$num} whose unit makes it incomparable to #{$prev-num}, the value of the previous key '#{$prev-key}' !\";\n } @else if $prev-num >= $num {\n @warn \"Invalid value for #{$map-name}: This map must be in ascending order, but key '#{$key}' has value #{$num} which isn't greater than #{$prev-num}, the value of the previous key '#{$prev-key}' !\";\n }\n $prev-key: $key;\n $prev-num: $num;\n }\n}\n\n// Starts at zero\n// Another grid mixin that ensures the min-width of the lowest breakpoint starts at 0.\n@mixin _assert-starts-at-zero($map) {\n $values: map-values($map);\n $first-value: nth($values, 1);\n @if $first-value != 0 {\n @warn \"First breakpoint in `$grid-breakpoints` must start at 0, but starts at #{$first-value}.\";\n }\n}\n\n// Replace `$search` with `$replace` in `$string`\n// Used on our SVG icon backgrounds for custom forms.\n//\n// @author Hugo Giraudel\n// @param {String} $string - Initial string\n// @param {String} $search - Substring to replace\n// @param {String} $replace ('') - New value\n// @return {String} - Updated string\n@function str-replace($string, $search, $replace: \"\") {\n $index: str-index($string, $search);\n\n @if $index {\n @return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace);\n }\n\n @return $string;\n}\n\n// Color contrast\n@function color-yiq($color) {\n $r: red($color);\n $g: green($color);\n $b: blue($color);\n\n $yiq: (($r * 299) + ($g * 587) + ($b * 114)) / 1000;\n\n @if ($yiq >= $yiq-contrasted-threshold) {\n @return $yiq-text-dark;\n } @else {\n @return $yiq-text-light;\n }\n}\n\n// Retrieve color Sass maps\n@function color($key: \"blue\") {\n @return map-get($colors, $key);\n}\n\n@function theme-color($key: \"primary\") {\n @return map-get($theme-colors, $key);\n}\n\n@function gray($key: \"100\") {\n @return map-get($grays, $key);\n}\n\n// Request a theme color level\n@function theme-color-level($color-name: \"primary\", $level: 0) {\n $color: theme-color($color-name);\n $color-base: if($level > 0, $black, $white);\n $level: abs($level);\n\n @return mix($color-base, $color, $level * $theme-color-interval);\n}\n","// stylelint-disable selector-no-qualifying-type\n\n//\n// Textual form controls\n//\n\n.form-control {\n display: block;\n width: 100%;\n height: $input-height;\n padding: $input-padding-y $input-padding-x;\n font-size: $font-size-base;\n line-height: $input-line-height;\n color: $input-color;\n background-color: $input-bg;\n background-clip: padding-box;\n border: $input-border-width solid $input-border-color;\n\n // Note: This has no effect on `s in CSS.\n @if $enable-rounded {\n // Manually use the if/else instead of the mixin to account for iOS override\n border-radius: $input-border-radius;\n } @else {\n // Otherwise undo the iOS default\n border-radius: 0;\n }\n\n @include box-shadow($input-box-shadow);\n @include transition($input-transition);\n\n // Unstyle the caret on ` receives focus\n // in IE and (under certain conditions) Edge, as it looks bad and cannot be made to\n // match the appearance of the native widget.\n // See https://github.com/twbs/bootstrap/issues/19398.\n color: $input-color;\n background-color: $input-bg;\n }\n}\n\n// Make file inputs better match text inputs by forcing them to new lines.\n.form-control-file,\n.form-control-range {\n display: block;\n width: 100%;\n}\n\n\n//\n// Labels\n//\n\n// For use with horizontal and inline forms, when you need the label (or legend)\n// text to align with the form controls.\n.col-form-label {\n padding-top: calc(#{$input-padding-y} + #{$input-border-width});\n padding-bottom: calc(#{$input-padding-y} + #{$input-border-width});\n margin-bottom: 0; // Override the `` elements\na.btn.disabled,\nfieldset:disabled a.btn {\n pointer-events: none;\n}\n\n\n//\n// Alternate buttons\n//\n\n@each $color, $value in $theme-colors {\n .btn-#{$color} {\n @include button-variant($value, $value);\n }\n}\n\n@each $color, $value in $theme-colors {\n .btn-outline-#{$color} {\n @include button-outline-variant($value);\n }\n}\n\n\n//\n// Link buttons\n//\n\n// Make a button look and behave like a link\n.btn-link {\n font-weight: $font-weight-normal;\n color: $link-color;\n background-color: transparent;\n\n @include hover {\n color: $link-hover-color;\n text-decoration: $link-hover-decoration;\n background-color: transparent;\n border-color: transparent;\n }\n\n &:focus,\n &.focus {\n text-decoration: $link-hover-decoration;\n border-color: transparent;\n box-shadow: none;\n }\n\n &:disabled,\n &.disabled {\n color: $btn-link-disabled-color;\n pointer-events: none;\n }\n\n // No need for an active state here\n}\n\n\n//\n// Button Sizes\n//\n\n.btn-lg {\n @include button-size($btn-padding-y-lg, $btn-padding-x-lg, $font-size-lg, $btn-line-height-lg, $btn-border-radius-lg);\n}\n\n.btn-sm {\n @include button-size($btn-padding-y-sm, $btn-padding-x-sm, $font-size-sm, $btn-line-height-sm, $btn-border-radius-sm);\n}\n\n\n//\n// Block button\n//\n\n.btn-block {\n display: block;\n width: 100%;\n\n // Vertically space out multiple block buttons\n + .btn-block {\n margin-top: $btn-block-spacing-y;\n }\n}\n\n// Specificity overrides\ninput[type=\"submit\"],\ninput[type=\"reset\"],\ninput[type=\"button\"] {\n &.btn-block {\n width: 100%;\n }\n}\n","// Button variants\n//\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n\n@mixin button-variant($background, $border, $hover-background: darken($background, 7.5%), $hover-border: darken($border, 10%), $active-background: darken($background, 10%), $active-border: darken($border, 12.5%)) {\n color: color-yiq($background);\n @include gradient-bg($background);\n border-color: $border;\n @include box-shadow($btn-box-shadow);\n\n @include hover {\n color: color-yiq($hover-background);\n @include gradient-bg($hover-background);\n border-color: $hover-border;\n }\n\n &:focus,\n &.focus {\n // Avoid using mixin so we can pass custom focus shadow properly\n @if $enable-shadows {\n box-shadow: $btn-box-shadow, 0 0 0 $btn-focus-width rgba($border, .5);\n } @else {\n box-shadow: 0 0 0 $btn-focus-width rgba($border, .5);\n }\n }\n\n // Disabled comes first so active can properly restyle\n &.disabled,\n &:disabled {\n color: color-yiq($background);\n background-color: $background;\n border-color: $border;\n }\n\n &:not(:disabled):not(.disabled):active,\n &:not(:disabled):not(.disabled).active,\n .show > &.dropdown-toggle {\n color: color-yiq($active-background);\n background-color: $active-background;\n @if $enable-gradients {\n background-image: none; // Remove the gradient for the pressed/active state\n }\n border-color: $active-border;\n\n &:focus {\n // Avoid using mixin so we can pass custom focus shadow properly\n @if $enable-shadows {\n box-shadow: $btn-active-box-shadow, 0 0 0 $btn-focus-width rgba($border, .5);\n } @else {\n box-shadow: 0 0 0 $btn-focus-width rgba($border, .5);\n }\n }\n }\n}\n\n@mixin button-outline-variant($color, $color-hover: color-yiq($color), $active-background: $color, $active-border: $color) {\n color: $color;\n background-color: transparent;\n background-image: none;\n border-color: $color;\n\n &:hover {\n color: $color-hover;\n background-color: $active-background;\n border-color: $active-border;\n }\n\n &:focus,\n &.focus {\n box-shadow: 0 0 0 $btn-focus-width rgba($color, .5);\n }\n\n &.disabled,\n &:disabled {\n color: $color;\n background-color: transparent;\n }\n\n &:not(:disabled):not(.disabled):active,\n &:not(:disabled):not(.disabled).active,\n .show > &.dropdown-toggle {\n color: color-yiq($active-background);\n background-color: $active-background;\n border-color: $active-border;\n\n &:focus {\n // Avoid using mixin so we can pass custom focus shadow properly\n @if $enable-shadows and $btn-active-box-shadow != none {\n box-shadow: $btn-active-box-shadow, 0 0 0 $btn-focus-width rgba($color, .5);\n } @else {\n box-shadow: 0 0 0 $btn-focus-width rgba($color, .5);\n }\n }\n }\n}\n\n// Button sizes\n@mixin button-size($padding-y, $padding-x, $font-size, $line-height, $border-radius) {\n padding: $padding-y $padding-x;\n font-size: $font-size;\n line-height: $line-height;\n // Manually declare to provide an override to the browser default\n @if $enable-rounded {\n border-radius: $border-radius;\n } @else {\n border-radius: 0;\n }\n}\n","// stylelint-disable selector-no-qualifying-type\n\n.fade {\n @include transition($transition-fade);\n\n &:not(.show) {\n opacity: 0;\n }\n}\n\n.collapse {\n &:not(.show) {\n display: none;\n }\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n @include transition($transition-collapse);\n}\n","// The dropdown wrapper (`
`)\n.dropup,\n.dropright,\n.dropdown,\n.dropleft {\n position: relative;\n}\n\n.dropdown-toggle {\n // Generate the caret automatically\n @include caret;\n}\n\n// The dropdown menu\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: $zindex-dropdown;\n display: none; // none by default, but block on \"open\" of the menu\n float: left;\n min-width: $dropdown-min-width;\n padding: $dropdown-padding-y 0;\n margin: $dropdown-spacer 0 0; // override default ul\n font-size: $font-size-base; // Redeclare because nesting can cause inheritance issues\n color: $body-color;\n text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)\n list-style: none;\n background-color: $dropdown-bg;\n background-clip: padding-box;\n border: $dropdown-border-width solid $dropdown-border-color;\n @include border-radius($dropdown-border-radius);\n @include box-shadow($dropdown-box-shadow);\n}\n\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n\n// Allow for dropdowns to go bottom up (aka, dropup-menu)\n// Just add .dropup after the standard .dropdown class and you're set.\n.dropup {\n .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: $dropdown-spacer;\n }\n\n .dropdown-toggle {\n @include caret(up);\n }\n}\n\n.dropright {\n .dropdown-menu {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: $dropdown-spacer;\n }\n\n .dropdown-toggle {\n @include caret(right);\n &::after {\n vertical-align: 0;\n }\n }\n}\n\n.dropleft {\n .dropdown-menu {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: $dropdown-spacer;\n }\n\n .dropdown-toggle {\n @include caret(left);\n &::before {\n vertical-align: 0;\n }\n }\n}\n\n// When enabled Popper.js, reset basic dropdown position\n// stylelint-disable no-duplicate-selectors\n.dropdown-menu {\n &[x-placement^=\"top\"],\n &[x-placement^=\"right\"],\n &[x-placement^=\"bottom\"],\n &[x-placement^=\"left\"] {\n right: auto;\n bottom: auto;\n }\n}\n// stylelint-enable no-duplicate-selectors\n\n// Dividers (basically an `
`) within the dropdown\n.dropdown-divider {\n @include nav-divider($dropdown-divider-bg);\n}\n\n// Links, buttons, and more within the dropdown menu\n//\n// `
+ + +
+ + + + + + diff --git a/inc/index.php b/inc/index.php new file mode 100755 index 0000000..70bbb31 --- /dev/null +++ b/inc/index.php @@ -0,0 +1 @@ +. + */ + + ini_set('session.gc_maxlifetime', 24*60*60); // MIN SESSION + ini_set('session.gc_probability', 1); // GC RATES + ini_set('session.gc_divisor', 100); // TIMES + session_save_path('.tmp'); // TEMP + session_start(); // START + require_once __DIR__ . '/autoload.php'; // AUTOLOAD + $StaticFunctions = new \App\LobbySIO\Misc\StaticFunctions(); // CLASSES + $Users = new \App\LobbySIO\Database\Users(); + $SiteInfo = new \App\LobbySIO\Database\SiteInfo(); + $VisitTypeInfo = new \App\LobbySIO\Database\VisitTypeInfo(); + $IDTypeInfo = new \App\LobbySIO\Database\IDTypeInfo(); + $VisitInfo = new \App\LobbySIO\Database\VisitInfo(); + $VisitActions = new \App\LobbySIO\Database\VisitActions(); + if(!isset($_COOKIE['app_disp_lang'])) { $app_disp_lang = $StaticFunctions->getDefaultLanguage(); } else { $app_disp_lang = $_COOKIE['app_disp_lang']; }; + $Translate = new \App\LobbySIO\Language\Translate($app_disp_lang); + $transLang = $Translate->userLanguage(); // SETUP TRANSLATOR + $app_current_pagename = $transLang['HOME']; // PAGE FUNCTION + $app_current_pageicon = ' '; // PAGE ICON + require_once("inc/header.inc.php"); // SHOW HEADER + if ($StaticFunctions->getSessionStatus() == false) { // CHECK STATUS + ?> + + +
+
+
+
+   +
+
+ +
+
+   +
+
+ +
+

+
+
+
+  
 


 
 
+
+
+  
 


 
 
+
+
+
+
+ + + + + + setTimeZone(new DateTimeZone('UTC')); + $postdate=$newdate->format('Y-m-d H:i:s'); + echo $VisitActions->endVisit($_POST['endvisit'], $postdate); + } else { + echo $VisitActions->endVisit($_POST['endvisit'], $StaticFunctions->getUTC()); + } + } + + if (!empty($_POST['voidvisit'])) { + echo $VisitActions->voidVisit($_POST['voidvisit'], "0"); + } + + + + // If post is approved, save after error checking. + if (!empty($_POST['approvevisit'])) { + if (empty($_POST['id_type'])) { $id_type_error="1"; } + else { $id_type_error="0"; + if (empty($_POST['badge'])) { $badge_error="1"; } + else { $badge_error="0"; + if (empty($_POST['initials'])) { $initials_error="1"; } + else { $initials_error="0"; + if (isset($_POST['id_checked']) && $_POST['id_checked'] == '1') { $id_checked="1"; } + else { $id_checked="0"; } + if (isset($_POST['citizen']) && $_POST['citizen'] == '1') { $citizen="1"; } + else { $citizen="0"; } + $approved="2"; + echo $VisitActions->approveVisit($_POST['approvevisit'], $_POST['id_type'], $id_checked, $citizen, $_POST['badge'], $_POST['initials'], $approved); + } + } + } + } + + // check all unapproved or approved + $approval = "1"; + + // Set up pagination + $page_num = 1; + if(!empty($_GET['pnum'])): + $page_num = filter_input(INPUT_GET, 'pnum', FILTER_VALIDATE_INT); + if(false === $page_num): + $page_num = 1; + endif; + endif; + $offset = ($page_num - 1) * $StaticFunctions->getPageRows(); + $row_count = count($VisitInfo->getVisitInfo($siteid, $approval, "empty", "%", "%", "%", "%", "%", "%")); + $page_count = 0; + if (0 === $row_count): else: $page_count = (int)ceil($row_count / $StaticFunctions->getPageRows()); if($page_num > $page_count): $page_num = 1; endif; endif; + ?> + + + +
+
+
+

+
+
+ +
+
+
  • ' . $transLang['PAGE'] . '
  • '; for ($i = 1; $i <= $page_count; $i++): echo '
  • ' . $i . '
  • '; endfor; echo ''; ?> + + + + + + + + getVisitInfo($siteid, $approval, "empty", "%", "%", "%", "%", $StaticFunctions->getPageRows(), $offset) as $row): + $visitid = $row['visits_id']; + $timein = new DateTime($row['visits_intime'], new DateTimeZone('UTC')); + $timein->setTimezone(new DateTimeZone("$timezone")); + $timein_disp = $timein->format('Y-m-d H:i:s'); + ?> + + + + + + + + + + + + + + + +
    + +
    + + + + + + + + + + +
     

    getVisitTypeInfo($row['visits_reason'])[0]["visittypes_name"]]; ?>

    '; } ?> + + "> + + + + + +
    + + + + + +

    +
    +
    +
    + +
    + +
    +
    +
    + " placeholder="" autofocus maxlength="15"> +
    + " placeholder="" autofocus maxlength="5"> +
    +
    +
    +
    + +
    +
    +
    +
    + +
    + +
    +
    +
    +
    + + + this._items.length - 1 || index < 0) { + return; + } + + if (this._isSliding) { + $$$1(this._element).one(Event.SLID, function () { + return _this.to(index); + }); + return; + } + + if (activeIndex === index) { + this.pause(); + this.cycle(); + return; + } + + var direction = index > activeIndex ? Direction.NEXT : Direction.PREV; + + this._slide(direction, this._items[index]); + }; + + _proto.dispose = function dispose() { + $$$1(this._element).off(EVENT_KEY); + $$$1.removeData(this._element, DATA_KEY); + this._items = null; + this._config = null; + this._element = null; + this._interval = null; + this._isPaused = null; + this._isSliding = null; + this._activeElement = null; + this._indicatorsElement = null; + }; // Private + + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default, config); + Util.typeCheckConfig(NAME, config, DefaultType); + return config; + }; + + _proto._addEventListeners = function _addEventListeners() { + var _this2 = this; + + if (this._config.keyboard) { + $$$1(this._element).on(Event.KEYDOWN, function (event) { + return _this2._keydown(event); + }); + } + + if (this._config.pause === 'hover') { + $$$1(this._element).on(Event.MOUSEENTER, function (event) { + return _this2.pause(event); + }).on(Event.MOUSELEAVE, function (event) { + return _this2.cycle(event); + }); + + if ('ontouchstart' in document.documentElement) { + // If it's a touch-enabled device, mouseenter/leave are fired as + // part of the mouse compatibility events on first tap - the carousel + // would stop cycling until user tapped out of it; + // here, we listen for touchend, explicitly pause the carousel + // (as if it's the second time we tap on it, mouseenter compat event + // is NOT fired) and after a timeout (to allow for mouse compatibility + // events to fire) we explicitly restart cycling + $$$1(this._element).on(Event.TOUCHEND, function () { + _this2.pause(); + + if (_this2.touchTimeout) { + clearTimeout(_this2.touchTimeout); + } + + _this2.touchTimeout = setTimeout(function (event) { + return _this2.cycle(event); + }, TOUCHEVENT_COMPAT_WAIT + _this2._config.interval); + }); + } + } + }; + + _proto._keydown = function _keydown(event) { + if (/input|textarea/i.test(event.target.tagName)) { + return; + } + + switch (event.which) { + case ARROW_LEFT_KEYCODE: + event.preventDefault(); + this.prev(); + break; + + case ARROW_RIGHT_KEYCODE: + event.preventDefault(); + this.next(); + break; + + default: + } + }; + + _proto._getItemIndex = function _getItemIndex(element) { + this._items = element && element.parentNode ? [].slice.call(element.parentNode.querySelectorAll(Selector.ITEM)) : []; + return this._items.indexOf(element); + }; + + _proto._getItemByDirection = function _getItemByDirection(direction, activeElement) { + var isNextDirection = direction === Direction.NEXT; + var isPrevDirection = direction === Direction.PREV; + + var activeIndex = this._getItemIndex(activeElement); + + var lastItemIndex = this._items.length - 1; + var isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex === lastItemIndex; + + if (isGoingToWrap && !this._config.wrap) { + return activeElement; + } + + var delta = direction === Direction.PREV ? -1 : 1; + var itemIndex = (activeIndex + delta) % this._items.length; + return itemIndex === -1 ? this._items[this._items.length - 1] : this._items[itemIndex]; + }; + + _proto._triggerSlideEvent = function _triggerSlideEvent(relatedTarget, eventDirectionName) { + var targetIndex = this._getItemIndex(relatedTarget); + + var fromIndex = this._getItemIndex(this._element.querySelector(Selector.ACTIVE_ITEM)); + + var slideEvent = $$$1.Event(Event.SLIDE, { + relatedTarget: relatedTarget, + direction: eventDirectionName, + from: fromIndex, + to: targetIndex + }); + $$$1(this._element).trigger(slideEvent); + return slideEvent; + }; + + _proto._setActiveIndicatorElement = function _setActiveIndicatorElement(element) { + if (this._indicatorsElement) { + var indicators = [].slice.call(this._indicatorsElement.querySelectorAll(Selector.ACTIVE)); + $$$1(indicators).removeClass(ClassName.ACTIVE); + + var nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)]; + + if (nextIndicator) { + $$$1(nextIndicator).addClass(ClassName.ACTIVE); + } + } + }; + + _proto._slide = function _slide(direction, element) { + var _this3 = this; + + var activeElement = this._element.querySelector(Selector.ACTIVE_ITEM); + + var activeElementIndex = this._getItemIndex(activeElement); + + var nextElement = element || activeElement && this._getItemByDirection(direction, activeElement); + + var nextElementIndex = this._getItemIndex(nextElement); + + var isCycling = Boolean(this._interval); + var directionalClassName; + var orderClassName; + var eventDirectionName; + + if (direction === Direction.NEXT) { + directionalClassName = ClassName.LEFT; + orderClassName = ClassName.NEXT; + eventDirectionName = Direction.LEFT; + } else { + directionalClassName = ClassName.RIGHT; + orderClassName = ClassName.PREV; + eventDirectionName = Direction.RIGHT; + } + + if (nextElement && $$$1(nextElement).hasClass(ClassName.ACTIVE)) { + this._isSliding = false; + return; + } + + var slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName); + + if (slideEvent.isDefaultPrevented()) { + return; + } + + if (!activeElement || !nextElement) { + // Some weirdness is happening, so we bail + return; + } + + this._isSliding = true; + + if (isCycling) { + this.pause(); + } + + this._setActiveIndicatorElement(nextElement); + + var slidEvent = $$$1.Event(Event.SLID, { + relatedTarget: nextElement, + direction: eventDirectionName, + from: activeElementIndex, + to: nextElementIndex + }); + + if ($$$1(this._element).hasClass(ClassName.SLIDE)) { + $$$1(nextElement).addClass(orderClassName); + Util.reflow(nextElement); + $$$1(activeElement).addClass(directionalClassName); + $$$1(nextElement).addClass(directionalClassName); + var transitionDuration = Util.getTransitionDurationFromElement(activeElement); + $$$1(activeElement).one(Util.TRANSITION_END, function () { + $$$1(nextElement).removeClass(directionalClassName + " " + orderClassName).addClass(ClassName.ACTIVE); + $$$1(activeElement).removeClass(ClassName.ACTIVE + " " + orderClassName + " " + directionalClassName); + _this3._isSliding = false; + setTimeout(function () { + return $$$1(_this3._element).trigger(slidEvent); + }, 0); + }).emulateTransitionEnd(transitionDuration); + } else { + $$$1(activeElement).removeClass(ClassName.ACTIVE); + $$$1(nextElement).addClass(ClassName.ACTIVE); + this._isSliding = false; + $$$1(this._element).trigger(slidEvent); + } + + if (isCycling) { + this.cycle(); + } + }; // Static + + + Carousel._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $$$1(this).data(DATA_KEY); + + var _config = _objectSpread({}, Default, $$$1(this).data()); + + if (typeof config === 'object') { + _config = _objectSpread({}, _config, config); + } + + var action = typeof config === 'string' ? config : _config.slide; + + if (!data) { + data = new Carousel(this, _config); + $$$1(this).data(DATA_KEY, data); + } + + if (typeof config === 'number') { + data.to(config); + } else if (typeof action === 'string') { + if (typeof data[action] === 'undefined') { + throw new TypeError("No method named \"" + action + "\""); + } + + data[action](); + } else if (_config.interval) { + data.pause(); + data.cycle(); + } + }); + }; + + Carousel._dataApiClickHandler = function _dataApiClickHandler(event) { + var selector = Util.getSelectorFromElement(this); + + if (!selector) { + return; + } + + var target = $$$1(selector)[0]; + + if (!target || !$$$1(target).hasClass(ClassName.CAROUSEL)) { + return; + } + + var config = _objectSpread({}, $$$1(target).data(), $$$1(this).data()); + + var slideIndex = this.getAttribute('data-slide-to'); + + if (slideIndex) { + config.interval = false; + } + + Carousel._jQueryInterface.call($$$1(target), config); + + if (slideIndex) { + $$$1(target).data(DATA_KEY).to(slideIndex); + } + + event.preventDefault(); + }; + + _createClass(Carousel, null, [{ + key: "VERSION", + get: function get() { + return VERSION; + } + }, { + key: "Default", + get: function get() { + return Default; + } + }]); + + return Carousel; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $$$1(document).on(Event.CLICK_DATA_API, Selector.DATA_SLIDE, Carousel._dataApiClickHandler); + $$$1(window).on(Event.LOAD_DATA_API, function () { + var carousels = [].slice.call(document.querySelectorAll(Selector.DATA_RIDE)); + + for (var i = 0, len = carousels.length; i < len; i++) { + var $carousel = $$$1(carousels[i]); + + Carousel._jQueryInterface.call($carousel, $carousel.data()); + } + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $$$1.fn[NAME] = Carousel._jQueryInterface; + $$$1.fn[NAME].Constructor = Carousel; + + $$$1.fn[NAME].noConflict = function () { + $$$1.fn[NAME] = JQUERY_NO_CONFLICT; + return Carousel._jQueryInterface; + }; + + return Carousel; + }($); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.1.3): collapse.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + + var Collapse = function ($$$1) { + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + var NAME = 'collapse'; + var VERSION = '4.1.3'; + var DATA_KEY = 'bs.collapse'; + var EVENT_KEY = "." + DATA_KEY; + var DATA_API_KEY = '.data-api'; + var JQUERY_NO_CONFLICT = $$$1.fn[NAME]; + var Default = { + toggle: true, + parent: '' + }; + var DefaultType = { + toggle: 'boolean', + parent: '(string|element)' + }; + var Event = { + SHOW: "show" + EVENT_KEY, + SHOWN: "shown" + EVENT_KEY, + HIDE: "hide" + EVENT_KEY, + HIDDEN: "hidden" + EVENT_KEY, + CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY + }; + var ClassName = { + SHOW: 'show', + COLLAPSE: 'collapse', + COLLAPSING: 'collapsing', + COLLAPSED: 'collapsed' + }; + var Dimension = { + WIDTH: 'width', + HEIGHT: 'height' + }; + var Selector = { + ACTIVES: '.show, .collapsing', + DATA_TOGGLE: '[data-toggle="collapse"]' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Collapse = + /*#__PURE__*/ + function () { + function Collapse(element, config) { + this._isTransitioning = false; + this._element = element; + this._config = this._getConfig(config); + this._triggerArray = $$$1.makeArray(document.querySelectorAll("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]"))); + var toggleList = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE)); + + for (var i = 0, len = toggleList.length; i < len; i++) { + var elem = toggleList[i]; + var selector = Util.getSelectorFromElement(elem); + var filterElement = [].slice.call(document.querySelectorAll(selector)).filter(function (foundElem) { + return foundElem === element; + }); + + if (selector !== null && filterElement.length > 0) { + this._selector = selector; + + this._triggerArray.push(elem); + } + } + + this._parent = this._config.parent ? this._getParent() : null; + + if (!this._config.parent) { + this._addAriaAndCollapsedClass(this._element, this._triggerArray); + } + + if (this._config.toggle) { + this.toggle(); + } + } // Getters + + + var _proto = Collapse.prototype; + + // Public + _proto.toggle = function toggle() { + if ($$$1(this._element).hasClass(ClassName.SHOW)) { + this.hide(); + } else { + this.show(); + } + }; + + _proto.show = function show() { + var _this = this; + + if (this._isTransitioning || $$$1(this._element).hasClass(ClassName.SHOW)) { + return; + } + + var actives; + var activesData; + + if (this._parent) { + actives = [].slice.call(this._parent.querySelectorAll(Selector.ACTIVES)).filter(function (elem) { + return elem.getAttribute('data-parent') === _this._config.parent; + }); + + if (actives.length === 0) { + actives = null; + } + } + + if (actives) { + activesData = $$$1(actives).not(this._selector).data(DATA_KEY); + + if (activesData && activesData._isTransitioning) { + return; + } + } + + var startEvent = $$$1.Event(Event.SHOW); + $$$1(this._element).trigger(startEvent); + + if (startEvent.isDefaultPrevented()) { + return; + } + + if (actives) { + Collapse._jQueryInterface.call($$$1(actives).not(this._selector), 'hide'); + + if (!activesData) { + $$$1(actives).data(DATA_KEY, null); + } + } + + var dimension = this._getDimension(); + + $$$1(this._element).removeClass(ClassName.COLLAPSE).addClass(ClassName.COLLAPSING); + this._element.style[dimension] = 0; + + if (this._triggerArray.length) { + $$$1(this._triggerArray).removeClass(ClassName.COLLAPSED).attr('aria-expanded', true); + } + + this.setTransitioning(true); + + var complete = function complete() { + $$$1(_this._element).removeClass(ClassName.COLLAPSING).addClass(ClassName.COLLAPSE).addClass(ClassName.SHOW); + _this._element.style[dimension] = ''; + + _this.setTransitioning(false); + + $$$1(_this._element).trigger(Event.SHOWN); + }; + + var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1); + var scrollSize = "scroll" + capitalizedDimension; + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $$$1(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + this._element.style[dimension] = this._element[scrollSize] + "px"; + }; + + _proto.hide = function hide() { + var _this2 = this; + + if (this._isTransitioning || !$$$1(this._element).hasClass(ClassName.SHOW)) { + return; + } + + var startEvent = $$$1.Event(Event.HIDE); + $$$1(this._element).trigger(startEvent); + + if (startEvent.isDefaultPrevented()) { + return; + } + + var dimension = this._getDimension(); + + this._element.style[dimension] = this._element.getBoundingClientRect()[dimension] + "px"; + Util.reflow(this._element); + $$$1(this._element).addClass(ClassName.COLLAPSING).removeClass(ClassName.COLLAPSE).removeClass(ClassName.SHOW); + var triggerArrayLength = this._triggerArray.length; + + if (triggerArrayLength > 0) { + for (var i = 0; i < triggerArrayLength; i++) { + var trigger = this._triggerArray[i]; + var selector = Util.getSelectorFromElement(trigger); + + if (selector !== null) { + var $elem = $$$1([].slice.call(document.querySelectorAll(selector))); + + if (!$elem.hasClass(ClassName.SHOW)) { + $$$1(trigger).addClass(ClassName.COLLAPSED).attr('aria-expanded', false); + } + } + } + } + + this.setTransitioning(true); + + var complete = function complete() { + _this2.setTransitioning(false); + + $$$1(_this2._element).removeClass(ClassName.COLLAPSING).addClass(ClassName.COLLAPSE).trigger(Event.HIDDEN); + }; + + this._element.style[dimension] = ''; + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $$$1(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + }; + + _proto.setTransitioning = function setTransitioning(isTransitioning) { + this._isTransitioning = isTransitioning; + }; + + _proto.dispose = function dispose() { + $$$1.removeData(this._element, DATA_KEY); + this._config = null; + this._parent = null; + this._element = null; + this._triggerArray = null; + this._isTransitioning = null; + }; // Private + + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default, config); + config.toggle = Boolean(config.toggle); // Coerce string values + + Util.typeCheckConfig(NAME, config, DefaultType); + return config; + }; + + _proto._getDimension = function _getDimension() { + var hasWidth = $$$1(this._element).hasClass(Dimension.WIDTH); + return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT; + }; + + _proto._getParent = function _getParent() { + var _this3 = this; + + var parent = null; + + if (Util.isElement(this._config.parent)) { + parent = this._config.parent; // It's a jQuery object + + if (typeof this._config.parent.jquery !== 'undefined') { + parent = this._config.parent[0]; + } + } else { + parent = document.querySelector(this._config.parent); + } + + var selector = "[data-toggle=\"collapse\"][data-parent=\"" + this._config.parent + "\"]"; + var children = [].slice.call(parent.querySelectorAll(selector)); + $$$1(children).each(function (i, element) { + _this3._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]); + }); + return parent; + }; + + _proto._addAriaAndCollapsedClass = function _addAriaAndCollapsedClass(element, triggerArray) { + if (element) { + var isOpen = $$$1(element).hasClass(ClassName.SHOW); + + if (triggerArray.length) { + $$$1(triggerArray).toggleClass(ClassName.COLLAPSED, !isOpen).attr('aria-expanded', isOpen); + } + } + }; // Static + + + Collapse._getTargetFromElement = function _getTargetFromElement(element) { + var selector = Util.getSelectorFromElement(element); + return selector ? document.querySelector(selector) : null; + }; + + Collapse._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var $this = $$$1(this); + var data = $this.data(DATA_KEY); + + var _config = _objectSpread({}, Default, $this.data(), typeof config === 'object' && config ? config : {}); + + if (!data && _config.toggle && /show|hide/.test(config)) { + _config.toggle = false; + } + + if (!data) { + data = new Collapse(this, _config); + $this.data(DATA_KEY, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Collapse, null, [{ + key: "VERSION", + get: function get() { + return VERSION; + } + }, { + key: "Default", + get: function get() { + return Default; + } + }]); + + return Collapse; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $$$1(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) { + // preventDefault only for elements (which change the URL) not inside the collapsible element + if (event.currentTarget.tagName === 'A') { + event.preventDefault(); + } + + var $trigger = $$$1(this); + var selector = Util.getSelectorFromElement(this); + var selectors = [].slice.call(document.querySelectorAll(selector)); + $$$1(selectors).each(function () { + var $target = $$$1(this); + var data = $target.data(DATA_KEY); + var config = data ? 'toggle' : $trigger.data(); + + Collapse._jQueryInterface.call($target, config); + }); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $$$1.fn[NAME] = Collapse._jQueryInterface; + $$$1.fn[NAME].Constructor = Collapse; + + $$$1.fn[NAME].noConflict = function () { + $$$1.fn[NAME] = JQUERY_NO_CONFLICT; + return Collapse._jQueryInterface; + }; + + return Collapse; + }($); + + /**! + * @fileOverview Kickass library to create and place poppers near their reference elements. + * @version 1.14.3 + * @license + * Copyright (c) 2016 Federico Zivolo and contributors + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined'; + + var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox']; + var timeoutDuration = 0; + for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) { + if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) { + timeoutDuration = 1; + break; + } + } + + function microtaskDebounce(fn) { + var called = false; + return function () { + if (called) { + return; + } + called = true; + window.Promise.resolve().then(function () { + called = false; + fn(); + }); + }; + } + + function taskDebounce(fn) { + var scheduled = false; + return function () { + if (!scheduled) { + scheduled = true; + setTimeout(function () { + scheduled = false; + fn(); + }, timeoutDuration); + } + }; + } + + var supportsMicroTasks = isBrowser && window.Promise; + + /** + * Create a debounced version of a method, that's asynchronously deferred + * but called in the minimum time possible. + * + * @method + * @memberof Popper.Utils + * @argument {Function} fn + * @returns {Function} + */ + var debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce; + + /** + * Check if the given variable is a function + * @method + * @memberof Popper.Utils + * @argument {Any} functionToCheck - variable to check + * @returns {Boolean} answer to: is a function? + */ + function isFunction(functionToCheck) { + var getType = {}; + return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]'; + } + + /** + * Get CSS computed property of the given element + * @method + * @memberof Popper.Utils + * @argument {Eement} element + * @argument {String} property + */ + function getStyleComputedProperty(element, property) { + if (element.nodeType !== 1) { + return []; + } + // NOTE: 1 DOM access here + var css = getComputedStyle(element, null); + return property ? css[property] : css; + } + + /** + * Returns the parentNode or the host of the element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} parent + */ + function getParentNode(element) { + if (element.nodeName === 'HTML') { + return element; + } + return element.parentNode || element.host; + } + + /** + * Returns the scrolling parent of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} scroll parent + */ + function getScrollParent(element) { + // Return body, `getScroll` will take care to get the correct `scrollTop` from it + if (!element) { + return document.body; + } + + switch (element.nodeName) { + case 'HTML': + case 'BODY': + return element.ownerDocument.body; + case '#document': + return element.body; + } + + // Firefox want us to check `-x` and `-y` variations as well + + var _getStyleComputedProp = getStyleComputedProperty(element), + overflow = _getStyleComputedProp.overflow, + overflowX = _getStyleComputedProp.overflowX, + overflowY = _getStyleComputedProp.overflowY; + + if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) { + return element; + } + + return getScrollParent(getParentNode(element)); + } + + var isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode); + var isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent); + + /** + * Determines if the browser is Internet Explorer + * @method + * @memberof Popper.Utils + * @param {Number} version to check + * @returns {Boolean} isIE + */ + function isIE(version) { + if (version === 11) { + return isIE11; + } + if (version === 10) { + return isIE10; + } + return isIE11 || isIE10; + } + + /** + * Returns the offset parent of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} offset parent + */ + function getOffsetParent(element) { + if (!element) { + return document.documentElement; + } + + var noOffsetParent = isIE(10) ? document.body : null; + + // NOTE: 1 DOM access here + var offsetParent = element.offsetParent; + // Skip hidden elements which don't have an offsetParent + while (offsetParent === noOffsetParent && element.nextElementSibling) { + offsetParent = (element = element.nextElementSibling).offsetParent; + } + + var nodeName = offsetParent && offsetParent.nodeName; + + if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') { + return element ? element.ownerDocument.documentElement : document.documentElement; + } + + // .offsetParent will return the closest TD or TABLE in case + // no offsetParent is present, I hate this job... + if (['TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') { + return getOffsetParent(offsetParent); + } + + return offsetParent; + } + + function isOffsetContainer(element) { + var nodeName = element.nodeName; + + if (nodeName === 'BODY') { + return false; + } + return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element; + } + + /** + * Finds the root node (document, shadowDOM root) of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} node + * @returns {Element} root node + */ + function getRoot(node) { + if (node.parentNode !== null) { + return getRoot(node.parentNode); + } + + return node; + } + + /** + * Finds the offset parent common to the two provided nodes + * @method + * @memberof Popper.Utils + * @argument {Element} element1 + * @argument {Element} element2 + * @returns {Element} common offset parent + */ + function findCommonOffsetParent(element1, element2) { + // This check is needed to avoid errors in case one of the elements isn't defined for any reason + if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) { + return document.documentElement; + } + + // Here we make sure to give as "start" the element that comes first in the DOM + var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING; + var start = order ? element1 : element2; + var end = order ? element2 : element1; + + // Get common ancestor container + var range = document.createRange(); + range.setStart(start, 0); + range.setEnd(end, 0); + var commonAncestorContainer = range.commonAncestorContainer; + + // Both nodes are inside #document + + if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) { + if (isOffsetContainer(commonAncestorContainer)) { + return commonAncestorContainer; + } + + return getOffsetParent(commonAncestorContainer); + } + + // one of the nodes is inside shadowDOM, find which one + var element1root = getRoot(element1); + if (element1root.host) { + return findCommonOffsetParent(element1root.host, element2); + } else { + return findCommonOffsetParent(element1, getRoot(element2).host); + } + } + + /** + * Gets the scroll value of the given element in the given side (top and left) + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @argument {String} side `top` or `left` + * @returns {number} amount of scrolled pixels + */ + function getScroll(element) { + var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top'; + + var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft'; + var nodeName = element.nodeName; + + if (nodeName === 'BODY' || nodeName === 'HTML') { + var html = element.ownerDocument.documentElement; + var scrollingElement = element.ownerDocument.scrollingElement || html; + return scrollingElement[upperSide]; + } + + return element[upperSide]; + } + + /* + * Sum or subtract the element scroll values (left and top) from a given rect object + * @method + * @memberof Popper.Utils + * @param {Object} rect - Rect object you want to change + * @param {HTMLElement} element - The element from the function reads the scroll values + * @param {Boolean} subtract - set to true if you want to subtract the scroll values + * @return {Object} rect - The modifier rect object + */ + function includeScroll(rect, element) { + var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + + var scrollTop = getScroll(element, 'top'); + var scrollLeft = getScroll(element, 'left'); + var modifier = subtract ? -1 : 1; + rect.top += scrollTop * modifier; + rect.bottom += scrollTop * modifier; + rect.left += scrollLeft * modifier; + rect.right += scrollLeft * modifier; + return rect; + } + + /* + * Helper to detect borders of a given element + * @method + * @memberof Popper.Utils + * @param {CSSStyleDeclaration} styles + * Result of `getStyleComputedProperty` on the given element + * @param {String} axis - `x` or `y` + * @return {number} borders - The borders size of the given axis + */ + + function getBordersSize(styles, axis) { + var sideA = axis === 'x' ? 'Left' : 'Top'; + var sideB = sideA === 'Left' ? 'Right' : 'Bottom'; + + return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10); + } + + function getSize(axis, body, html, computedStyle) { + return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? html['offset' + axis] + computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')] + computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')] : 0); + } + + function getWindowSizes() { + var body = document.body; + var html = document.documentElement; + var computedStyle = isIE(10) && getComputedStyle(html); + + return { + height: getSize('Height', body, html, computedStyle), + width: getSize('Width', body, html, computedStyle) + }; + } + + var classCallCheck = function (instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + }; + + var createClass = function () { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } + + return function (Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps); + if (staticProps) defineProperties(Constructor, staticProps); + return Constructor; + }; + }(); + + + + + + var defineProperty = function (obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; + }; + + var _extends = Object.assign || function (target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + + return target; + }; + + /** + * Given element offsets, generate an output similar to getBoundingClientRect + * @method + * @memberof Popper.Utils + * @argument {Object} offsets + * @returns {Object} ClientRect like output + */ + function getClientRect(offsets) { + return _extends({}, offsets, { + right: offsets.left + offsets.width, + bottom: offsets.top + offsets.height + }); + } + + /** + * Get bounding client rect of given element + * @method + * @memberof Popper.Utils + * @param {HTMLElement} element + * @return {Object} client rect + */ + function getBoundingClientRect(element) { + var rect = {}; + + // IE10 10 FIX: Please, don't ask, the element isn't + // considered in DOM in some circumstances... + // This isn't reproducible in IE10 compatibility mode of IE11 + try { + if (isIE(10)) { + rect = element.getBoundingClientRect(); + var scrollTop = getScroll(element, 'top'); + var scrollLeft = getScroll(element, 'left'); + rect.top += scrollTop; + rect.left += scrollLeft; + rect.bottom += scrollTop; + rect.right += scrollLeft; + } else { + rect = element.getBoundingClientRect(); + } + } catch (e) {} + + var result = { + left: rect.left, + top: rect.top, + width: rect.right - rect.left, + height: rect.bottom - rect.top + }; + + // subtract scrollbar size from sizes + var sizes = element.nodeName === 'HTML' ? getWindowSizes() : {}; + var width = sizes.width || element.clientWidth || result.right - result.left; + var height = sizes.height || element.clientHeight || result.bottom - result.top; + + var horizScrollbar = element.offsetWidth - width; + var vertScrollbar = element.offsetHeight - height; + + // if an hypothetical scrollbar is detected, we must be sure it's not a `border` + // we make this check conditional for performance reasons + if (horizScrollbar || vertScrollbar) { + var styles = getStyleComputedProperty(element); + horizScrollbar -= getBordersSize(styles, 'x'); + vertScrollbar -= getBordersSize(styles, 'y'); + + result.width -= horizScrollbar; + result.height -= vertScrollbar; + } + + return getClientRect(result); + } + + function getOffsetRectRelativeToArbitraryNode(children, parent) { + var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + + var isIE10 = isIE(10); + var isHTML = parent.nodeName === 'HTML'; + var childrenRect = getBoundingClientRect(children); + var parentRect = getBoundingClientRect(parent); + var scrollParent = getScrollParent(children); + + var styles = getStyleComputedProperty(parent); + var borderTopWidth = parseFloat(styles.borderTopWidth, 10); + var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10); + + // In cases where the parent is fixed, we must ignore negative scroll in offset calc + if (fixedPosition && parent.nodeName === 'HTML') { + parentRect.top = Math.max(parentRect.top, 0); + parentRect.left = Math.max(parentRect.left, 0); + } + var offsets = getClientRect({ + top: childrenRect.top - parentRect.top - borderTopWidth, + left: childrenRect.left - parentRect.left - borderLeftWidth, + width: childrenRect.width, + height: childrenRect.height + }); + offsets.marginTop = 0; + offsets.marginLeft = 0; + + // Subtract margins of documentElement in case it's being used as parent + // we do this only on HTML because it's the only element that behaves + // differently when margins are applied to it. The margins are included in + // the box of the documentElement, in the other cases not. + if (!isIE10 && isHTML) { + var marginTop = parseFloat(styles.marginTop, 10); + var marginLeft = parseFloat(styles.marginLeft, 10); + + offsets.top -= borderTopWidth - marginTop; + offsets.bottom -= borderTopWidth - marginTop; + offsets.left -= borderLeftWidth - marginLeft; + offsets.right -= borderLeftWidth - marginLeft; + + // Attach marginTop and marginLeft because in some circumstances we may need them + offsets.marginTop = marginTop; + offsets.marginLeft = marginLeft; + } + + if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') { + offsets = includeScroll(offsets, parent); + } + + return offsets; + } + + function getViewportOffsetRectRelativeToArtbitraryNode(element) { + var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + + var html = element.ownerDocument.documentElement; + var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html); + var width = Math.max(html.clientWidth, window.innerWidth || 0); + var height = Math.max(html.clientHeight, window.innerHeight || 0); + + var scrollTop = !excludeScroll ? getScroll(html) : 0; + var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0; + + var offset = { + top: scrollTop - relativeOffset.top + relativeOffset.marginTop, + left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft, + width: width, + height: height + }; + + return getClientRect(offset); + } + + /** + * Check if the given element is fixed or is inside a fixed parent + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @argument {Element} customContainer + * @returns {Boolean} answer to "isFixed?" + */ + function isFixed(element) { + var nodeName = element.nodeName; + if (nodeName === 'BODY' || nodeName === 'HTML') { + return false; + } + if (getStyleComputedProperty(element, 'position') === 'fixed') { + return true; + } + return isFixed(getParentNode(element)); + } + + /** + * Finds the first parent of an element that has a transformed property defined + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} first transformed parent or documentElement + */ + + function getFixedPositionOffsetParent(element) { + // This check is needed to avoid errors in case one of the elements isn't defined for any reason + if (!element || !element.parentElement || isIE()) { + return document.documentElement; + } + var el = element.parentElement; + while (el && getStyleComputedProperty(el, 'transform') === 'none') { + el = el.parentElement; + } + return el || document.documentElement; + } + + /** + * Computed the boundaries limits and return them + * @method + * @memberof Popper.Utils + * @param {HTMLElement} popper + * @param {HTMLElement} reference + * @param {number} padding + * @param {HTMLElement} boundariesElement - Element used to define the boundaries + * @param {Boolean} fixedPosition - Is in fixed position mode + * @returns {Object} Coordinates of the boundaries + */ + function getBoundaries(popper, reference, padding, boundariesElement) { + var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; + + // NOTE: 1 DOM access here + + var boundaries = { top: 0, left: 0 }; + var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference); + + // Handle viewport case + if (boundariesElement === 'viewport') { + boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition); + } else { + // Handle other cases based on DOM element used as boundaries + var boundariesNode = void 0; + if (boundariesElement === 'scrollParent') { + boundariesNode = getScrollParent(getParentNode(reference)); + if (boundariesNode.nodeName === 'BODY') { + boundariesNode = popper.ownerDocument.documentElement; + } + } else if (boundariesElement === 'window') { + boundariesNode = popper.ownerDocument.documentElement; + } else { + boundariesNode = boundariesElement; + } + + var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition); + + // In case of HTML, we need a different computation + if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) { + var _getWindowSizes = getWindowSizes(), + height = _getWindowSizes.height, + width = _getWindowSizes.width; + + boundaries.top += offsets.top - offsets.marginTop; + boundaries.bottom = height + offsets.top; + boundaries.left += offsets.left - offsets.marginLeft; + boundaries.right = width + offsets.left; + } else { + // for all the other DOM elements, this one is good + boundaries = offsets; + } + } + + // Add paddings + boundaries.left += padding; + boundaries.top += padding; + boundaries.right -= padding; + boundaries.bottom -= padding; + + return boundaries; + } + + function getArea(_ref) { + var width = _ref.width, + height = _ref.height; + + return width * height; + } + + /** + * Utility used to transform the `auto` placement to the placement with more + * available space. + * @method + * @memberof Popper.Utils + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) { + var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0; + + if (placement.indexOf('auto') === -1) { + return placement; + } + + var boundaries = getBoundaries(popper, reference, padding, boundariesElement); + + var rects = { + top: { + width: boundaries.width, + height: refRect.top - boundaries.top + }, + right: { + width: boundaries.right - refRect.right, + height: boundaries.height + }, + bottom: { + width: boundaries.width, + height: boundaries.bottom - refRect.bottom + }, + left: { + width: refRect.left - boundaries.left, + height: boundaries.height + } + }; + + var sortedAreas = Object.keys(rects).map(function (key) { + return _extends({ + key: key + }, rects[key], { + area: getArea(rects[key]) + }); + }).sort(function (a, b) { + return b.area - a.area; + }); + + var filteredAreas = sortedAreas.filter(function (_ref2) { + var width = _ref2.width, + height = _ref2.height; + return width >= popper.clientWidth && height >= popper.clientHeight; + }); + + var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key; + + var variation = placement.split('-')[1]; + + return computedPlacement + (variation ? '-' + variation : ''); + } + + /** + * Get offsets to the reference element + * @method + * @memberof Popper.Utils + * @param {Object} state + * @param {Element} popper - the popper element + * @param {Element} reference - the reference element (the popper will be relative to this) + * @param {Element} fixedPosition - is in fixed position mode + * @returns {Object} An object containing the offsets which will be applied to the popper + */ + function getReferenceOffsets(state, popper, reference) { + var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; + + var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference); + return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition); + } + + /** + * Get the outer sizes of the given element (offset size + margins) + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Object} object containing width and height properties + */ + function getOuterSizes(element) { + var styles = getComputedStyle(element); + var x = parseFloat(styles.marginTop) + parseFloat(styles.marginBottom); + var y = parseFloat(styles.marginLeft) + parseFloat(styles.marginRight); + var result = { + width: element.offsetWidth + y, + height: element.offsetHeight + x + }; + return result; + } + + /** + * Get the opposite placement of the given one + * @method + * @memberof Popper.Utils + * @argument {String} placement + * @returns {String} flipped placement + */ + function getOppositePlacement(placement) { + var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' }; + return placement.replace(/left|right|bottom|top/g, function (matched) { + return hash[matched]; + }); + } + + /** + * Get offsets to the popper + * @method + * @memberof Popper.Utils + * @param {Object} position - CSS position the Popper will get applied + * @param {HTMLElement} popper - the popper element + * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this) + * @param {String} placement - one of the valid placement options + * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper + */ + function getPopperOffsets(popper, referenceOffsets, placement) { + placement = placement.split('-')[0]; + + // Get popper node sizes + var popperRect = getOuterSizes(popper); + + // Add position, width and height to our offsets object + var popperOffsets = { + width: popperRect.width, + height: popperRect.height + }; + + // depending by the popper placement we have to compute its offsets slightly differently + var isHoriz = ['right', 'left'].indexOf(placement) !== -1; + var mainSide = isHoriz ? 'top' : 'left'; + var secondarySide = isHoriz ? 'left' : 'top'; + var measurement = isHoriz ? 'height' : 'width'; + var secondaryMeasurement = !isHoriz ? 'height' : 'width'; + + popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2; + if (placement === secondarySide) { + popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement]; + } else { + popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)]; + } + + return popperOffsets; + } + + /** + * Mimics the `find` method of Array + * @method + * @memberof Popper.Utils + * @argument {Array} arr + * @argument prop + * @argument value + * @returns index or -1 + */ + function find(arr, check) { + // use native find if supported + if (Array.prototype.find) { + return arr.find(check); + } + + // use `filter` to obtain the same behavior of `find` + return arr.filter(check)[0]; + } + + /** + * Return the index of the matching object + * @method + * @memberof Popper.Utils + * @argument {Array} arr + * @argument prop + * @argument value + * @returns index or -1 + */ + function findIndex(arr, prop, value) { + // use native findIndex if supported + if (Array.prototype.findIndex) { + return arr.findIndex(function (cur) { + return cur[prop] === value; + }); + } + + // use `find` + `indexOf` if `findIndex` isn't supported + var match = find(arr, function (obj) { + return obj[prop] === value; + }); + return arr.indexOf(match); + } + + /** + * Loop trough the list of modifiers and run them in order, + * each of them will then edit the data object. + * @method + * @memberof Popper.Utils + * @param {dataObject} data + * @param {Array} modifiers + * @param {String} ends - Optional modifier name used as stopper + * @returns {dataObject} + */ + function runModifiers(modifiers, data, ends) { + var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends)); + + modifiersToRun.forEach(function (modifier) { + if (modifier['function']) { + // eslint-disable-line dot-notation + console.warn('`modifier.function` is deprecated, use `modifier.fn`!'); + } + var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation + if (modifier.enabled && isFunction(fn)) { + // Add properties to offsets to make them a complete clientRect object + // we do this before each modifier to make sure the previous one doesn't + // mess with these values + data.offsets.popper = getClientRect(data.offsets.popper); + data.offsets.reference = getClientRect(data.offsets.reference); + + data = fn(data, modifier); + } + }); + + return data; + } + + /** + * Updates the position of the popper, computing the new offsets and applying + * the new style.
    + * Prefer `scheduleUpdate` over `update` because of performance reasons. + * @method + * @memberof Popper + */ + function update() { + // if popper is destroyed, don't perform any further update + if (this.state.isDestroyed) { + return; + } + + var data = { + instance: this, + styles: {}, + arrowStyles: {}, + attributes: {}, + flipped: false, + offsets: {} + }; + + // compute reference element offsets + data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed); + + // compute auto placement, store placement inside the data object, + // modifiers will be able to edit `placement` if needed + // and refer to originalPlacement to know the original value + data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding); + + // store the computed placement inside `originalPlacement` + data.originalPlacement = data.placement; + + data.positionFixed = this.options.positionFixed; + + // compute the popper offsets + data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement); + + data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute'; + + // run the modifiers + data = runModifiers(this.modifiers, data); + + // the first `update` will call `onCreate` callback + // the other ones will call `onUpdate` callback + if (!this.state.isCreated) { + this.state.isCreated = true; + this.options.onCreate(data); + } else { + this.options.onUpdate(data); + } + } + + /** + * Helper used to know if the given modifier is enabled. + * @method + * @memberof Popper.Utils + * @returns {Boolean} + */ + function isModifierEnabled(modifiers, modifierName) { + return modifiers.some(function (_ref) { + var name = _ref.name, + enabled = _ref.enabled; + return enabled && name === modifierName; + }); + } + + /** + * Get the prefixed supported property name + * @method + * @memberof Popper.Utils + * @argument {String} property (camelCase) + * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix) + */ + function getSupportedPropertyName(property) { + var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O']; + var upperProp = property.charAt(0).toUpperCase() + property.slice(1); + + for (var i = 0; i < prefixes.length; i++) { + var prefix = prefixes[i]; + var toCheck = prefix ? '' + prefix + upperProp : property; + if (typeof document.body.style[toCheck] !== 'undefined') { + return toCheck; + } + } + return null; + } + + /** + * Destroy the popper + * @method + * @memberof Popper + */ + function destroy() { + this.state.isDestroyed = true; + + // touch DOM only if `applyStyle` modifier is enabled + if (isModifierEnabled(this.modifiers, 'applyStyle')) { + this.popper.removeAttribute('x-placement'); + this.popper.style.position = ''; + this.popper.style.top = ''; + this.popper.style.left = ''; + this.popper.style.right = ''; + this.popper.style.bottom = ''; + this.popper.style.willChange = ''; + this.popper.style[getSupportedPropertyName('transform')] = ''; + } + + this.disableEventListeners(); + + // remove the popper if user explicity asked for the deletion on destroy + // do not use `remove` because IE11 doesn't support it + if (this.options.removeOnDestroy) { + this.popper.parentNode.removeChild(this.popper); + } + return this; + } + + /** + * Get the window associated with the element + * @argument {Element} element + * @returns {Window} + */ + function getWindow(element) { + var ownerDocument = element.ownerDocument; + return ownerDocument ? ownerDocument.defaultView : window; + } + + function attachToScrollParents(scrollParent, event, callback, scrollParents) { + var isBody = scrollParent.nodeName === 'BODY'; + var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent; + target.addEventListener(event, callback, { passive: true }); + + if (!isBody) { + attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents); + } + scrollParents.push(target); + } + + /** + * Setup needed event listeners used to update the popper position + * @method + * @memberof Popper.Utils + * @private + */ + function setupEventListeners(reference, options, state, updateBound) { + // Resize event listener on window + state.updateBound = updateBound; + getWindow(reference).addEventListener('resize', state.updateBound, { passive: true }); + + // Scroll event listener on scroll parents + var scrollElement = getScrollParent(reference); + attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents); + state.scrollElement = scrollElement; + state.eventsEnabled = true; + + return state; + } + + /** + * It will add resize/scroll events and start recalculating + * position of the popper element when they are triggered. + * @method + * @memberof Popper + */ + function enableEventListeners() { + if (!this.state.eventsEnabled) { + this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate); + } + } + + /** + * Remove event listeners used to update the popper position + * @method + * @memberof Popper.Utils + * @private + */ + function removeEventListeners(reference, state) { + // Remove resize event listener on window + getWindow(reference).removeEventListener('resize', state.updateBound); + + // Remove scroll event listener on scroll parents + state.scrollParents.forEach(function (target) { + target.removeEventListener('scroll', state.updateBound); + }); + + // Reset state + state.updateBound = null; + state.scrollParents = []; + state.scrollElement = null; + state.eventsEnabled = false; + return state; + } + + /** + * It will remove resize/scroll events and won't recalculate popper position + * when they are triggered. It also won't trigger onUpdate callback anymore, + * unless you call `update` method manually. + * @method + * @memberof Popper + */ + function disableEventListeners() { + if (this.state.eventsEnabled) { + cancelAnimationFrame(this.scheduleUpdate); + this.state = removeEventListeners(this.reference, this.state); + } + } + + /** + * Tells if a given input is a number + * @method + * @memberof Popper.Utils + * @param {*} input to check + * @return {Boolean} + */ + function isNumeric(n) { + return n !== '' && !isNaN(parseFloat(n)) && isFinite(n); + } + + /** + * Set the style to the given popper + * @method + * @memberof Popper.Utils + * @argument {Element} element - Element to apply the style to + * @argument {Object} styles + * Object with a list of properties and values which will be applied to the element + */ + function setStyles(element, styles) { + Object.keys(styles).forEach(function (prop) { + var unit = ''; + // add unit if the value is numeric and is one of the following + if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) { + unit = 'px'; + } + element.style[prop] = styles[prop] + unit; + }); + } + + /** + * Set the attributes to the given popper + * @method + * @memberof Popper.Utils + * @argument {Element} element - Element to apply the attributes to + * @argument {Object} styles + * Object with a list of properties and values which will be applied to the element + */ + function setAttributes(element, attributes) { + Object.keys(attributes).forEach(function (prop) { + var value = attributes[prop]; + if (value !== false) { + element.setAttribute(prop, attributes[prop]); + } else { + element.removeAttribute(prop); + } + }); + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} data.styles - List of style properties - values to apply to popper element + * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The same data object + */ + function applyStyle(data) { + // any property present in `data.styles` will be applied to the popper, + // in this way we can make the 3rd party modifiers add custom styles to it + // Be aware, modifiers could override the properties defined in the previous + // lines of this modifier! + setStyles(data.instance.popper, data.styles); + + // any property present in `data.attributes` will be applied to the popper, + // they will be set as HTML attributes of the element + setAttributes(data.instance.popper, data.attributes); + + // if arrowElement is defined and arrowStyles has some properties + if (data.arrowElement && Object.keys(data.arrowStyles).length) { + setStyles(data.arrowElement, data.arrowStyles); + } + + return data; + } + + /** + * Set the x-placement attribute before everything else because it could be used + * to add margins to the popper margins needs to be calculated to get the + * correct popper offsets. + * @method + * @memberof Popper.modifiers + * @param {HTMLElement} reference - The reference element used to position the popper + * @param {HTMLElement} popper - The HTML element used as popper + * @param {Object} options - Popper.js options + */ + function applyStyleOnLoad(reference, popper, options, modifierOptions, state) { + // compute reference element offsets + var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed); + + // compute auto placement, store placement inside the data object, + // modifiers will be able to edit `placement` if needed + // and refer to originalPlacement to know the original value + var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding); + + popper.setAttribute('x-placement', placement); + + // Apply `position` to popper before anything else because + // without the position applied we can't guarantee correct computations + setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' }); + + return options; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function computeStyle(data, options) { + var x = options.x, + y = options.y; + var popper = data.offsets.popper; + + // Remove this legacy support in Popper.js v2 + + var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) { + return modifier.name === 'applyStyle'; + }).gpuAcceleration; + if (legacyGpuAccelerationOption !== undefined) { + console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!'); + } + var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration; + + var offsetParent = getOffsetParent(data.instance.popper); + var offsetParentRect = getBoundingClientRect(offsetParent); + + // Styles + var styles = { + position: popper.position + }; + + // Avoid blurry text by using full pixel integers. + // For pixel-perfect positioning, top/bottom prefers rounded + // values, while left/right prefers floored values. + var offsets = { + left: Math.floor(popper.left), + top: Math.round(popper.top), + bottom: Math.round(popper.bottom), + right: Math.floor(popper.right) + }; + + var sideA = x === 'bottom' ? 'top' : 'bottom'; + var sideB = y === 'right' ? 'left' : 'right'; + + // if gpuAcceleration is set to `true` and transform is supported, + // we use `translate3d` to apply the position to the popper we + // automatically use the supported prefixed version if needed + var prefixedProperty = getSupportedPropertyName('transform'); + + // now, let's make a step back and look at this code closely (wtf?) + // If the content of the popper grows once it's been positioned, it + // may happen that the popper gets misplaced because of the new content + // overflowing its reference element + // To avoid this problem, we provide two options (x and y), which allow + // the consumer to define the offset origin. + // If we position a popper on top of a reference element, we can set + // `x` to `top` to make the popper grow towards its top instead of + // its bottom. + var left = void 0, + top = void 0; + if (sideA === 'bottom') { + top = -offsetParentRect.height + offsets.bottom; + } else { + top = offsets.top; + } + if (sideB === 'right') { + left = -offsetParentRect.width + offsets.right; + } else { + left = offsets.left; + } + if (gpuAcceleration && prefixedProperty) { + styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)'; + styles[sideA] = 0; + styles[sideB] = 0; + styles.willChange = 'transform'; + } else { + // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties + var invertTop = sideA === 'bottom' ? -1 : 1; + var invertLeft = sideB === 'right' ? -1 : 1; + styles[sideA] = top * invertTop; + styles[sideB] = left * invertLeft; + styles.willChange = sideA + ', ' + sideB; + } + + // Attributes + var attributes = { + 'x-placement': data.placement + }; + + // Update `data` attributes, styles and arrowStyles + data.attributes = _extends({}, attributes, data.attributes); + data.styles = _extends({}, styles, data.styles); + data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles); + + return data; + } + + /** + * Helper used to know if the given modifier depends from another one.
    + * It checks if the needed modifier is listed and enabled. + * @method + * @memberof Popper.Utils + * @param {Array} modifiers - list of modifiers + * @param {String} requestingName - name of requesting modifier + * @param {String} requestedName - name of requested modifier + * @returns {Boolean} + */ + function isModifierRequired(modifiers, requestingName, requestedName) { + var requesting = find(modifiers, function (_ref) { + var name = _ref.name; + return name === requestingName; + }); + + var isRequired = !!requesting && modifiers.some(function (modifier) { + return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order; + }); + + if (!isRequired) { + var _requesting = '`' + requestingName + '`'; + var requested = '`' + requestedName + '`'; + console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!'); + } + return isRequired; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function arrow(data, options) { + var _data$offsets$arrow; + + // arrow depends on keepTogether in order to work + if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) { + return data; + } + + var arrowElement = options.element; + + // if arrowElement is a string, suppose it's a CSS selector + if (typeof arrowElement === 'string') { + arrowElement = data.instance.popper.querySelector(arrowElement); + + // if arrowElement is not found, don't run the modifier + if (!arrowElement) { + return data; + } + } else { + // if the arrowElement isn't a query selector we must check that the + // provided DOM node is child of its popper node + if (!data.instance.popper.contains(arrowElement)) { + console.warn('WARNING: `arrow.element` must be child of its popper element!'); + return data; + } + } + + var placement = data.placement.split('-')[0]; + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var isVertical = ['left', 'right'].indexOf(placement) !== -1; + + var len = isVertical ? 'height' : 'width'; + var sideCapitalized = isVertical ? 'Top' : 'Left'; + var side = sideCapitalized.toLowerCase(); + var altSide = isVertical ? 'left' : 'top'; + var opSide = isVertical ? 'bottom' : 'right'; + var arrowElementSize = getOuterSizes(arrowElement)[len]; + + // + // extends keepTogether behavior making sure the popper and its + // reference have enough pixels in conjuction + // + + // top/left side + if (reference[opSide] - arrowElementSize < popper[side]) { + data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize); + } + // bottom/right side + if (reference[side] + arrowElementSize > popper[opSide]) { + data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide]; + } + data.offsets.popper = getClientRect(data.offsets.popper); + + // compute center of the popper + var center = reference[side] + reference[len] / 2 - arrowElementSize / 2; + + // Compute the sideValue using the updated popper offsets + // take popper margin in account because we don't have this info available + var css = getStyleComputedProperty(data.instance.popper); + var popperMarginSide = parseFloat(css['margin' + sideCapitalized], 10); + var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width'], 10); + var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide; + + // prevent arrowElement from being placed not contiguously to its popper + sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0); + + data.arrowElement = arrowElement; + data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow); + + return data; + } + + /** + * Get the opposite placement variation of the given one + * @method + * @memberof Popper.Utils + * @argument {String} placement variation + * @returns {String} flipped placement variation + */ + function getOppositeVariation(variation) { + if (variation === 'end') { + return 'start'; + } else if (variation === 'start') { + return 'end'; + } + return variation; + } + + /** + * List of accepted placements to use as values of the `placement` option.
    + * Valid placements are: + * - `auto` + * - `top` + * - `right` + * - `bottom` + * - `left` + * + * Each placement can have a variation from this list: + * - `-start` + * - `-end` + * + * Variations are interpreted easily if you think of them as the left to right + * written languages. Horizontally (`top` and `bottom`), `start` is left and `end` + * is right.
    + * Vertically (`left` and `right`), `start` is top and `end` is bottom. + * + * Some valid examples are: + * - `top-end` (on top of reference, right aligned) + * - `right-start` (on right of reference, top aligned) + * - `bottom` (on bottom, centered) + * - `auto-right` (on the side with more space available, alignment depends by placement) + * + * @static + * @type {Array} + * @enum {String} + * @readonly + * @method placements + * @memberof Popper + */ + var placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start']; + + // Get rid of `auto` `auto-start` and `auto-end` + var validPlacements = placements.slice(3); + + /** + * Given an initial placement, returns all the subsequent placements + * clockwise (or counter-clockwise). + * + * @method + * @memberof Popper.Utils + * @argument {String} placement - A valid placement (it accepts variations) + * @argument {Boolean} counter - Set to true to walk the placements counterclockwise + * @returns {Array} placements including their variations + */ + function clockwise(placement) { + var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + + var index = validPlacements.indexOf(placement); + var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index)); + return counter ? arr.reverse() : arr; + } + + var BEHAVIORS = { + FLIP: 'flip', + CLOCKWISE: 'clockwise', + COUNTERCLOCKWISE: 'counterclockwise' + }; + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function flip(data, options) { + // if `inner` modifier is enabled, we can't use the `flip` modifier + if (isModifierEnabled(data.instance.modifiers, 'inner')) { + return data; + } + + if (data.flipped && data.placement === data.originalPlacement) { + // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides + return data; + } + + var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed); + + var placement = data.placement.split('-')[0]; + var placementOpposite = getOppositePlacement(placement); + var variation = data.placement.split('-')[1] || ''; + + var flipOrder = []; + + switch (options.behavior) { + case BEHAVIORS.FLIP: + flipOrder = [placement, placementOpposite]; + break; + case BEHAVIORS.CLOCKWISE: + flipOrder = clockwise(placement); + break; + case BEHAVIORS.COUNTERCLOCKWISE: + flipOrder = clockwise(placement, true); + break; + default: + flipOrder = options.behavior; + } + + flipOrder.forEach(function (step, index) { + if (placement !== step || flipOrder.length === index + 1) { + return data; + } + + placement = data.placement.split('-')[0]; + placementOpposite = getOppositePlacement(placement); + + var popperOffsets = data.offsets.popper; + var refOffsets = data.offsets.reference; + + // using floor because the reference offsets may contain decimals we are not going to consider here + var floor = Math.floor; + var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom); + + var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left); + var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right); + var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top); + var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom); + + var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom; + + // flip the variation if required + var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; + var flippedVariation = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom); + + if (overlapsRef || overflowsBoundaries || flippedVariation) { + // this boolean to detect any flip loop + data.flipped = true; + + if (overlapsRef || overflowsBoundaries) { + placement = flipOrder[index + 1]; + } + + if (flippedVariation) { + variation = getOppositeVariation(variation); + } + + data.placement = placement + (variation ? '-' + variation : ''); + + // this object contains `position`, we want to preserve it along with + // any additional property we may add in the future + data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement)); + + data = runModifiers(data.instance.modifiers, data, 'flip'); + } + }); + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function keepTogether(data) { + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var placement = data.placement.split('-')[0]; + var floor = Math.floor; + var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; + var side = isVertical ? 'right' : 'bottom'; + var opSide = isVertical ? 'left' : 'top'; + var measurement = isVertical ? 'width' : 'height'; + + if (popper[side] < floor(reference[opSide])) { + data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement]; + } + if (popper[opSide] > floor(reference[side])) { + data.offsets.popper[opSide] = floor(reference[side]); + } + + return data; + } + + /** + * Converts a string containing value + unit into a px value number + * @function + * @memberof {modifiers~offset} + * @private + * @argument {String} str - Value + unit string + * @argument {String} measurement - `height` or `width` + * @argument {Object} popperOffsets + * @argument {Object} referenceOffsets + * @returns {Number|String} + * Value in pixels, or original string if no values were extracted + */ + function toValue(str, measurement, popperOffsets, referenceOffsets) { + // separate value from unit + var split = str.match(/((?:\-|\+)?\d*\.?\d*)(.*)/); + var value = +split[1]; + var unit = split[2]; + + // If it's not a number it's an operator, I guess + if (!value) { + return str; + } + + if (unit.indexOf('%') === 0) { + var element = void 0; + switch (unit) { + case '%p': + element = popperOffsets; + break; + case '%': + case '%r': + default: + element = referenceOffsets; + } + + var rect = getClientRect(element); + return rect[measurement] / 100 * value; + } else if (unit === 'vh' || unit === 'vw') { + // if is a vh or vw, we calculate the size based on the viewport + var size = void 0; + if (unit === 'vh') { + size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0); + } else { + size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0); + } + return size / 100 * value; + } else { + // if is an explicit pixel unit, we get rid of the unit and keep the value + // if is an implicit unit, it's px, and we return just the value + return value; + } + } + + /** + * Parse an `offset` string to extrapolate `x` and `y` numeric offsets. + * @function + * @memberof {modifiers~offset} + * @private + * @argument {String} offset + * @argument {Object} popperOffsets + * @argument {Object} referenceOffsets + * @argument {String} basePlacement + * @returns {Array} a two cells array with x and y offsets in numbers + */ + function parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) { + var offsets = [0, 0]; + + // Use height if placement is left or right and index is 0 otherwise use width + // in this way the first offset will use an axis and the second one + // will use the other one + var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1; + + // Split the offset string to obtain a list of values and operands + // The regex addresses values with the plus or minus sign in front (+10, -20, etc) + var fragments = offset.split(/(\+|\-)/).map(function (frag) { + return frag.trim(); + }); + + // Detect if the offset string contains a pair of values or a single one + // they could be separated by comma or space + var divider = fragments.indexOf(find(fragments, function (frag) { + return frag.search(/,|\s/) !== -1; + })); + + if (fragments[divider] && fragments[divider].indexOf(',') === -1) { + console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.'); + } + + // If divider is found, we divide the list of values and operands to divide + // them by ofset X and Y. + var splitRegex = /\s*,\s*|\s+/; + var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments]; + + // Convert the values with units to absolute pixels to allow our computations + ops = ops.map(function (op, index) { + // Most of the units rely on the orientation of the popper + var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width'; + var mergeWithPrevious = false; + return op + // This aggregates any `+` or `-` sign that aren't considered operators + // e.g.: 10 + +5 => [10, +, +5] + .reduce(function (a, b) { + if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) { + a[a.length - 1] = b; + mergeWithPrevious = true; + return a; + } else if (mergeWithPrevious) { + a[a.length - 1] += b; + mergeWithPrevious = false; + return a; + } else { + return a.concat(b); + } + }, []) + // Here we convert the string values into number values (in px) + .map(function (str) { + return toValue(str, measurement, popperOffsets, referenceOffsets); + }); + }); + + // Loop trough the offsets arrays and execute the operations + ops.forEach(function (op, index) { + op.forEach(function (frag, index2) { + if (isNumeric(frag)) { + offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1); + } + }); + }); + return offsets; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @argument {Number|String} options.offset=0 + * The offset value as described in the modifier description + * @returns {Object} The data object, properly modified + */ + function offset(data, _ref) { + var offset = _ref.offset; + var placement = data.placement, + _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var basePlacement = placement.split('-')[0]; + + var offsets = void 0; + if (isNumeric(+offset)) { + offsets = [+offset, 0]; + } else { + offsets = parseOffset(offset, popper, reference, basePlacement); + } + + if (basePlacement === 'left') { + popper.top += offsets[0]; + popper.left -= offsets[1]; + } else if (basePlacement === 'right') { + popper.top += offsets[0]; + popper.left += offsets[1]; + } else if (basePlacement === 'top') { + popper.left += offsets[0]; + popper.top -= offsets[1]; + } else if (basePlacement === 'bottom') { + popper.left += offsets[0]; + popper.top += offsets[1]; + } + + data.popper = popper; + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function preventOverflow(data, options) { + var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper); + + // If offsetParent is the reference element, we really want to + // go one step up and use the next offsetParent as reference to + // avoid to make this modifier completely useless and look like broken + if (data.instance.reference === boundariesElement) { + boundariesElement = getOffsetParent(boundariesElement); + } + + // NOTE: DOM access here + // resets the popper's position so that the document size can be calculated excluding + // the size of the popper element itself + var transformProp = getSupportedPropertyName('transform'); + var popperStyles = data.instance.popper.style; // assignment to help minification + var top = popperStyles.top, + left = popperStyles.left, + transform = popperStyles[transformProp]; + + popperStyles.top = ''; + popperStyles.left = ''; + popperStyles[transformProp] = ''; + + var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed); + + // NOTE: DOM access here + // restores the original style properties after the offsets have been computed + popperStyles.top = top; + popperStyles.left = left; + popperStyles[transformProp] = transform; + + options.boundaries = boundaries; + + var order = options.priority; + var popper = data.offsets.popper; + + var check = { + primary: function primary(placement) { + var value = popper[placement]; + if (popper[placement] < boundaries[placement] && !options.escapeWithReference) { + value = Math.max(popper[placement], boundaries[placement]); + } + return defineProperty({}, placement, value); + }, + secondary: function secondary(placement) { + var mainSide = placement === 'right' ? 'left' : 'top'; + var value = popper[mainSide]; + if (popper[placement] > boundaries[placement] && !options.escapeWithReference) { + value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height)); + } + return defineProperty({}, mainSide, value); + } + }; + + order.forEach(function (placement) { + var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary'; + popper = _extends({}, popper, check[side](placement)); + }); + + data.offsets.popper = popper; + + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function shift(data) { + var placement = data.placement; + var basePlacement = placement.split('-')[0]; + var shiftvariation = placement.split('-')[1]; + + // if shift shiftvariation is specified, run the modifier + if (shiftvariation) { + var _data$offsets = data.offsets, + reference = _data$offsets.reference, + popper = _data$offsets.popper; + + var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1; + var side = isVertical ? 'left' : 'top'; + var measurement = isVertical ? 'width' : 'height'; + + var shiftOffsets = { + start: defineProperty({}, side, reference[side]), + end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement]) + }; + + data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]); + } + + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function hide(data) { + if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) { + return data; + } + + var refRect = data.offsets.reference; + var bound = find(data.instance.modifiers, function (modifier) { + return modifier.name === 'preventOverflow'; + }).boundaries; + + if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) { + // Avoid unnecessary DOM access if visibility hasn't changed + if (data.hide === true) { + return data; + } + + data.hide = true; + data.attributes['x-out-of-boundaries'] = ''; + } else { + // Avoid unnecessary DOM access if visibility hasn't changed + if (data.hide === false) { + return data; + } + + data.hide = false; + data.attributes['x-out-of-boundaries'] = false; + } + + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function inner(data) { + var placement = data.placement; + var basePlacement = placement.split('-')[0]; + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1; + + var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1; + + popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0); + + data.placement = getOppositePlacement(placement); + data.offsets.popper = getClientRect(popper); + + return data; + } + + /** + * Modifier function, each modifier can have a function of this type assigned + * to its `fn` property.
    + * These functions will be called on each update, this means that you must + * make sure they are performant enough to avoid performance bottlenecks. + * + * @function ModifierFn + * @argument {dataObject} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {dataObject} The data object, properly modified + */ + + /** + * Modifiers are plugins used to alter the behavior of your poppers.
    + * Popper.js uses a set of 9 modifiers to provide all the basic functionalities + * needed by the library. + * + * Usually you don't want to override the `order`, `fn` and `onLoad` props. + * All the other properties are configurations that could be tweaked. + * @namespace modifiers + */ + var modifiers = { + /** + * Modifier used to shift the popper on the start or end of its reference + * element.
    + * It will read the variation of the `placement` property.
    + * It can be one either `-end` or `-start`. + * @memberof modifiers + * @inner + */ + shift: { + /** @prop {number} order=100 - Index used to define the order of execution */ + order: 100, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: shift + }, + + /** + * The `offset` modifier can shift your popper on both its axis. + * + * It accepts the following units: + * - `px` or unitless, interpreted as pixels + * - `%` or `%r`, percentage relative to the length of the reference element + * - `%p`, percentage relative to the length of the popper element + * - `vw`, CSS viewport width unit + * - `vh`, CSS viewport height unit + * + * For length is intended the main axis relative to the placement of the popper.
    + * This means that if the placement is `top` or `bottom`, the length will be the + * `width`. In case of `left` or `right`, it will be the height. + * + * You can provide a single value (as `Number` or `String`), or a pair of values + * as `String` divided by a comma or one (or more) white spaces.
    + * The latter is a deprecated method because it leads to confusion and will be + * removed in v2.
    + * Additionally, it accepts additions and subtractions between different units. + * Note that multiplications and divisions aren't supported. + * + * Valid examples are: + * ``` + * 10 + * '10%' + * '10, 10' + * '10%, 10' + * '10 + 10%' + * '10 - 5vh + 3%' + * '-10px + 5vh, 5px - 6%' + * ``` + * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap + * > with their reference element, unfortunately, you will have to disable the `flip` modifier. + * > More on this [reading this issue](https://github.com/FezVrasta/popper.js/issues/373) + * + * @memberof modifiers + * @inner + */ + offset: { + /** @prop {number} order=200 - Index used to define the order of execution */ + order: 200, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: offset, + /** @prop {Number|String} offset=0 + * The offset value as described in the modifier description + */ + offset: 0 + }, + + /** + * Modifier used to prevent the popper from being positioned outside the boundary. + * + * An scenario exists where the reference itself is not within the boundaries.
    + * We can say it has "escaped the boundaries" — or just "escaped".
    + * In this case we need to decide whether the popper should either: + * + * - detach from the reference and remain "trapped" in the boundaries, or + * - if it should ignore the boundary and "escape with its reference" + * + * When `escapeWithReference` is set to`true` and reference is completely + * outside its boundaries, the popper will overflow (or completely leave) + * the boundaries in order to remain attached to the edge of the reference. + * + * @memberof modifiers + * @inner + */ + preventOverflow: { + /** @prop {number} order=300 - Index used to define the order of execution */ + order: 300, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: preventOverflow, + /** + * @prop {Array} [priority=['left','right','top','bottom']] + * Popper will try to prevent overflow following these priorities by default, + * then, it could overflow on the left and on top of the `boundariesElement` + */ + priority: ['left', 'right', 'top', 'bottom'], + /** + * @prop {number} padding=5 + * Amount of pixel used to define a minimum distance between the boundaries + * and the popper this makes sure the popper has always a little padding + * between the edges of its container + */ + padding: 5, + /** + * @prop {String|HTMLElement} boundariesElement='scrollParent' + * Boundaries used by the modifier, can be `scrollParent`, `window`, + * `viewport` or any DOM element. + */ + boundariesElement: 'scrollParent' + }, + + /** + * Modifier used to make sure the reference and its popper stay near eachothers + * without leaving any gap between the two. Expecially useful when the arrow is + * enabled and you want to assure it to point to its reference element. + * It cares only about the first axis, you can still have poppers with margin + * between the popper and its reference element. + * @memberof modifiers + * @inner + */ + keepTogether: { + /** @prop {number} order=400 - Index used to define the order of execution */ + order: 400, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: keepTogether + }, + + /** + * This modifier is used to move the `arrowElement` of the popper to make + * sure it is positioned between the reference element and its popper element. + * It will read the outer size of the `arrowElement` node to detect how many + * pixels of conjuction are needed. + * + * It has no effect if no `arrowElement` is provided. + * @memberof modifiers + * @inner + */ + arrow: { + /** @prop {number} order=500 - Index used to define the order of execution */ + order: 500, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: arrow, + /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */ + element: '[x-arrow]' + }, + + /** + * Modifier used to flip the popper's placement when it starts to overlap its + * reference element. + * + * Requires the `preventOverflow` modifier before it in order to work. + * + * **NOTE:** this modifier will interrupt the current update cycle and will + * restart it if it detects the need to flip the placement. + * @memberof modifiers + * @inner + */ + flip: { + /** @prop {number} order=600 - Index used to define the order of execution */ + order: 600, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: flip, + /** + * @prop {String|Array} behavior='flip' + * The behavior used to change the popper's placement. It can be one of + * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid + * placements (with optional variations). + */ + behavior: 'flip', + /** + * @prop {number} padding=5 + * The popper will flip if it hits the edges of the `boundariesElement` + */ + padding: 5, + /** + * @prop {String|HTMLElement} boundariesElement='viewport' + * The element which will define the boundaries of the popper position, + * the popper will never be placed outside of the defined boundaries + * (except if keepTogether is enabled) + */ + boundariesElement: 'viewport' + }, + + /** + * Modifier used to make the popper flow toward the inner of the reference element. + * By default, when this modifier is disabled, the popper will be placed outside + * the reference element. + * @memberof modifiers + * @inner + */ + inner: { + /** @prop {number} order=700 - Index used to define the order of execution */ + order: 700, + /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */ + enabled: false, + /** @prop {ModifierFn} */ + fn: inner + }, + + /** + * Modifier used to hide the popper when its reference element is outside of the + * popper boundaries. It will set a `x-out-of-boundaries` attribute which can + * be used to hide with a CSS selector the popper when its reference is + * out of boundaries. + * + * Requires the `preventOverflow` modifier before it in order to work. + * @memberof modifiers + * @inner + */ + hide: { + /** @prop {number} order=800 - Index used to define the order of execution */ + order: 800, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: hide + }, + + /** + * Computes the style that will be applied to the popper element to gets + * properly positioned. + * + * Note that this modifier will not touch the DOM, it just prepares the styles + * so that `applyStyle` modifier can apply it. This separation is useful + * in case you need to replace `applyStyle` with a custom implementation. + * + * This modifier has `850` as `order` value to maintain backward compatibility + * with previous versions of Popper.js. Expect the modifiers ordering method + * to change in future major versions of the library. + * + * @memberof modifiers + * @inner + */ + computeStyle: { + /** @prop {number} order=850 - Index used to define the order of execution */ + order: 850, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: computeStyle, + /** + * @prop {Boolean} gpuAcceleration=true + * If true, it uses the CSS 3d transformation to position the popper. + * Otherwise, it will use the `top` and `left` properties. + */ + gpuAcceleration: true, + /** + * @prop {string} [x='bottom'] + * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin. + * Change this if your popper should grow in a direction different from `bottom` + */ + x: 'bottom', + /** + * @prop {string} [x='left'] + * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin. + * Change this if your popper should grow in a direction different from `right` + */ + y: 'right' + }, + + /** + * Applies the computed styles to the popper element. + * + * All the DOM manipulations are limited to this modifier. This is useful in case + * you want to integrate Popper.js inside a framework or view library and you + * want to delegate all the DOM manipulations to it. + * + * Note that if you disable this modifier, you must make sure the popper element + * has its position set to `absolute` before Popper.js can do its work! + * + * Just disable this modifier and define you own to achieve the desired effect. + * + * @memberof modifiers + * @inner + */ + applyStyle: { + /** @prop {number} order=900 - Index used to define the order of execution */ + order: 900, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: applyStyle, + /** @prop {Function} */ + onLoad: applyStyleOnLoad, + /** + * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier + * @prop {Boolean} gpuAcceleration=true + * If true, it uses the CSS 3d transformation to position the popper. + * Otherwise, it will use the `top` and `left` properties. + */ + gpuAcceleration: undefined + } + }; + + /** + * The `dataObject` is an object containing all the informations used by Popper.js + * this object get passed to modifiers and to the `onCreate` and `onUpdate` callbacks. + * @name dataObject + * @property {Object} data.instance The Popper.js instance + * @property {String} data.placement Placement applied to popper + * @property {String} data.originalPlacement Placement originally defined on init + * @property {Boolean} data.flipped True if popper has been flipped by flip modifier + * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper. + * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier + * @property {Object} data.styles Any CSS property defined here will be applied to the popper, it expects the JavaScript nomenclature (eg. `marginBottom`) + * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow, it expects the JavaScript nomenclature (eg. `marginBottom`) + * @property {Object} data.boundaries Offsets of the popper boundaries + * @property {Object} data.offsets The measurements of popper, reference and arrow elements. + * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values + * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values + * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0 + */ + + /** + * Default options provided to Popper.js constructor.
    + * These can be overriden using the `options` argument of Popper.js.
    + * To override an option, simply pass as 3rd argument an object with the same + * structure of this object, example: + * ``` + * new Popper(ref, pop, { + * modifiers: { + * preventOverflow: { enabled: false } + * } + * }) + * ``` + * @type {Object} + * @static + * @memberof Popper + */ + var Defaults = { + /** + * Popper's placement + * @prop {Popper.placements} placement='bottom' + */ + placement: 'bottom', + + /** + * Set this to true if you want popper to position it self in 'fixed' mode + * @prop {Boolean} positionFixed=false + */ + positionFixed: false, + + /** + * Whether events (resize, scroll) are initially enabled + * @prop {Boolean} eventsEnabled=true + */ + eventsEnabled: true, + + /** + * Set to true if you want to automatically remove the popper when + * you call the `destroy` method. + * @prop {Boolean} removeOnDestroy=false + */ + removeOnDestroy: false, + + /** + * Callback called when the popper is created.
    + * By default, is set to no-op.
    + * Access Popper.js instance with `data.instance`. + * @prop {onCreate} + */ + onCreate: function onCreate() {}, + + /** + * Callback called when the popper is updated, this callback is not called + * on the initialization/creation of the popper, but only on subsequent + * updates.
    + * By default, is set to no-op.
    + * Access Popper.js instance with `data.instance`. + * @prop {onUpdate} + */ + onUpdate: function onUpdate() {}, + + /** + * List of modifiers used to modify the offsets before they are applied to the popper. + * They provide most of the functionalities of Popper.js + * @prop {modifiers} + */ + modifiers: modifiers + }; + + /** + * @callback onCreate + * @param {dataObject} data + */ + + /** + * @callback onUpdate + * @param {dataObject} data + */ + + // Utils + // Methods + var Popper = function () { + /** + * Create a new Popper.js instance + * @class Popper + * @param {HTMLElement|referenceObject} reference - The reference element used to position the popper + * @param {HTMLElement} popper - The HTML element used as popper. + * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults) + * @return {Object} instance - The generated Popper.js instance + */ + function Popper(reference, popper) { + var _this = this; + + var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + classCallCheck(this, Popper); + + this.scheduleUpdate = function () { + return requestAnimationFrame(_this.update); + }; + + // make update() debounced, so that it only runs at most once-per-tick + this.update = debounce(this.update.bind(this)); + + // with {} we create a new object with the options inside it + this.options = _extends({}, Popper.Defaults, options); + + // init state + this.state = { + isDestroyed: false, + isCreated: false, + scrollParents: [] + }; + + // get reference and popper elements (allow jQuery wrappers) + this.reference = reference && reference.jquery ? reference[0] : reference; + this.popper = popper && popper.jquery ? popper[0] : popper; + + // Deep merge modifiers options + this.options.modifiers = {}; + Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) { + _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {}); + }); + + // Refactoring modifiers' list (Object => Array) + this.modifiers = Object.keys(this.options.modifiers).map(function (name) { + return _extends({ + name: name + }, _this.options.modifiers[name]); + }) + // sort the modifiers by order + .sort(function (a, b) { + return a.order - b.order; + }); + + // modifiers have the ability to execute arbitrary code when Popper.js get inited + // such code is executed in the same order of its modifier + // they could add new properties to their options configuration + // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`! + this.modifiers.forEach(function (modifierOptions) { + if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) { + modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state); + } + }); + + // fire the first update to position the popper in the right place + this.update(); + + var eventsEnabled = this.options.eventsEnabled; + if (eventsEnabled) { + // setup event listeners, they will take care of update the position in specific situations + this.enableEventListeners(); + } + + this.state.eventsEnabled = eventsEnabled; + } + + // We can't use class properties because they don't get listed in the + // class prototype and break stuff like Sinon stubs + + + createClass(Popper, [{ + key: 'update', + value: function update$$1() { + return update.call(this); + } + }, { + key: 'destroy', + value: function destroy$$1() { + return destroy.call(this); + } + }, { + key: 'enableEventListeners', + value: function enableEventListeners$$1() { + return enableEventListeners.call(this); + } + }, { + key: 'disableEventListeners', + value: function disableEventListeners$$1() { + return disableEventListeners.call(this); + } + + /** + * Schedule an update, it will run on the next UI update available + * @method scheduleUpdate + * @memberof Popper + */ + + + /** + * Collection of utilities useful when writing custom modifiers. + * Starting from version 1.7, this method is available only if you + * include `popper-utils.js` before `popper.js`. + * + * **DEPRECATION**: This way to access PopperUtils is deprecated + * and will be removed in v2! Use the PopperUtils module directly instead. + * Due to the high instability of the methods contained in Utils, we can't + * guarantee them to follow semver. Use them at your own risk! + * @static + * @private + * @type {Object} + * @deprecated since version 1.8 + * @member Utils + * @memberof Popper + */ + + }]); + return Popper; + }(); + + /** + * The `referenceObject` is an object that provides an interface compatible with Popper.js + * and lets you use it as replacement of a real DOM node.
    + * You can use this method to position a popper relatively to a set of coordinates + * in case you don't have a DOM node to use as reference. + * + * ``` + * new Popper(referenceObject, popperNode); + * ``` + * + * NB: This feature isn't supported in Internet Explorer 10 + * @name referenceObject + * @property {Function} data.getBoundingClientRect + * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method. + * @property {number} data.clientWidth + * An ES6 getter that will return the width of the virtual reference element. + * @property {number} data.clientHeight + * An ES6 getter that will return the height of the virtual reference element. + */ + + + Popper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils; + Popper.placements = placements; + Popper.Defaults = Defaults; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.1.3): dropdown.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + + var Dropdown = function ($$$1) { + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + var NAME = 'dropdown'; + var VERSION = '4.1.3'; + var DATA_KEY = 'bs.dropdown'; + var EVENT_KEY = "." + DATA_KEY; + var DATA_API_KEY = '.data-api'; + var JQUERY_NO_CONFLICT = $$$1.fn[NAME]; + var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key + + var SPACE_KEYCODE = 32; // KeyboardEvent.which value for space key + + var TAB_KEYCODE = 9; // KeyboardEvent.which value for tab key + + var ARROW_UP_KEYCODE = 38; // KeyboardEvent.which value for up arrow key + + var ARROW_DOWN_KEYCODE = 40; // KeyboardEvent.which value for down arrow key + + var RIGHT_MOUSE_BUTTON_WHICH = 3; // MouseEvent.which value for the right button (assuming a right-handed mouse) + + var REGEXP_KEYDOWN = new RegExp(ARROW_UP_KEYCODE + "|" + ARROW_DOWN_KEYCODE + "|" + ESCAPE_KEYCODE); + var Event = { + HIDE: "hide" + EVENT_KEY, + HIDDEN: "hidden" + EVENT_KEY, + SHOW: "show" + EVENT_KEY, + SHOWN: "shown" + EVENT_KEY, + CLICK: "click" + EVENT_KEY, + CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY, + KEYDOWN_DATA_API: "keydown" + EVENT_KEY + DATA_API_KEY, + KEYUP_DATA_API: "keyup" + EVENT_KEY + DATA_API_KEY + }; + var ClassName = { + DISABLED: 'disabled', + SHOW: 'show', + DROPUP: 'dropup', + DROPRIGHT: 'dropright', + DROPLEFT: 'dropleft', + MENURIGHT: 'dropdown-menu-right', + MENULEFT: 'dropdown-menu-left', + POSITION_STATIC: 'position-static' + }; + var Selector = { + DATA_TOGGLE: '[data-toggle="dropdown"]', + FORM_CHILD: '.dropdown form', + MENU: '.dropdown-menu', + NAVBAR_NAV: '.navbar-nav', + VISIBLE_ITEMS: '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)' + }; + var AttachmentMap = { + TOP: 'top-start', + TOPEND: 'top-end', + BOTTOM: 'bottom-start', + BOTTOMEND: 'bottom-end', + RIGHT: 'right-start', + RIGHTEND: 'right-end', + LEFT: 'left-start', + LEFTEND: 'left-end' + }; + var Default = { + offset: 0, + flip: true, + boundary: 'scrollParent', + reference: 'toggle', + display: 'dynamic' + }; + var DefaultType = { + offset: '(number|string|function)', + flip: 'boolean', + boundary: '(string|element)', + reference: '(string|element)', + display: 'string' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Dropdown = + /*#__PURE__*/ + function () { + function Dropdown(element, config) { + this._element = element; + this._popper = null; + this._config = this._getConfig(config); + this._menu = this._getMenuElement(); + this._inNavbar = this._detectNavbar(); + + this._addEventListeners(); + } // Getters + + + var _proto = Dropdown.prototype; + + // Public + _proto.toggle = function toggle() { + if (this._element.disabled || $$$1(this._element).hasClass(ClassName.DISABLED)) { + return; + } + + var parent = Dropdown._getParentFromElement(this._element); + + var isActive = $$$1(this._menu).hasClass(ClassName.SHOW); + + Dropdown._clearMenus(); + + if (isActive) { + return; + } + + var relatedTarget = { + relatedTarget: this._element + }; + var showEvent = $$$1.Event(Event.SHOW, relatedTarget); + $$$1(parent).trigger(showEvent); + + if (showEvent.isDefaultPrevented()) { + return; + } // Disable totally Popper.js for Dropdown in Navbar + + + if (!this._inNavbar) { + /** + * Check for Popper dependency + * Popper - https://popper.js.org + */ + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap dropdown require Popper.js (https://popper.js.org)'); + } + + var referenceElement = this._element; + + if (this._config.reference === 'parent') { + referenceElement = parent; + } else if (Util.isElement(this._config.reference)) { + referenceElement = this._config.reference; // Check if it's jQuery element + + if (typeof this._config.reference.jquery !== 'undefined') { + referenceElement = this._config.reference[0]; + } + } // If boundary is not `scrollParent`, then set position to `static` + // to allow the menu to "escape" the scroll parent's boundaries + // https://github.com/twbs/bootstrap/issues/24251 + + + if (this._config.boundary !== 'scrollParent') { + $$$1(parent).addClass(ClassName.POSITION_STATIC); + } + + this._popper = new Popper(referenceElement, this._menu, this._getPopperConfig()); + } // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + + if ('ontouchstart' in document.documentElement && $$$1(parent).closest(Selector.NAVBAR_NAV).length === 0) { + $$$1(document.body).children().on('mouseover', null, $$$1.noop); + } + + this._element.focus(); + + this._element.setAttribute('aria-expanded', true); + + $$$1(this._menu).toggleClass(ClassName.SHOW); + $$$1(parent).toggleClass(ClassName.SHOW).trigger($$$1.Event(Event.SHOWN, relatedTarget)); + }; + + _proto.dispose = function dispose() { + $$$1.removeData(this._element, DATA_KEY); + $$$1(this._element).off(EVENT_KEY); + this._element = null; + this._menu = null; + + if (this._popper !== null) { + this._popper.destroy(); + + this._popper = null; + } + }; + + _proto.update = function update() { + this._inNavbar = this._detectNavbar(); + + if (this._popper !== null) { + this._popper.scheduleUpdate(); + } + }; // Private + + + _proto._addEventListeners = function _addEventListeners() { + var _this = this; + + $$$1(this._element).on(Event.CLICK, function (event) { + event.preventDefault(); + event.stopPropagation(); + + _this.toggle(); + }); + }; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, this.constructor.Default, $$$1(this._element).data(), config); + Util.typeCheckConfig(NAME, config, this.constructor.DefaultType); + return config; + }; + + _proto._getMenuElement = function _getMenuElement() { + if (!this._menu) { + var parent = Dropdown._getParentFromElement(this._element); + + if (parent) { + this._menu = parent.querySelector(Selector.MENU); + } + } + + return this._menu; + }; + + _proto._getPlacement = function _getPlacement() { + var $parentDropdown = $$$1(this._element.parentNode); + var placement = AttachmentMap.BOTTOM; // Handle dropup + + if ($parentDropdown.hasClass(ClassName.DROPUP)) { + placement = AttachmentMap.TOP; + + if ($$$1(this._menu).hasClass(ClassName.MENURIGHT)) { + placement = AttachmentMap.TOPEND; + } + } else if ($parentDropdown.hasClass(ClassName.DROPRIGHT)) { + placement = AttachmentMap.RIGHT; + } else if ($parentDropdown.hasClass(ClassName.DROPLEFT)) { + placement = AttachmentMap.LEFT; + } else if ($$$1(this._menu).hasClass(ClassName.MENURIGHT)) { + placement = AttachmentMap.BOTTOMEND; + } + + return placement; + }; + + _proto._detectNavbar = function _detectNavbar() { + return $$$1(this._element).closest('.navbar').length > 0; + }; + + _proto._getPopperConfig = function _getPopperConfig() { + var _this2 = this; + + var offsetConf = {}; + + if (typeof this._config.offset === 'function') { + offsetConf.fn = function (data) { + data.offsets = _objectSpread({}, data.offsets, _this2._config.offset(data.offsets) || {}); + return data; + }; + } else { + offsetConf.offset = this._config.offset; + } + + var popperConfig = { + placement: this._getPlacement(), + modifiers: { + offset: offsetConf, + flip: { + enabled: this._config.flip + }, + preventOverflow: { + boundariesElement: this._config.boundary + } + } // Disable Popper.js if we have a static display + + }; + + if (this._config.display === 'static') { + popperConfig.modifiers.applyStyle = { + enabled: false + }; + } + + return popperConfig; + }; // Static + + + Dropdown._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $$$1(this).data(DATA_KEY); + + var _config = typeof config === 'object' ? config : null; + + if (!data) { + data = new Dropdown(this, _config); + $$$1(this).data(DATA_KEY, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + Dropdown._clearMenus = function _clearMenus(event) { + if (event && (event.which === RIGHT_MOUSE_BUTTON_WHICH || event.type === 'keyup' && event.which !== TAB_KEYCODE)) { + return; + } + + var toggles = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE)); + + for (var i = 0, len = toggles.length; i < len; i++) { + var parent = Dropdown._getParentFromElement(toggles[i]); + + var context = $$$1(toggles[i]).data(DATA_KEY); + var relatedTarget = { + relatedTarget: toggles[i] + }; + + if (event && event.type === 'click') { + relatedTarget.clickEvent = event; + } + + if (!context) { + continue; + } + + var dropdownMenu = context._menu; + + if (!$$$1(parent).hasClass(ClassName.SHOW)) { + continue; + } + + if (event && (event.type === 'click' && /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) && $$$1.contains(parent, event.target)) { + continue; + } + + var hideEvent = $$$1.Event(Event.HIDE, relatedTarget); + $$$1(parent).trigger(hideEvent); + + if (hideEvent.isDefaultPrevented()) { + continue; + } // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + + if ('ontouchstart' in document.documentElement) { + $$$1(document.body).children().off('mouseover', null, $$$1.noop); + } + + toggles[i].setAttribute('aria-expanded', 'false'); + $$$1(dropdownMenu).removeClass(ClassName.SHOW); + $$$1(parent).removeClass(ClassName.SHOW).trigger($$$1.Event(Event.HIDDEN, relatedTarget)); + } + }; + + Dropdown._getParentFromElement = function _getParentFromElement(element) { + var parent; + var selector = Util.getSelectorFromElement(element); + + if (selector) { + parent = document.querySelector(selector); + } + + return parent || element.parentNode; + }; // eslint-disable-next-line complexity + + + Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) { + // If not input/textarea: + // - And not a key in REGEXP_KEYDOWN => not a dropdown command + // If input/textarea: + // - If space key => not a dropdown command + // - If key is other than escape + // - If key is not up or down => not a dropdown command + // - If trigger inside the menu => not a dropdown command + if (/input|textarea/i.test(event.target.tagName) ? event.which === SPACE_KEYCODE || event.which !== ESCAPE_KEYCODE && (event.which !== ARROW_DOWN_KEYCODE && event.which !== ARROW_UP_KEYCODE || $$$1(event.target).closest(Selector.MENU).length) : !REGEXP_KEYDOWN.test(event.which)) { + return; + } + + event.preventDefault(); + event.stopPropagation(); + + if (this.disabled || $$$1(this).hasClass(ClassName.DISABLED)) { + return; + } + + var parent = Dropdown._getParentFromElement(this); + + var isActive = $$$1(parent).hasClass(ClassName.SHOW); + + if (!isActive && (event.which !== ESCAPE_KEYCODE || event.which !== SPACE_KEYCODE) || isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) { + if (event.which === ESCAPE_KEYCODE) { + var toggle = parent.querySelector(Selector.DATA_TOGGLE); + $$$1(toggle).trigger('focus'); + } + + $$$1(this).trigger('click'); + return; + } + + var items = [].slice.call(parent.querySelectorAll(Selector.VISIBLE_ITEMS)); + + if (items.length === 0) { + return; + } + + var index = items.indexOf(event.target); + + if (event.which === ARROW_UP_KEYCODE && index > 0) { + // Up + index--; + } + + if (event.which === ARROW_DOWN_KEYCODE && index < items.length - 1) { + // Down + index++; + } + + if (index < 0) { + index = 0; + } + + items[index].focus(); + }; + + _createClass(Dropdown, null, [{ + key: "VERSION", + get: function get() { + return VERSION; + } + }, { + key: "Default", + get: function get() { + return Default; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType; + } + }]); + + return Dropdown; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $$$1(document).on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler).on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler).on(Event.CLICK_DATA_API + " " + Event.KEYUP_DATA_API, Dropdown._clearMenus).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) { + event.preventDefault(); + event.stopPropagation(); + + Dropdown._jQueryInterface.call($$$1(this), 'toggle'); + }).on(Event.CLICK_DATA_API, Selector.FORM_CHILD, function (e) { + e.stopPropagation(); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $$$1.fn[NAME] = Dropdown._jQueryInterface; + $$$1.fn[NAME].Constructor = Dropdown; + + $$$1.fn[NAME].noConflict = function () { + $$$1.fn[NAME] = JQUERY_NO_CONFLICT; + return Dropdown._jQueryInterface; + }; + + return Dropdown; + }($, Popper); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.1.3): modal.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + + var Modal = function ($$$1) { + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + var NAME = 'modal'; + var VERSION = '4.1.3'; + var DATA_KEY = 'bs.modal'; + var EVENT_KEY = "." + DATA_KEY; + var DATA_API_KEY = '.data-api'; + var JQUERY_NO_CONFLICT = $$$1.fn[NAME]; + var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key + + var Default = { + backdrop: true, + keyboard: true, + focus: true, + show: true + }; + var DefaultType = { + backdrop: '(boolean|string)', + keyboard: 'boolean', + focus: 'boolean', + show: 'boolean' + }; + var Event = { + HIDE: "hide" + EVENT_KEY, + HIDDEN: "hidden" + EVENT_KEY, + SHOW: "show" + EVENT_KEY, + SHOWN: "shown" + EVENT_KEY, + FOCUSIN: "focusin" + EVENT_KEY, + RESIZE: "resize" + EVENT_KEY, + CLICK_DISMISS: "click.dismiss" + EVENT_KEY, + KEYDOWN_DISMISS: "keydown.dismiss" + EVENT_KEY, + MOUSEUP_DISMISS: "mouseup.dismiss" + EVENT_KEY, + MOUSEDOWN_DISMISS: "mousedown.dismiss" + EVENT_KEY, + CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY + }; + var ClassName = { + SCROLLBAR_MEASURER: 'modal-scrollbar-measure', + BACKDROP: 'modal-backdrop', + OPEN: 'modal-open', + FADE: 'fade', + SHOW: 'show' + }; + var Selector = { + DIALOG: '.modal-dialog', + DATA_TOGGLE: '[data-toggle="modal"]', + DATA_DISMISS: '[data-dismiss="modal"]', + FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top', + STICKY_CONTENT: '.sticky-top' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Modal = + /*#__PURE__*/ + function () { + function Modal(element, config) { + this._config = this._getConfig(config); + this._element = element; + this._dialog = element.querySelector(Selector.DIALOG); + this._backdrop = null; + this._isShown = false; + this._isBodyOverflowing = false; + this._ignoreBackdropClick = false; + this._scrollbarWidth = 0; + } // Getters + + + var _proto = Modal.prototype; + + // Public + _proto.toggle = function toggle(relatedTarget) { + return this._isShown ? this.hide() : this.show(relatedTarget); + }; + + _proto.show = function show(relatedTarget) { + var _this = this; + + if (this._isTransitioning || this._isShown) { + return; + } + + if ($$$1(this._element).hasClass(ClassName.FADE)) { + this._isTransitioning = true; + } + + var showEvent = $$$1.Event(Event.SHOW, { + relatedTarget: relatedTarget + }); + $$$1(this._element).trigger(showEvent); + + if (this._isShown || showEvent.isDefaultPrevented()) { + return; + } + + this._isShown = true; + + this._checkScrollbar(); + + this._setScrollbar(); + + this._adjustDialog(); + + $$$1(document.body).addClass(ClassName.OPEN); + + this._setEscapeEvent(); + + this._setResizeEvent(); + + $$$1(this._element).on(Event.CLICK_DISMISS, Selector.DATA_DISMISS, function (event) { + return _this.hide(event); + }); + $$$1(this._dialog).on(Event.MOUSEDOWN_DISMISS, function () { + $$$1(_this._element).one(Event.MOUSEUP_DISMISS, function (event) { + if ($$$1(event.target).is(_this._element)) { + _this._ignoreBackdropClick = true; + } + }); + }); + + this._showBackdrop(function () { + return _this._showElement(relatedTarget); + }); + }; + + _proto.hide = function hide(event) { + var _this2 = this; + + if (event) { + event.preventDefault(); + } + + if (this._isTransitioning || !this._isShown) { + return; + } + + var hideEvent = $$$1.Event(Event.HIDE); + $$$1(this._element).trigger(hideEvent); + + if (!this._isShown || hideEvent.isDefaultPrevented()) { + return; + } + + this._isShown = false; + var transition = $$$1(this._element).hasClass(ClassName.FADE); + + if (transition) { + this._isTransitioning = true; + } + + this._setEscapeEvent(); + + this._setResizeEvent(); + + $$$1(document).off(Event.FOCUSIN); + $$$1(this._element).removeClass(ClassName.SHOW); + $$$1(this._element).off(Event.CLICK_DISMISS); + $$$1(this._dialog).off(Event.MOUSEDOWN_DISMISS); + + if (transition) { + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $$$1(this._element).one(Util.TRANSITION_END, function (event) { + return _this2._hideModal(event); + }).emulateTransitionEnd(transitionDuration); + } else { + this._hideModal(); + } + }; + + _proto.dispose = function dispose() { + $$$1.removeData(this._element, DATA_KEY); + $$$1(window, document, this._element, this._backdrop).off(EVENT_KEY); + this._config = null; + this._element = null; + this._dialog = null; + this._backdrop = null; + this._isShown = null; + this._isBodyOverflowing = null; + this._ignoreBackdropClick = null; + this._scrollbarWidth = null; + }; + + _proto.handleUpdate = function handleUpdate() { + this._adjustDialog(); + }; // Private + + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default, config); + Util.typeCheckConfig(NAME, config, DefaultType); + return config; + }; + + _proto._showElement = function _showElement(relatedTarget) { + var _this3 = this; + + var transition = $$$1(this._element).hasClass(ClassName.FADE); + + if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) { + // Don't move modal's DOM position + document.body.appendChild(this._element); + } + + this._element.style.display = 'block'; + + this._element.removeAttribute('aria-hidden'); + + this._element.scrollTop = 0; + + if (transition) { + Util.reflow(this._element); + } + + $$$1(this._element).addClass(ClassName.SHOW); + + if (this._config.focus) { + this._enforceFocus(); + } + + var shownEvent = $$$1.Event(Event.SHOWN, { + relatedTarget: relatedTarget + }); + + var transitionComplete = function transitionComplete() { + if (_this3._config.focus) { + _this3._element.focus(); + } + + _this3._isTransitioning = false; + $$$1(_this3._element).trigger(shownEvent); + }; + + if (transition) { + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $$$1(this._dialog).one(Util.TRANSITION_END, transitionComplete).emulateTransitionEnd(transitionDuration); + } else { + transitionComplete(); + } + }; + + _proto._enforceFocus = function _enforceFocus() { + var _this4 = this; + + $$$1(document).off(Event.FOCUSIN) // Guard against infinite focus loop + .on(Event.FOCUSIN, function (event) { + if (document !== event.target && _this4._element !== event.target && $$$1(_this4._element).has(event.target).length === 0) { + _this4._element.focus(); + } + }); + }; + + _proto._setEscapeEvent = function _setEscapeEvent() { + var _this5 = this; + + if (this._isShown && this._config.keyboard) { + $$$1(this._element).on(Event.KEYDOWN_DISMISS, function (event) { + if (event.which === ESCAPE_KEYCODE) { + event.preventDefault(); + + _this5.hide(); + } + }); + } else if (!this._isShown) { + $$$1(this._element).off(Event.KEYDOWN_DISMISS); + } + }; + + _proto._setResizeEvent = function _setResizeEvent() { + var _this6 = this; + + if (this._isShown) { + $$$1(window).on(Event.RESIZE, function (event) { + return _this6.handleUpdate(event); + }); + } else { + $$$1(window).off(Event.RESIZE); + } + }; + + _proto._hideModal = function _hideModal() { + var _this7 = this; + + this._element.style.display = 'none'; + + this._element.setAttribute('aria-hidden', true); + + this._isTransitioning = false; + + this._showBackdrop(function () { + $$$1(document.body).removeClass(ClassName.OPEN); + + _this7._resetAdjustments(); + + _this7._resetScrollbar(); + + $$$1(_this7._element).trigger(Event.HIDDEN); + }); + }; + + _proto._removeBackdrop = function _removeBackdrop() { + if (this._backdrop) { + $$$1(this._backdrop).remove(); + this._backdrop = null; + } + }; + + _proto._showBackdrop = function _showBackdrop(callback) { + var _this8 = this; + + var animate = $$$1(this._element).hasClass(ClassName.FADE) ? ClassName.FADE : ''; + + if (this._isShown && this._config.backdrop) { + this._backdrop = document.createElement('div'); + this._backdrop.className = ClassName.BACKDROP; + + if (animate) { + this._backdrop.classList.add(animate); + } + + $$$1(this._backdrop).appendTo(document.body); + $$$1(this._element).on(Event.CLICK_DISMISS, function (event) { + if (_this8._ignoreBackdropClick) { + _this8._ignoreBackdropClick = false; + return; + } + + if (event.target !== event.currentTarget) { + return; + } + + if (_this8._config.backdrop === 'static') { + _this8._element.focus(); + } else { + _this8.hide(); + } + }); + + if (animate) { + Util.reflow(this._backdrop); + } + + $$$1(this._backdrop).addClass(ClassName.SHOW); + + if (!callback) { + return; + } + + if (!animate) { + callback(); + return; + } + + var backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop); + $$$1(this._backdrop).one(Util.TRANSITION_END, callback).emulateTransitionEnd(backdropTransitionDuration); + } else if (!this._isShown && this._backdrop) { + $$$1(this._backdrop).removeClass(ClassName.SHOW); + + var callbackRemove = function callbackRemove() { + _this8._removeBackdrop(); + + if (callback) { + callback(); + } + }; + + if ($$$1(this._element).hasClass(ClassName.FADE)) { + var _backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop); + + $$$1(this._backdrop).one(Util.TRANSITION_END, callbackRemove).emulateTransitionEnd(_backdropTransitionDuration); + } else { + callbackRemove(); + } + } else if (callback) { + callback(); + } + }; // ---------------------------------------------------------------------- + // the following methods are used to handle overflowing modals + // todo (fat): these should probably be refactored out of modal.js + // ---------------------------------------------------------------------- + + + _proto._adjustDialog = function _adjustDialog() { + var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; + + if (!this._isBodyOverflowing && isModalOverflowing) { + this._element.style.paddingLeft = this._scrollbarWidth + "px"; + } + + if (this._isBodyOverflowing && !isModalOverflowing) { + this._element.style.paddingRight = this._scrollbarWidth + "px"; + } + }; + + _proto._resetAdjustments = function _resetAdjustments() { + this._element.style.paddingLeft = ''; + this._element.style.paddingRight = ''; + }; + + _proto._checkScrollbar = function _checkScrollbar() { + var rect = document.body.getBoundingClientRect(); + this._isBodyOverflowing = rect.left + rect.right < window.innerWidth; + this._scrollbarWidth = this._getScrollbarWidth(); + }; + + _proto._setScrollbar = function _setScrollbar() { + var _this9 = this; + + if (this._isBodyOverflowing) { + // Note: DOMNode.style.paddingRight returns the actual value or '' if not set + // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set + var fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT)); + var stickyContent = [].slice.call(document.querySelectorAll(Selector.STICKY_CONTENT)); // Adjust fixed content padding + + $$$1(fixedContent).each(function (index, element) { + var actualPadding = element.style.paddingRight; + var calculatedPadding = $$$1(element).css('padding-right'); + $$$1(element).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + _this9._scrollbarWidth + "px"); + }); // Adjust sticky content margin + + $$$1(stickyContent).each(function (index, element) { + var actualMargin = element.style.marginRight; + var calculatedMargin = $$$1(element).css('margin-right'); + $$$1(element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) - _this9._scrollbarWidth + "px"); + }); // Adjust body padding + + var actualPadding = document.body.style.paddingRight; + var calculatedPadding = $$$1(document.body).css('padding-right'); + $$$1(document.body).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + this._scrollbarWidth + "px"); + } + }; + + _proto._resetScrollbar = function _resetScrollbar() { + // Restore fixed content padding + var fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT)); + $$$1(fixedContent).each(function (index, element) { + var padding = $$$1(element).data('padding-right'); + $$$1(element).removeData('padding-right'); + element.style.paddingRight = padding ? padding : ''; + }); // Restore sticky content + + var elements = [].slice.call(document.querySelectorAll("" + Selector.STICKY_CONTENT)); + $$$1(elements).each(function (index, element) { + var margin = $$$1(element).data('margin-right'); + + if (typeof margin !== 'undefined') { + $$$1(element).css('margin-right', margin).removeData('margin-right'); + } + }); // Restore body padding + + var padding = $$$1(document.body).data('padding-right'); + $$$1(document.body).removeData('padding-right'); + document.body.style.paddingRight = padding ? padding : ''; + }; + + _proto._getScrollbarWidth = function _getScrollbarWidth() { + // thx d.walsh + var scrollDiv = document.createElement('div'); + scrollDiv.className = ClassName.SCROLLBAR_MEASURER; + document.body.appendChild(scrollDiv); + var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth; + document.body.removeChild(scrollDiv); + return scrollbarWidth; + }; // Static + + + Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) { + return this.each(function () { + var data = $$$1(this).data(DATA_KEY); + + var _config = _objectSpread({}, Default, $$$1(this).data(), typeof config === 'object' && config ? config : {}); + + if (!data) { + data = new Modal(this, _config); + $$$1(this).data(DATA_KEY, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](relatedTarget); + } else if (_config.show) { + data.show(relatedTarget); + } + }); + }; + + _createClass(Modal, null, [{ + key: "VERSION", + get: function get() { + return VERSION; + } + }, { + key: "Default", + get: function get() { + return Default; + } + }]); + + return Modal; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $$$1(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) { + var _this10 = this; + + var target; + var selector = Util.getSelectorFromElement(this); + + if (selector) { + target = document.querySelector(selector); + } + + var config = $$$1(target).data(DATA_KEY) ? 'toggle' : _objectSpread({}, $$$1(target).data(), $$$1(this).data()); + + if (this.tagName === 'A' || this.tagName === 'AREA') { + event.preventDefault(); + } + + var $target = $$$1(target).one(Event.SHOW, function (showEvent) { + if (showEvent.isDefaultPrevented()) { + // Only register focus restorer if modal will actually get shown + return; + } + + $target.one(Event.HIDDEN, function () { + if ($$$1(_this10).is(':visible')) { + _this10.focus(); + } + }); + }); + + Modal._jQueryInterface.call($$$1(target), config, this); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $$$1.fn[NAME] = Modal._jQueryInterface; + $$$1.fn[NAME].Constructor = Modal; + + $$$1.fn[NAME].noConflict = function () { + $$$1.fn[NAME] = JQUERY_NO_CONFLICT; + return Modal._jQueryInterface; + }; + + return Modal; + }($); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.1.3): tooltip.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + + var Tooltip = function ($$$1) { + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + var NAME = 'tooltip'; + var VERSION = '4.1.3'; + var DATA_KEY = 'bs.tooltip'; + var EVENT_KEY = "." + DATA_KEY; + var JQUERY_NO_CONFLICT = $$$1.fn[NAME]; + var CLASS_PREFIX = 'bs-tooltip'; + var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g'); + var DefaultType = { + animation: 'boolean', + template: 'string', + title: '(string|element|function)', + trigger: 'string', + delay: '(number|object)', + html: 'boolean', + selector: '(string|boolean)', + placement: '(string|function)', + offset: '(number|string)', + container: '(string|element|boolean)', + fallbackPlacement: '(string|array)', + boundary: '(string|element)' + }; + var AttachmentMap = { + AUTO: 'auto', + TOP: 'top', + RIGHT: 'right', + BOTTOM: 'bottom', + LEFT: 'left' + }; + var Default = { + animation: true, + template: '', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + selector: false, + placement: 'top', + offset: 0, + container: false, + fallbackPlacement: 'flip', + boundary: 'scrollParent' + }; + var HoverState = { + SHOW: 'show', + OUT: 'out' + }; + var Event = { + HIDE: "hide" + EVENT_KEY, + HIDDEN: "hidden" + EVENT_KEY, + SHOW: "show" + EVENT_KEY, + SHOWN: "shown" + EVENT_KEY, + INSERTED: "inserted" + EVENT_KEY, + CLICK: "click" + EVENT_KEY, + FOCUSIN: "focusin" + EVENT_KEY, + FOCUSOUT: "focusout" + EVENT_KEY, + MOUSEENTER: "mouseenter" + EVENT_KEY, + MOUSELEAVE: "mouseleave" + EVENT_KEY + }; + var ClassName = { + FADE: 'fade', + SHOW: 'show' + }; + var Selector = { + TOOLTIP: '.tooltip', + TOOLTIP_INNER: '.tooltip-inner', + ARROW: '.arrow' + }; + var Trigger = { + HOVER: 'hover', + FOCUS: 'focus', + CLICK: 'click', + MANUAL: 'manual' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Tooltip = + /*#__PURE__*/ + function () { + function Tooltip(element, config) { + /** + * Check for Popper dependency + * Popper - https://popper.js.org + */ + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap tooltips require Popper.js (https://popper.js.org)'); + } // private + + + this._isEnabled = true; + this._timeout = 0; + this._hoverState = ''; + this._activeTrigger = {}; + this._popper = null; // Protected + + this.element = element; + this.config = this._getConfig(config); + this.tip = null; + + this._setListeners(); + } // Getters + + + var _proto = Tooltip.prototype; + + // Public + _proto.enable = function enable() { + this._isEnabled = true; + }; + + _proto.disable = function disable() { + this._isEnabled = false; + }; + + _proto.toggleEnabled = function toggleEnabled() { + this._isEnabled = !this._isEnabled; + }; + + _proto.toggle = function toggle(event) { + if (!this._isEnabled) { + return; + } + + if (event) { + var dataKey = this.constructor.DATA_KEY; + var context = $$$1(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $$$1(event.currentTarget).data(dataKey, context); + } + + context._activeTrigger.click = !context._activeTrigger.click; + + if (context._isWithActiveTrigger()) { + context._enter(null, context); + } else { + context._leave(null, context); + } + } else { + if ($$$1(this.getTipElement()).hasClass(ClassName.SHOW)) { + this._leave(null, this); + + return; + } + + this._enter(null, this); + } + }; + + _proto.dispose = function dispose() { + clearTimeout(this._timeout); + $$$1.removeData(this.element, this.constructor.DATA_KEY); + $$$1(this.element).off(this.constructor.EVENT_KEY); + $$$1(this.element).closest('.modal').off('hide.bs.modal'); + + if (this.tip) { + $$$1(this.tip).remove(); + } + + this._isEnabled = null; + this._timeout = null; + this._hoverState = null; + this._activeTrigger = null; + + if (this._popper !== null) { + this._popper.destroy(); + } + + this._popper = null; + this.element = null; + this.config = null; + this.tip = null; + }; + + _proto.show = function show() { + var _this = this; + + if ($$$1(this.element).css('display') === 'none') { + throw new Error('Please use show on visible elements'); + } + + var showEvent = $$$1.Event(this.constructor.Event.SHOW); + + if (this.isWithContent() && this._isEnabled) { + $$$1(this.element).trigger(showEvent); + var isInTheDom = $$$1.contains(this.element.ownerDocument.documentElement, this.element); + + if (showEvent.isDefaultPrevented() || !isInTheDom) { + return; + } + + var tip = this.getTipElement(); + var tipId = Util.getUID(this.constructor.NAME); + tip.setAttribute('id', tipId); + this.element.setAttribute('aria-describedby', tipId); + this.setContent(); + + if (this.config.animation) { + $$$1(tip).addClass(ClassName.FADE); + } + + var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement; + + var attachment = this._getAttachment(placement); + + this.addAttachmentClass(attachment); + var container = this.config.container === false ? document.body : $$$1(document).find(this.config.container); + $$$1(tip).data(this.constructor.DATA_KEY, this); + + if (!$$$1.contains(this.element.ownerDocument.documentElement, this.tip)) { + $$$1(tip).appendTo(container); + } + + $$$1(this.element).trigger(this.constructor.Event.INSERTED); + this._popper = new Popper(this.element, tip, { + placement: attachment, + modifiers: { + offset: { + offset: this.config.offset + }, + flip: { + behavior: this.config.fallbackPlacement + }, + arrow: { + element: Selector.ARROW + }, + preventOverflow: { + boundariesElement: this.config.boundary + } + }, + onCreate: function onCreate(data) { + if (data.originalPlacement !== data.placement) { + _this._handlePopperPlacementChange(data); + } + }, + onUpdate: function onUpdate(data) { + _this._handlePopperPlacementChange(data); + } + }); + $$$1(tip).addClass(ClassName.SHOW); // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + if ('ontouchstart' in document.documentElement) { + $$$1(document.body).children().on('mouseover', null, $$$1.noop); + } + + var complete = function complete() { + if (_this.config.animation) { + _this._fixTransition(); + } + + var prevHoverState = _this._hoverState; + _this._hoverState = null; + $$$1(_this.element).trigger(_this.constructor.Event.SHOWN); + + if (prevHoverState === HoverState.OUT) { + _this._leave(null, _this); + } + }; + + if ($$$1(this.tip).hasClass(ClassName.FADE)) { + var transitionDuration = Util.getTransitionDurationFromElement(this.tip); + $$$1(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + } + }; + + _proto.hide = function hide(callback) { + var _this2 = this; + + var tip = this.getTipElement(); + var hideEvent = $$$1.Event(this.constructor.Event.HIDE); + + var complete = function complete() { + if (_this2._hoverState !== HoverState.SHOW && tip.parentNode) { + tip.parentNode.removeChild(tip); + } + + _this2._cleanTipClass(); + + _this2.element.removeAttribute('aria-describedby'); + + $$$1(_this2.element).trigger(_this2.constructor.Event.HIDDEN); + + if (_this2._popper !== null) { + _this2._popper.destroy(); + } + + if (callback) { + callback(); + } + }; + + $$$1(this.element).trigger(hideEvent); + + if (hideEvent.isDefaultPrevented()) { + return; + } + + $$$1(tip).removeClass(ClassName.SHOW); // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + if ('ontouchstart' in document.documentElement) { + $$$1(document.body).children().off('mouseover', null, $$$1.noop); + } + + this._activeTrigger[Trigger.CLICK] = false; + this._activeTrigger[Trigger.FOCUS] = false; + this._activeTrigger[Trigger.HOVER] = false; + + if ($$$1(this.tip).hasClass(ClassName.FADE)) { + var transitionDuration = Util.getTransitionDurationFromElement(tip); + $$$1(tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + + this._hoverState = ''; + }; + + _proto.update = function update() { + if (this._popper !== null) { + this._popper.scheduleUpdate(); + } + }; // Protected + + + _proto.isWithContent = function isWithContent() { + return Boolean(this.getTitle()); + }; + + _proto.addAttachmentClass = function addAttachmentClass(attachment) { + $$$1(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment); + }; + + _proto.getTipElement = function getTipElement() { + this.tip = this.tip || $$$1(this.config.template)[0]; + return this.tip; + }; + + _proto.setContent = function setContent() { + var tip = this.getTipElement(); + this.setElementContent($$$1(tip.querySelectorAll(Selector.TOOLTIP_INNER)), this.getTitle()); + $$$1(tip).removeClass(ClassName.FADE + " " + ClassName.SHOW); + }; + + _proto.setElementContent = function setElementContent($element, content) { + var html = this.config.html; + + if (typeof content === 'object' && (content.nodeType || content.jquery)) { + // Content is a DOM node or a jQuery + if (html) { + if (!$$$1(content).parent().is($element)) { + $element.empty().append(content); + } + } else { + $element.text($$$1(content).text()); + } + } else { + $element[html ? 'html' : 'text'](content); + } + }; + + _proto.getTitle = function getTitle() { + var title = this.element.getAttribute('data-original-title'); + + if (!title) { + title = typeof this.config.title === 'function' ? this.config.title.call(this.element) : this.config.title; + } + + return title; + }; // Private + + + _proto._getAttachment = function _getAttachment(placement) { + return AttachmentMap[placement.toUpperCase()]; + }; + + _proto._setListeners = function _setListeners() { + var _this3 = this; + + var triggers = this.config.trigger.split(' '); + triggers.forEach(function (trigger) { + if (trigger === 'click') { + $$$1(_this3.element).on(_this3.constructor.Event.CLICK, _this3.config.selector, function (event) { + return _this3.toggle(event); + }); + } else if (trigger !== Trigger.MANUAL) { + var eventIn = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSEENTER : _this3.constructor.Event.FOCUSIN; + var eventOut = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSELEAVE : _this3.constructor.Event.FOCUSOUT; + $$$1(_this3.element).on(eventIn, _this3.config.selector, function (event) { + return _this3._enter(event); + }).on(eventOut, _this3.config.selector, function (event) { + return _this3._leave(event); + }); + } + + $$$1(_this3.element).closest('.modal').on('hide.bs.modal', function () { + return _this3.hide(); + }); + }); + + if (this.config.selector) { + this.config = _objectSpread({}, this.config, { + trigger: 'manual', + selector: '' + }); + } else { + this._fixTitle(); + } + }; + + _proto._fixTitle = function _fixTitle() { + var titleType = typeof this.element.getAttribute('data-original-title'); + + if (this.element.getAttribute('title') || titleType !== 'string') { + this.element.setAttribute('data-original-title', this.element.getAttribute('title') || ''); + this.element.setAttribute('title', ''); + } + }; + + _proto._enter = function _enter(event, context) { + var dataKey = this.constructor.DATA_KEY; + context = context || $$$1(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $$$1(event.currentTarget).data(dataKey, context); + } + + if (event) { + context._activeTrigger[event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER] = true; + } + + if ($$$1(context.getTipElement()).hasClass(ClassName.SHOW) || context._hoverState === HoverState.SHOW) { + context._hoverState = HoverState.SHOW; + return; + } + + clearTimeout(context._timeout); + context._hoverState = HoverState.SHOW; + + if (!context.config.delay || !context.config.delay.show) { + context.show(); + return; + } + + context._timeout = setTimeout(function () { + if (context._hoverState === HoverState.SHOW) { + context.show(); + } + }, context.config.delay.show); + }; + + _proto._leave = function _leave(event, context) { + var dataKey = this.constructor.DATA_KEY; + context = context || $$$1(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $$$1(event.currentTarget).data(dataKey, context); + } + + if (event) { + context._activeTrigger[event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER] = false; + } + + if (context._isWithActiveTrigger()) { + return; + } + + clearTimeout(context._timeout); + context._hoverState = HoverState.OUT; + + if (!context.config.delay || !context.config.delay.hide) { + context.hide(); + return; + } + + context._timeout = setTimeout(function () { + if (context._hoverState === HoverState.OUT) { + context.hide(); + } + }, context.config.delay.hide); + }; + + _proto._isWithActiveTrigger = function _isWithActiveTrigger() { + for (var trigger in this._activeTrigger) { + if (this._activeTrigger[trigger]) { + return true; + } + } + + return false; + }; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, this.constructor.Default, $$$1(this.element).data(), typeof config === 'object' && config ? config : {}); + + if (typeof config.delay === 'number') { + config.delay = { + show: config.delay, + hide: config.delay + }; + } + + if (typeof config.title === 'number') { + config.title = config.title.toString(); + } + + if (typeof config.content === 'number') { + config.content = config.content.toString(); + } + + Util.typeCheckConfig(NAME, config, this.constructor.DefaultType); + return config; + }; + + _proto._getDelegateConfig = function _getDelegateConfig() { + var config = {}; + + if (this.config) { + for (var key in this.config) { + if (this.constructor.Default[key] !== this.config[key]) { + config[key] = this.config[key]; + } + } + } + + return config; + }; + + _proto._cleanTipClass = function _cleanTipClass() { + var $tip = $$$1(this.getTipElement()); + var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX); + + if (tabClass !== null && tabClass.length) { + $tip.removeClass(tabClass.join('')); + } + }; + + _proto._handlePopperPlacementChange = function _handlePopperPlacementChange(popperData) { + var popperInstance = popperData.instance; + this.tip = popperInstance.popper; + + this._cleanTipClass(); + + this.addAttachmentClass(this._getAttachment(popperData.placement)); + }; + + _proto._fixTransition = function _fixTransition() { + var tip = this.getTipElement(); + var initConfigAnimation = this.config.animation; + + if (tip.getAttribute('x-placement') !== null) { + return; + } + + $$$1(tip).removeClass(ClassName.FADE); + this.config.animation = false; + this.hide(); + this.show(); + this.config.animation = initConfigAnimation; + }; // Static + + + Tooltip._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $$$1(this).data(DATA_KEY); + + var _config = typeof config === 'object' && config; + + if (!data && /dispose|hide/.test(config)) { + return; + } + + if (!data) { + data = new Tooltip(this, _config); + $$$1(this).data(DATA_KEY, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Tooltip, null, [{ + key: "VERSION", + get: function get() { + return VERSION; + } + }, { + key: "Default", + get: function get() { + return Default; + } + }, { + key: "NAME", + get: function get() { + return NAME; + } + }, { + key: "DATA_KEY", + get: function get() { + return DATA_KEY; + } + }, { + key: "Event", + get: function get() { + return Event; + } + }, { + key: "EVENT_KEY", + get: function get() { + return EVENT_KEY; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType; + } + }]); + + return Tooltip; + }(); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + + $$$1.fn[NAME] = Tooltip._jQueryInterface; + $$$1.fn[NAME].Constructor = Tooltip; + + $$$1.fn[NAME].noConflict = function () { + $$$1.fn[NAME] = JQUERY_NO_CONFLICT; + return Tooltip._jQueryInterface; + }; + + return Tooltip; + }($, Popper); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.1.3): popover.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + + var Popover = function ($$$1) { + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + var NAME = 'popover'; + var VERSION = '4.1.3'; + var DATA_KEY = 'bs.popover'; + var EVENT_KEY = "." + DATA_KEY; + var JQUERY_NO_CONFLICT = $$$1.fn[NAME]; + var CLASS_PREFIX = 'bs-popover'; + var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g'); + + var Default = _objectSpread({}, Tooltip.Default, { + placement: 'right', + trigger: 'click', + content: '', + template: '' + }); + + var DefaultType = _objectSpread({}, Tooltip.DefaultType, { + content: '(string|element|function)' + }); + + var ClassName = { + FADE: 'fade', + SHOW: 'show' + }; + var Selector = { + TITLE: '.popover-header', + CONTENT: '.popover-body' + }; + var Event = { + HIDE: "hide" + EVENT_KEY, + HIDDEN: "hidden" + EVENT_KEY, + SHOW: "show" + EVENT_KEY, + SHOWN: "shown" + EVENT_KEY, + INSERTED: "inserted" + EVENT_KEY, + CLICK: "click" + EVENT_KEY, + FOCUSIN: "focusin" + EVENT_KEY, + FOCUSOUT: "focusout" + EVENT_KEY, + MOUSEENTER: "mouseenter" + EVENT_KEY, + MOUSELEAVE: "mouseleave" + EVENT_KEY + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Popover = + /*#__PURE__*/ + function (_Tooltip) { + _inheritsLoose(Popover, _Tooltip); + + function Popover() { + return _Tooltip.apply(this, arguments) || this; + } + + var _proto = Popover.prototype; + + // Overrides + _proto.isWithContent = function isWithContent() { + return this.getTitle() || this._getContent(); + }; + + _proto.addAttachmentClass = function addAttachmentClass(attachment) { + $$$1(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment); + }; + + _proto.getTipElement = function getTipElement() { + this.tip = this.tip || $$$1(this.config.template)[0]; + return this.tip; + }; + + _proto.setContent = function setContent() { + var $tip = $$$1(this.getTipElement()); // We use append for html objects to maintain js events + + this.setElementContent($tip.find(Selector.TITLE), this.getTitle()); + + var content = this._getContent(); + + if (typeof content === 'function') { + content = content.call(this.element); + } + + this.setElementContent($tip.find(Selector.CONTENT), content); + $tip.removeClass(ClassName.FADE + " " + ClassName.SHOW); + }; // Private + + + _proto._getContent = function _getContent() { + return this.element.getAttribute('data-content') || this.config.content; + }; + + _proto._cleanTipClass = function _cleanTipClass() { + var $tip = $$$1(this.getTipElement()); + var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX); + + if (tabClass !== null && tabClass.length > 0) { + $tip.removeClass(tabClass.join('')); + } + }; // Static + + + Popover._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $$$1(this).data(DATA_KEY); + + var _config = typeof config === 'object' ? config : null; + + if (!data && /destroy|hide/.test(config)) { + return; + } + + if (!data) { + data = new Popover(this, _config); + $$$1(this).data(DATA_KEY, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Popover, null, [{ + key: "VERSION", + // Getters + get: function get() { + return VERSION; + } + }, { + key: "Default", + get: function get() { + return Default; + } + }, { + key: "NAME", + get: function get() { + return NAME; + } + }, { + key: "DATA_KEY", + get: function get() { + return DATA_KEY; + } + }, { + key: "Event", + get: function get() { + return Event; + } + }, { + key: "EVENT_KEY", + get: function get() { + return EVENT_KEY; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType; + } + }]); + + return Popover; + }(Tooltip); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + + $$$1.fn[NAME] = Popover._jQueryInterface; + $$$1.fn[NAME].Constructor = Popover; + + $$$1.fn[NAME].noConflict = function () { + $$$1.fn[NAME] = JQUERY_NO_CONFLICT; + return Popover._jQueryInterface; + }; + + return Popover; + }($); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.1.3): scrollspy.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + + var ScrollSpy = function ($$$1) { + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + var NAME = 'scrollspy'; + var VERSION = '4.1.3'; + var DATA_KEY = 'bs.scrollspy'; + var EVENT_KEY = "." + DATA_KEY; + var DATA_API_KEY = '.data-api'; + var JQUERY_NO_CONFLICT = $$$1.fn[NAME]; + var Default = { + offset: 10, + method: 'auto', + target: '' + }; + var DefaultType = { + offset: 'number', + method: 'string', + target: '(string|element)' + }; + var Event = { + ACTIVATE: "activate" + EVENT_KEY, + SCROLL: "scroll" + EVENT_KEY, + LOAD_DATA_API: "load" + EVENT_KEY + DATA_API_KEY + }; + var ClassName = { + DROPDOWN_ITEM: 'dropdown-item', + DROPDOWN_MENU: 'dropdown-menu', + ACTIVE: 'active' + }; + var Selector = { + DATA_SPY: '[data-spy="scroll"]', + ACTIVE: '.active', + NAV_LIST_GROUP: '.nav, .list-group', + NAV_LINKS: '.nav-link', + NAV_ITEMS: '.nav-item', + LIST_ITEMS: '.list-group-item', + DROPDOWN: '.dropdown', + DROPDOWN_ITEMS: '.dropdown-item', + DROPDOWN_TOGGLE: '.dropdown-toggle' + }; + var OffsetMethod = { + OFFSET: 'offset', + POSITION: 'position' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var ScrollSpy = + /*#__PURE__*/ + function () { + function ScrollSpy(element, config) { + var _this = this; + + this._element = element; + this._scrollElement = element.tagName === 'BODY' ? window : element; + this._config = this._getConfig(config); + this._selector = this._config.target + " " + Selector.NAV_LINKS + "," + (this._config.target + " " + Selector.LIST_ITEMS + ",") + (this._config.target + " " + Selector.DROPDOWN_ITEMS); + this._offsets = []; + this._targets = []; + this._activeTarget = null; + this._scrollHeight = 0; + $$$1(this._scrollElement).on(Event.SCROLL, function (event) { + return _this._process(event); + }); + this.refresh(); + + this._process(); + } // Getters + + + var _proto = ScrollSpy.prototype; + + // Public + _proto.refresh = function refresh() { + var _this2 = this; + + var autoMethod = this._scrollElement === this._scrollElement.window ? OffsetMethod.OFFSET : OffsetMethod.POSITION; + var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method; + var offsetBase = offsetMethod === OffsetMethod.POSITION ? this._getScrollTop() : 0; + this._offsets = []; + this._targets = []; + this._scrollHeight = this._getScrollHeight(); + var targets = [].slice.call(document.querySelectorAll(this._selector)); + targets.map(function (element) { + var target; + var targetSelector = Util.getSelectorFromElement(element); + + if (targetSelector) { + target = document.querySelector(targetSelector); + } + + if (target) { + var targetBCR = target.getBoundingClientRect(); + + if (targetBCR.width || targetBCR.height) { + // TODO (fat): remove sketch reliance on jQuery position/offset + return [$$$1(target)[offsetMethod]().top + offsetBase, targetSelector]; + } + } + + return null; + }).filter(function (item) { + return item; + }).sort(function (a, b) { + return a[0] - b[0]; + }).forEach(function (item) { + _this2._offsets.push(item[0]); + + _this2._targets.push(item[1]); + }); + }; + + _proto.dispose = function dispose() { + $$$1.removeData(this._element, DATA_KEY); + $$$1(this._scrollElement).off(EVENT_KEY); + this._element = null; + this._scrollElement = null; + this._config = null; + this._selector = null; + this._offsets = null; + this._targets = null; + this._activeTarget = null; + this._scrollHeight = null; + }; // Private + + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default, typeof config === 'object' && config ? config : {}); + + if (typeof config.target !== 'string') { + var id = $$$1(config.target).attr('id'); + + if (!id) { + id = Util.getUID(NAME); + $$$1(config.target).attr('id', id); + } + + config.target = "#" + id; + } + + Util.typeCheckConfig(NAME, config, DefaultType); + return config; + }; + + _proto._getScrollTop = function _getScrollTop() { + return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop; + }; + + _proto._getScrollHeight = function _getScrollHeight() { + return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight); + }; + + _proto._getOffsetHeight = function _getOffsetHeight() { + return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height; + }; + + _proto._process = function _process() { + var scrollTop = this._getScrollTop() + this._config.offset; + + var scrollHeight = this._getScrollHeight(); + + var maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight(); + + if (this._scrollHeight !== scrollHeight) { + this.refresh(); + } + + if (scrollTop >= maxScroll) { + var target = this._targets[this._targets.length - 1]; + + if (this._activeTarget !== target) { + this._activate(target); + } + + return; + } + + if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) { + this._activeTarget = null; + + this._clear(); + + return; + } + + var offsetLength = this._offsets.length; + + for (var i = offsetLength; i--;) { + var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]); + + if (isActiveTarget) { + this._activate(this._targets[i]); + } + } + }; + + _proto._activate = function _activate(target) { + this._activeTarget = target; + + this._clear(); + + var queries = this._selector.split(','); // eslint-disable-next-line arrow-body-style + + + queries = queries.map(function (selector) { + return selector + "[data-target=\"" + target + "\"]," + (selector + "[href=\"" + target + "\"]"); + }); + var $link = $$$1([].slice.call(document.querySelectorAll(queries.join(',')))); + + if ($link.hasClass(ClassName.DROPDOWN_ITEM)) { + $link.closest(Selector.DROPDOWN).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE); + $link.addClass(ClassName.ACTIVE); + } else { + // Set triggered link as active + $link.addClass(ClassName.ACTIVE); // Set triggered links parents as active + // With both
    ',trigger:"hover focus",title:"",delay:0,html:!(An={AUTO:"auto",TOP:"top",RIGHT:"right",BOTTOM:"bottom",LEFT:"left"}),selector:!(Dn={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(number|string)",container:"(string|element|boolean)",fallbackPlacement:"(string|array)",boundary:"(string|element)"}),placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent"},Nn="out",kn={HIDE:"hide"+wn,HIDDEN:"hidden"+wn,SHOW:(On="show")+wn,SHOWN:"shown"+wn,INSERTED:"inserted"+wn,CLICK:"click"+wn,FOCUSIN:"focusin"+wn,FOCUSOUT:"focusout"+wn,MOUSEENTER:"mouseenter"+wn,MOUSELEAVE:"mouseleave"+wn},xn="fade",Pn="show",Ln=".tooltip-inner",jn=".arrow",Hn="hover",Mn="focus",Fn="click",Wn="manual",Rn=function(){function i(e,t){if("undefined"==typeof Ct)throw new TypeError("Bootstrap tooltips require Popper.js (https://popper.js.org)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=e,this.config=this._getConfig(t),this.tip=null,this._setListeners()}var e=i.prototype;return e.enable=function(){this._isEnabled=!0},e.disable=function(){this._isEnabled=!1},e.toggleEnabled=function(){this._isEnabled=!this._isEnabled},e.toggle=function(e){if(this._isEnabled)if(e){var t=this.constructor.DATA_KEY,n=yn(e.currentTarget).data(t);n||(n=new this.constructor(e.currentTarget,this._getDelegateConfig()),yn(e.currentTarget).data(t,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(yn(this.getTipElement()).hasClass(Pn))return void this._leave(null,this);this._enter(null,this)}},e.dispose=function(){clearTimeout(this._timeout),yn.removeData(this.element,this.constructor.DATA_KEY),yn(this.element).off(this.constructor.EVENT_KEY),yn(this.element).closest(".modal").off("hide.bs.modal"),this.tip&&yn(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,(this._activeTrigger=null)!==this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},e.show=function(){var t=this;if("none"===yn(this.element).css("display"))throw new Error("Please use show on visible elements");var e=yn.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){yn(this.element).trigger(e);var n=yn.contains(this.element.ownerDocument.documentElement,this.element);if(e.isDefaultPrevented()||!n)return;var i=this.getTipElement(),r=we.getUID(this.constructor.NAME);i.setAttribute("id",r),this.element.setAttribute("aria-describedby",r),this.setContent(),this.config.animation&&yn(i).addClass(xn);var o="function"==typeof this.config.placement?this.config.placement.call(this,i,this.element):this.config.placement,s=this._getAttachment(o);this.addAttachmentClass(s);var a=!1===this.config.container?document.body:yn(document).find(this.config.container);yn(i).data(this.constructor.DATA_KEY,this),yn.contains(this.element.ownerDocument.documentElement,this.tip)||yn(i).appendTo(a),yn(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new Ct(this.element,i,{placement:s,modifiers:{offset:{offset:this.config.offset},flip:{behavior:this.config.fallbackPlacement},arrow:{element:jn},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(e){e.originalPlacement!==e.placement&&t._handlePopperPlacementChange(e)},onUpdate:function(e){t._handlePopperPlacementChange(e)}}),yn(i).addClass(Pn),"ontouchstart"in document.documentElement&&yn(document.body).children().on("mouseover",null,yn.noop);var l=function(){t.config.animation&&t._fixTransition();var e=t._hoverState;t._hoverState=null,yn(t.element).trigger(t.constructor.Event.SHOWN),e===Nn&&t._leave(null,t)};if(yn(this.tip).hasClass(xn)){var c=we.getTransitionDurationFromElement(this.tip);yn(this.tip).one(we.TRANSITION_END,l).emulateTransitionEnd(c)}else l()}},e.hide=function(e){var t=this,n=this.getTipElement(),i=yn.Event(this.constructor.Event.HIDE),r=function(){t._hoverState!==On&&n.parentNode&&n.parentNode.removeChild(n),t._cleanTipClass(),t.element.removeAttribute("aria-describedby"),yn(t.element).trigger(t.constructor.Event.HIDDEN),null!==t._popper&&t._popper.destroy(),e&&e()};if(yn(this.element).trigger(i),!i.isDefaultPrevented()){if(yn(n).removeClass(Pn),"ontouchstart"in document.documentElement&&yn(document.body).children().off("mouseover",null,yn.noop),this._activeTrigger[Fn]=!1,this._activeTrigger[Mn]=!1,this._activeTrigger[Hn]=!1,yn(this.tip).hasClass(xn)){var o=we.getTransitionDurationFromElement(n);yn(n).one(we.TRANSITION_END,r).emulateTransitionEnd(o)}else r();this._hoverState=""}},e.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},e.isWithContent=function(){return Boolean(this.getTitle())},e.addAttachmentClass=function(e){yn(this.getTipElement()).addClass(Tn+"-"+e)},e.getTipElement=function(){return this.tip=this.tip||yn(this.config.template)[0],this.tip},e.setContent=function(){var e=this.getTipElement();this.setElementContent(yn(e.querySelectorAll(Ln)),this.getTitle()),yn(e).removeClass(xn+" "+Pn)},e.setElementContent=function(e,t){var n=this.config.html;"object"==typeof t&&(t.nodeType||t.jquery)?n?yn(t).parent().is(e)||e.empty().append(t):e.text(yn(t).text()):e[n?"html":"text"](t)},e.getTitle=function(){var e=this.element.getAttribute("data-original-title");return e||(e="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),e},e._getAttachment=function(e){return An[e.toUpperCase()]},e._setListeners=function(){var i=this;this.config.trigger.split(" ").forEach(function(e){if("click"===e)yn(i.element).on(i.constructor.Event.CLICK,i.config.selector,function(e){return i.toggle(e)});else if(e!==Wn){var t=e===Hn?i.constructor.Event.MOUSEENTER:i.constructor.Event.FOCUSIN,n=e===Hn?i.constructor.Event.MOUSELEAVE:i.constructor.Event.FOCUSOUT;yn(i.element).on(t,i.config.selector,function(e){return i._enter(e)}).on(n,i.config.selector,function(e){return i._leave(e)})}yn(i.element).closest(".modal").on("hide.bs.modal",function(){return i.hide()})}),this.config.selector?this.config=l({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},e._fixTitle=function(){var e=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==e)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},e._enter=function(e,t){var n=this.constructor.DATA_KEY;(t=t||yn(e.currentTarget).data(n))||(t=new this.constructor(e.currentTarget,this._getDelegateConfig()),yn(e.currentTarget).data(n,t)),e&&(t._activeTrigger["focusin"===e.type?Mn:Hn]=!0),yn(t.getTipElement()).hasClass(Pn)||t._hoverState===On?t._hoverState=On:(clearTimeout(t._timeout),t._hoverState=On,t.config.delay&&t.config.delay.show?t._timeout=setTimeout(function(){t._hoverState===On&&t.show()},t.config.delay.show):t.show())},e._leave=function(e,t){var n=this.constructor.DATA_KEY;(t=t||yn(e.currentTarget).data(n))||(t=new this.constructor(e.currentTarget,this._getDelegateConfig()),yn(e.currentTarget).data(n,t)),e&&(t._activeTrigger["focusout"===e.type?Mn:Hn]=!1),t._isWithActiveTrigger()||(clearTimeout(t._timeout),t._hoverState=Nn,t.config.delay&&t.config.delay.hide?t._timeout=setTimeout(function(){t._hoverState===Nn&&t.hide()},t.config.delay.hide):t.hide())},e._isWithActiveTrigger=function(){for(var e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1},e._getConfig=function(e){return"number"==typeof(e=l({},this.constructor.Default,yn(this.element).data(),"object"==typeof e&&e?e:{})).delay&&(e.delay={show:e.delay,hide:e.delay}),"number"==typeof e.title&&(e.title=e.title.toString()),"number"==typeof e.content&&(e.content=e.content.toString()),we.typeCheckConfig(En,e,this.constructor.DefaultType),e},e._getDelegateConfig=function(){var e={};if(this.config)for(var t in this.config)this.constructor.Default[t]!==this.config[t]&&(e[t]=this.config[t]);return e},e._cleanTipClass=function(){var e=yn(this.getTipElement()),t=e.attr("class").match(Sn);null!==t&&t.length&&e.removeClass(t.join(""))},e._handlePopperPlacementChange=function(e){var t=e.instance;this.tip=t.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(e.placement))},e._fixTransition=function(){var e=this.getTipElement(),t=this.config.animation;null===e.getAttribute("x-placement")&&(yn(e).removeClass(xn),this.config.animation=!1,this.hide(),this.show(),this.config.animation=t)},i._jQueryInterface=function(n){return this.each(function(){var e=yn(this).data(bn),t="object"==typeof n&&n;if((e||!/dispose|hide/.test(n))&&(e||(e=new i(this,t),yn(this).data(bn,e)),"string"==typeof n)){if("undefined"==typeof e[n])throw new TypeError('No method named "'+n+'"');e[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.1.3"}},{key:"Default",get:function(){return In}},{key:"NAME",get:function(){return En}},{key:"DATA_KEY",get:function(){return bn}},{key:"Event",get:function(){return kn}},{key:"EVENT_KEY",get:function(){return wn}},{key:"DefaultType",get:function(){return Dn}}]),i}(),yn.fn[En]=Rn._jQueryInterface,yn.fn[En].Constructor=Rn,yn.fn[En].noConflict=function(){return yn.fn[En]=Cn,Rn._jQueryInterface},Rn),Qi=(Bn="popover",Kn="."+(qn="bs.popover"),Qn=(Un=t).fn[Bn],Yn="bs-popover",Vn=new RegExp("(^|\\s)"+Yn+"\\S+","g"),zn=l({},Ki.Default,{placement:"right",trigger:"click",content:"",template:''}),Gn=l({},Ki.DefaultType,{content:"(string|element|function)"}),Jn="fade",Xn=".popover-header",$n=".popover-body",ei={HIDE:"hide"+Kn,HIDDEN:"hidden"+Kn,SHOW:(Zn="show")+Kn,SHOWN:"shown"+Kn,INSERTED:"inserted"+Kn,CLICK:"click"+Kn,FOCUSIN:"focusin"+Kn,FOCUSOUT:"focusout"+Kn,MOUSEENTER:"mouseenter"+Kn,MOUSELEAVE:"mouseleave"+Kn},ti=function(e){var t,n;function i(){return e.apply(this,arguments)||this}n=e,(t=i).prototype=Object.create(n.prototype),(t.prototype.constructor=t).__proto__=n;var r=i.prototype;return r.isWithContent=function(){return this.getTitle()||this._getContent()},r.addAttachmentClass=function(e){Un(this.getTipElement()).addClass(Yn+"-"+e)},r.getTipElement=function(){return this.tip=this.tip||Un(this.config.template)[0],this.tip},r.setContent=function(){var e=Un(this.getTipElement());this.setElementContent(e.find(Xn),this.getTitle());var t=this._getContent();"function"==typeof t&&(t=t.call(this.element)),this.setElementContent(e.find($n),t),e.removeClass(Jn+" "+Zn)},r._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},r._cleanTipClass=function(){var e=Un(this.getTipElement()),t=e.attr("class").match(Vn);null!==t&&0=this._offsets[r]&&("undefined"==typeof this._offsets[r+1]||e= 0) {\n timeoutDuration = 1;\n break;\n }\n}\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var css = getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? html['offset' + axis] + computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')] + computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')] : 0);\n}\n\nfunction getWindowSizes() {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes() : {};\n var width = sizes.width || element.clientWidth || result.right - result.left;\n var height = sizes.height || element.clientHeight || result.bottom - result.top;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth, 10);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && parent.nodeName === 'HTML') {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop, 10);\n var marginLeft = parseFloat(styles.marginLeft, 10);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n return isFixed(getParentNode(element));\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n boundaries.left += padding;\n boundaries.top += padding;\n boundaries.right -= padding;\n boundaries.bottom -= padding;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var styles = getComputedStyle(element);\n var x = parseFloat(styles.marginTop) + parseFloat(styles.marginBottom);\n var y = parseFloat(styles.marginLeft) + parseFloat(styles.marginRight);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.
    \n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nfunction update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n var data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {}\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);\n\n data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nfunction isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(function (_ref) {\n var name = _ref.name,\n enabled = _ref.enabled;\n return enabled && name === modifierName;\n });\n}\n\n/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nfunction getSupportedPropertyName(property) {\n var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n var upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (var i = 0; i < prefixes.length; i++) {\n var prefix = prefixes[i];\n var toCheck = prefix ? '' + prefix + upperProp : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n\n/**\n * Destroy the popper\n * @method\n * @memberof Popper\n */\nfunction destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicity asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n\n/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nfunction getWindow(element) {\n var ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n var isBody = scrollParent.nodeName === 'BODY';\n var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction setupEventListeners(reference, options, state, updateBound) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n var scrollElement = getScrollParent(reference);\n attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nfunction enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);\n }\n}\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(function (target) {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger onUpdate callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nfunction disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n\n/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setStyles(element, styles) {\n Object.keys(styles).forEach(function (prop) {\n var unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n\n/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function (prop) {\n var value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nfunction applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nfunction applyStyleOnLoad(reference, popper, options, modifierOptions, state) {\n // compute reference element offsets\n var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeStyle(data, options) {\n var x = options.x,\n y = options.y;\n var popper = data.offsets.popper;\n\n // Remove this legacy support in Popper.js v2\n\n var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'applyStyle';\n }).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');\n }\n var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;\n\n var offsetParent = getOffsetParent(data.instance.popper);\n var offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n var styles = {\n position: popper.position\n };\n\n // Avoid blurry text by using full pixel integers.\n // For pixel-perfect positioning, top/bottom prefers rounded\n // values, while left/right prefers floored values.\n var offsets = {\n left: Math.floor(popper.left),\n top: Math.round(popper.top),\n bottom: Math.round(popper.bottom),\n right: Math.floor(popper.right)\n };\n\n var sideA = x === 'bottom' ? 'top' : 'bottom';\n var sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n var prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n var left = void 0,\n top = void 0;\n if (sideA === 'bottom') {\n top = -offsetParentRect.height + offsets.bottom;\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n left = -offsetParentRect.width + offsets.right;\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n var invertTop = sideA === 'bottom' ? -1 : 1;\n var invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = sideA + ', ' + sideB;\n }\n\n // Attributes\n var attributes = {\n 'x-placement': data.placement\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = _extends({}, attributes, data.attributes);\n data.styles = _extends({}, styles, data.styles);\n data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);\n\n return data;\n}\n\n/**\n * Helper used to know if the given modifier depends from another one.
    \n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nfunction isModifierRequired(modifiers, requestingName, requestedName) {\n var requesting = find(modifiers, function (_ref) {\n var name = _ref.name;\n return name === requestingName;\n });\n\n var isRequired = !!requesting && modifiers.some(function (modifier) {\n return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;\n });\n\n if (!isRequired) {\n var _requesting = '`' + requestingName + '`';\n var requested = '`' + requestedName + '`';\n console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');\n }\n return isRequired;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction arrow(data, options) {\n var _data$offsets$arrow;\n\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n var arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn('WARNING: `arrow.element` must be child of its popper element!');\n return data;\n }\n }\n\n var placement = data.placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n var len = isVertical ? 'height' : 'width';\n var sideCapitalized = isVertical ? 'Top' : 'Left';\n var side = sideCapitalized.toLowerCase();\n var altSide = isVertical ? 'left' : 'top';\n var opSide = isVertical ? 'bottom' : 'right';\n var arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjuction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n var css = getStyleComputedProperty(data.instance.popper);\n var popperMarginSide = parseFloat(css['margin' + sideCapitalized], 10);\n var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width'], 10);\n var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);\n\n return data;\n}\n\n/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n\n/**\n * List of accepted placements to use as values of the `placement` option.
    \n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.
    \n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-right` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nvar placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];\n\n// Get rid of `auto` `auto-start` and `auto-end`\nvar validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nfunction clockwise(placement) {\n var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var index = validPlacements.indexOf(placement);\n var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n\nvar BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise'\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);\n\n var placement = data.placement.split('-')[0];\n var placementOpposite = getOppositePlacement(placement);\n var variation = data.placement.split('-')[1] || '';\n\n var flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach(function (step, index) {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n var popperOffsets = data.offsets.popper;\n var refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n var floor = Math.floor;\n var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);\n\n var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;\n\n // flip the variation if required\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var flippedVariation = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction keepTogether(data) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var placement = data.placement.split('-')[0];\n var floor = Math.floor;\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var side = isVertical ? 'right' : 'bottom';\n var opSide = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nfunction toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n var split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n var value = +split[1];\n var unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n var element = void 0;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n var rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n var size = void 0;\n if (unit === 'vh') {\n size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n } else {\n size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nfunction parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {\n var offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n var fragments = offset.split(/(\\+|\\-)/).map(function (frag) {\n return frag.trim();\n });\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n var divider = fragments.indexOf(find(fragments, function (frag) {\n return frag.search(/,|\\s/) !== -1;\n }));\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n var splitRegex = /\\s*,\\s*|\\s+/;\n var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map(function (op, index) {\n // Most of the units rely on the orientation of the popper\n var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';\n var mergeWithPrevious = false;\n return op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce(function (a, b) {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(function (str) {\n return toValue(str, measurement, popperOffsets, referenceOffsets);\n });\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach(function (op, index) {\n op.forEach(function (frag, index2) {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nfunction offset(data, _ref) {\n var offset = _ref.offset;\n var placement = data.placement,\n _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var basePlacement = placement.split('-')[0];\n\n var offsets = void 0;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction preventOverflow(data, options) {\n var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n var transformProp = getSupportedPropertyName('transform');\n var popperStyles = data.instance.popper.style; // assignment to help minification\n var top = popperStyles.top,\n left = popperStyles.left,\n transform = popperStyles[transformProp];\n\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n var order = options.priority;\n var popper = data.offsets.popper;\n\n var check = {\n primary: function primary(placement) {\n var value = popper[placement];\n if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return defineProperty({}, placement, value);\n },\n secondary: function secondary(placement) {\n var mainSide = placement === 'right' ? 'left' : 'top';\n var value = popper[mainSide];\n if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {\n value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));\n }\n return defineProperty({}, mainSide, value);\n }\n };\n\n order.forEach(function (placement) {\n var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = _extends({}, popper, check[side](placement));\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction shift(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n var _data$offsets = data.offsets,\n reference = _data$offsets.reference,\n popper = _data$offsets.popper;\n\n var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n var side = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n var shiftOffsets = {\n start: defineProperty({}, side, reference[side]),\n end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])\n };\n\n data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n var refRect = data.offsets.reference;\n var bound = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'preventOverflow';\n }).boundaries;\n\n if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction inner(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.
    \n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.
    \n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nvar modifiers = {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.
    \n * It will read the variation of the `placement` property.
    \n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unitless, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.
    \n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the height.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.
    \n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.
    \n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > More on this [reading this issue](https://github.com/FezVrasta/popper.js/issues/373)\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * An scenario exists where the reference itself is not within the boundaries.
    \n * We can say it has \"escaped the boundaries\" — or just \"escaped\".
    \n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper this makes sure the popper has always a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier, can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent'\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near eachothers\n * without leaving any gap between the two. Expecially useful when the arrow is\n * enabled and you want to assure it to point to its reference element.\n * It cares only about the first axis, you can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjuction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]'\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations).\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position,\n * the popper will never be placed outside of the defined boundaries\n * (except if keepTogether is enabled)\n */\n boundariesElement: 'viewport'\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3d transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties.\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right'\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define you own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3d transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties.\n */\n gpuAcceleration: undefined\n }\n};\n\n/**\n * The `dataObject` is an object containing all the informations used by Popper.js\n * this object get passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper.\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper, it expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow, it expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements.\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n\n/**\n * Default options provided to Popper.js constructor.
    \n * These can be overriden using the `options` argument of Popper.js.
    \n * To override an option, simply pass as 3rd argument an object with the same\n * structure of this object, example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nvar Defaults = {\n /**\n * Popper's placement\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.
    \n * By default, is set to no-op.
    \n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: function onCreate() {},\n\n /**\n * Callback called when the popper is updated, this callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.
    \n * By default, is set to no-op.
    \n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: function onUpdate() {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js\n * @prop {modifiers}\n */\n modifiers: modifiers\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n\n// Utils\n// Methods\nvar Popper = function () {\n /**\n * Create a new Popper.js instance\n * @class Popper\n * @param {HTMLElement|referenceObject} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper.\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n function Popper(reference, popper) {\n var _this = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n classCallCheck(this, Popper);\n\n this.scheduleUpdate = function () {\n return requestAnimationFrame(_this.update);\n };\n\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = _extends({}, Popper.Defaults, options);\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: []\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {\n _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers).map(function (name) {\n return _extends({\n name: name\n }, _this.options.modifiers[name]);\n })\n // sort the modifiers by order\n .sort(function (a, b) {\n return a.order - b.order;\n });\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(function (modifierOptions) {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n var eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n\n\n createClass(Popper, [{\n key: 'update',\n value: function update$$1() {\n return update.call(this);\n }\n }, {\n key: 'destroy',\n value: function destroy$$1() {\n return destroy.call(this);\n }\n }, {\n key: 'enableEventListeners',\n value: function enableEventListeners$$1() {\n return enableEventListeners.call(this);\n }\n }, {\n key: 'disableEventListeners',\n value: function disableEventListeners$$1() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedule an update, it will run on the next UI update available\n * @method scheduleUpdate\n * @memberof Popper\n */\n\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n\n }]);\n return Popper;\n}();\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.
    \n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","import $ from 'jquery'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): util.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Util = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Private TransitionEnd Helpers\n * ------------------------------------------------------------------------\n */\n\n const TRANSITION_END = 'transitionend'\n const MAX_UID = 1000000\n const MILLISECONDS_MULTIPLIER = 1000\n\n // Shoutout AngusCroll (https://goo.gl/pxwQGp)\n function toType(obj) {\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n }\n\n function getSpecialTransitionEndEvent() {\n return {\n bindType: TRANSITION_END,\n delegateType: TRANSITION_END,\n handle(event) {\n if ($(event.target).is(this)) {\n return event.handleObj.handler.apply(this, arguments) // eslint-disable-line prefer-rest-params\n }\n return undefined // eslint-disable-line no-undefined\n }\n }\n }\n\n function transitionEndEmulator(duration) {\n let called = false\n\n $(this).one(Util.TRANSITION_END, () => {\n called = true\n })\n\n setTimeout(() => {\n if (!called) {\n Util.triggerTransitionEnd(this)\n }\n }, duration)\n\n return this\n }\n\n function setTransitionEndSupport() {\n $.fn.emulateTransitionEnd = transitionEndEmulator\n $.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent()\n }\n\n /**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\n const Util = {\n\n TRANSITION_END: 'bsTransitionEnd',\n\n getUID(prefix) {\n do {\n // eslint-disable-next-line no-bitwise\n prefix += ~~(Math.random() * MAX_UID) // \"~~\" acts like a faster Math.floor() here\n } while (document.getElementById(prefix))\n return prefix\n },\n\n getSelectorFromElement(element) {\n let selector = element.getAttribute('data-target')\n if (!selector || selector === '#') {\n selector = element.getAttribute('href') || ''\n }\n\n try {\n return document.querySelector(selector) ? selector : null\n } catch (err) {\n return null\n }\n },\n\n getTransitionDurationFromElement(element) {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let transitionDuration = $(element).css('transition-duration')\n const floatTransitionDuration = parseFloat(transitionDuration)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n\n return parseFloat(transitionDuration) * MILLISECONDS_MULTIPLIER\n },\n\n reflow(element) {\n return element.offsetHeight\n },\n\n triggerTransitionEnd(element) {\n $(element).trigger(TRANSITION_END)\n },\n\n // TODO: Remove in v5\n supportsTransitionEnd() {\n return Boolean(TRANSITION_END)\n },\n\n isElement(obj) {\n return (obj[0] || obj).nodeType\n },\n\n typeCheckConfig(componentName, config, configTypes) {\n for (const property in configTypes) {\n if (Object.prototype.hasOwnProperty.call(configTypes, property)) {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && Util.isElement(value)\n ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new Error(\n `${componentName.toUpperCase()}: ` +\n `Option \"${property}\" provided type \"${valueType}\" ` +\n `but expected type \"${expectedTypes}\".`)\n }\n }\n }\n }\n }\n\n setTransitionEndSupport()\n\n return Util\n})($)\n\nexport default Util\n","import $ from 'jquery'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Alert = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'alert'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.alert'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n const Selector = {\n DISMISS : '[data-dismiss=\"alert\"]'\n }\n\n const Event = {\n CLOSE : `close${EVENT_KEY}`,\n CLOSED : `closed${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n ALERT : 'alert',\n FADE : 'fade',\n SHOW : 'show'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Alert {\n constructor(element) {\n this._element = element\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n // Public\n\n close(element) {\n let rootElement = this._element\n if (element) {\n rootElement = this._getRootElement(element)\n }\n\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent.isDefaultPrevented()) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n this._element = null\n }\n\n // Private\n\n _getRootElement(element) {\n const selector = Util.getSelectorFromElement(element)\n let parent = false\n\n if (selector) {\n parent = document.querySelector(selector)\n }\n\n if (!parent) {\n parent = $(element).closest(`.${ClassName.ALERT}`)[0]\n }\n\n return parent\n }\n\n _triggerCloseEvent(element) {\n const closeEvent = $.Event(Event.CLOSE)\n\n $(element).trigger(closeEvent)\n return closeEvent\n }\n\n _removeElement(element) {\n $(element).removeClass(ClassName.SHOW)\n\n if (!$(element).hasClass(ClassName.FADE)) {\n this._destroyElement(element)\n return\n }\n\n const transitionDuration = Util.getTransitionDurationFromElement(element)\n\n $(element)\n .one(Util.TRANSITION_END, (event) => this._destroyElement(element, event))\n .emulateTransitionEnd(transitionDuration)\n }\n\n _destroyElement(element) {\n $(element)\n .detach()\n .trigger(Event.CLOSED)\n .remove()\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n const $element = $(this)\n let data = $element.data(DATA_KEY)\n\n if (!data) {\n data = new Alert(this)\n $element.data(DATA_KEY, data)\n }\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static _handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document).on(\n Event.CLICK_DATA_API,\n Selector.DISMISS,\n Alert._handleDismiss(new Alert())\n )\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Alert._jQueryInterface\n $.fn[NAME].Constructor = Alert\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Alert._jQueryInterface\n }\n\n return Alert\n})($)\n\nexport default Alert\n","import $ from 'jquery'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Button = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'button'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.button'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n const ClassName = {\n ACTIVE : 'active',\n BUTTON : 'btn',\n FOCUS : 'focus'\n }\n\n const Selector = {\n DATA_TOGGLE_CARROT : '[data-toggle^=\"button\"]',\n DATA_TOGGLE : '[data-toggle=\"buttons\"]',\n INPUT : 'input',\n ACTIVE : '.active',\n BUTTON : '.btn'\n }\n\n const Event = {\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`,\n FOCUS_BLUR_DATA_API : `focus${EVENT_KEY}${DATA_API_KEY} ` +\n `blur${EVENT_KEY}${DATA_API_KEY}`\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Button {\n constructor(element) {\n this._element = element\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n // Public\n\n toggle() {\n let triggerChangeEvent = true\n let addAriaPressed = true\n const rootElement = $(this._element).closest(\n Selector.DATA_TOGGLE\n )[0]\n\n if (rootElement) {\n const input = this._element.querySelector(Selector.INPUT)\n\n if (input) {\n if (input.type === 'radio') {\n if (input.checked &&\n this._element.classList.contains(ClassName.ACTIVE)) {\n triggerChangeEvent = false\n } else {\n const activeElement = rootElement.querySelector(Selector.ACTIVE)\n\n if (activeElement) {\n $(activeElement).removeClass(ClassName.ACTIVE)\n }\n }\n }\n\n if (triggerChangeEvent) {\n if (input.hasAttribute('disabled') ||\n rootElement.hasAttribute('disabled') ||\n input.classList.contains('disabled') ||\n rootElement.classList.contains('disabled')) {\n return\n }\n input.checked = !this._element.classList.contains(ClassName.ACTIVE)\n $(input).trigger('change')\n }\n\n input.focus()\n addAriaPressed = false\n }\n }\n\n if (addAriaPressed) {\n this._element.setAttribute('aria-pressed',\n !this._element.classList.contains(ClassName.ACTIVE))\n }\n\n if (triggerChangeEvent) {\n $(this._element).toggleClass(ClassName.ACTIVE)\n }\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n this._element = null\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n\n if (!data) {\n data = new Button(this)\n $(this).data(DATA_KEY, data)\n }\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document)\n .on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE_CARROT, (event) => {\n event.preventDefault()\n\n let button = event.target\n\n if (!$(button).hasClass(ClassName.BUTTON)) {\n button = $(button).closest(Selector.BUTTON)\n }\n\n Button._jQueryInterface.call($(button), 'toggle')\n })\n .on(Event.FOCUS_BLUR_DATA_API, Selector.DATA_TOGGLE_CARROT, (event) => {\n const button = $(event.target).closest(Selector.BUTTON)[0]\n $(button).toggleClass(ClassName.FOCUS, /^focus(in)?$/.test(event.type))\n })\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Button._jQueryInterface\n $.fn[NAME].Constructor = Button\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Button._jQueryInterface\n }\n\n return Button\n})($)\n\nexport default Button\n","import $ from 'jquery'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Carousel = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'carousel'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.carousel'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const ARROW_LEFT_KEYCODE = 37 // KeyboardEvent.which value for left arrow key\n const ARROW_RIGHT_KEYCODE = 39 // KeyboardEvent.which value for right arrow key\n const TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\n\n const Default = {\n interval : 5000,\n keyboard : true,\n slide : false,\n pause : 'hover',\n wrap : true\n }\n\n const DefaultType = {\n interval : '(number|boolean)',\n keyboard : 'boolean',\n slide : '(boolean|string)',\n pause : '(string|boolean)',\n wrap : 'boolean'\n }\n\n const Direction = {\n NEXT : 'next',\n PREV : 'prev',\n LEFT : 'left',\n RIGHT : 'right'\n }\n\n const Event = {\n SLIDE : `slide${EVENT_KEY}`,\n SLID : `slid${EVENT_KEY}`,\n KEYDOWN : `keydown${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`,\n TOUCHEND : `touchend${EVENT_KEY}`,\n LOAD_DATA_API : `load${EVENT_KEY}${DATA_API_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n CAROUSEL : 'carousel',\n ACTIVE : 'active',\n SLIDE : 'slide',\n RIGHT : 'carousel-item-right',\n LEFT : 'carousel-item-left',\n NEXT : 'carousel-item-next',\n PREV : 'carousel-item-prev',\n ITEM : 'carousel-item'\n }\n\n const Selector = {\n ACTIVE : '.active',\n ACTIVE_ITEM : '.active.carousel-item',\n ITEM : '.carousel-item',\n NEXT_PREV : '.carousel-item-next, .carousel-item-prev',\n INDICATORS : '.carousel-indicators',\n DATA_SLIDE : '[data-slide], [data-slide-to]',\n DATA_RIDE : '[data-ride=\"carousel\"]'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Carousel {\n constructor(element, config) {\n this._items = null\n this._interval = null\n this._activeElement = null\n\n this._isPaused = false\n this._isSliding = false\n\n this.touchTimeout = null\n\n this._config = this._getConfig(config)\n this._element = $(element)[0]\n this._indicatorsElement = this._element.querySelector(Selector.INDICATORS)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n next() {\n if (!this._isSliding) {\n this._slide(Direction.NEXT)\n }\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden &&\n ($(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden')) {\n this.next()\n }\n }\n\n prev() {\n if (!this._isSliding) {\n this._slide(Direction.PREV)\n }\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (this._element.querySelector(Selector.NEXT_PREV)) {\n Util.triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config.interval && !this._isPaused) {\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = this._element.querySelector(Selector.ACTIVE_ITEM)\n\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n $(this._element).one(Event.SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const direction = index > activeIndex\n ? Direction.NEXT\n : Direction.PREV\n\n this._slide(direction, this._items[index])\n }\n\n dispose() {\n $(this._element).off(EVENT_KEY)\n $.removeData(this._element, DATA_KEY)\n\n this._items = null\n this._config = null\n this._element = null\n this._interval = null\n this._isPaused = null\n this._isSliding = null\n this._activeElement = null\n this._indicatorsElement = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n $(this._element)\n .on(Event.KEYDOWN, (event) => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n $(this._element)\n .on(Event.MOUSEENTER, (event) => this.pause(event))\n .on(Event.MOUSELEAVE, (event) => this.cycle(event))\n if ('ontouchstart' in document.documentElement) {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n $(this._element).on(Event.TOUCHEND, () => {\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n this.touchTimeout = setTimeout((event) => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n })\n }\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n switch (event.which) {\n case ARROW_LEFT_KEYCODE:\n event.preventDefault()\n this.prev()\n break\n case ARROW_RIGHT_KEYCODE:\n event.preventDefault()\n this.next()\n break\n default:\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode\n ? [].slice.call(element.parentNode.querySelectorAll(Selector.ITEM))\n : []\n return this._items.indexOf(element)\n }\n\n _getItemByDirection(direction, activeElement) {\n const isNextDirection = direction === Direction.NEXT\n const isPrevDirection = direction === Direction.PREV\n const activeIndex = this._getItemIndex(activeElement)\n const lastItemIndex = this._items.length - 1\n const isGoingToWrap = isPrevDirection && activeIndex === 0 ||\n isNextDirection && activeIndex === lastItemIndex\n\n if (isGoingToWrap && !this._config.wrap) {\n return activeElement\n }\n\n const delta = direction === Direction.PREV ? -1 : 1\n const itemIndex = (activeIndex + delta) % this._items.length\n\n return itemIndex === -1\n ? this._items[this._items.length - 1] : this._items[itemIndex]\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(this._element.querySelector(Selector.ACTIVE_ITEM))\n const slideEvent = $.Event(Event.SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n\n $(this._element).trigger(slideEvent)\n\n return slideEvent\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const indicators = [].slice.call(this._indicatorsElement.querySelectorAll(Selector.ACTIVE))\n $(indicators)\n .removeClass(ClassName.ACTIVE)\n\n const nextIndicator = this._indicatorsElement.children[\n this._getItemIndex(element)\n ]\n\n if (nextIndicator) {\n $(nextIndicator).addClass(ClassName.ACTIVE)\n }\n }\n }\n\n _slide(direction, element) {\n const activeElement = this._element.querySelector(Selector.ACTIVE_ITEM)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || activeElement &&\n this._getItemByDirection(direction, activeElement)\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n let directionalClassName\n let orderClassName\n let eventDirectionName\n\n if (direction === Direction.NEXT) {\n directionalClassName = ClassName.LEFT\n orderClassName = ClassName.NEXT\n eventDirectionName = Direction.LEFT\n } else {\n directionalClassName = ClassName.RIGHT\n orderClassName = ClassName.PREV\n eventDirectionName = Direction.RIGHT\n }\n\n if (nextElement && $(nextElement).hasClass(ClassName.ACTIVE)) {\n this._isSliding = false\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.isDefaultPrevented()) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n\n const slidEvent = $.Event(Event.SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n\n if ($(this._element).hasClass(ClassName.SLIDE)) {\n $(nextElement).addClass(orderClassName)\n\n Util.reflow(nextElement)\n\n $(activeElement).addClass(directionalClassName)\n $(nextElement).addClass(directionalClassName)\n\n const transitionDuration = Util.getTransitionDurationFromElement(activeElement)\n\n $(activeElement)\n .one(Util.TRANSITION_END, () => {\n $(nextElement)\n .removeClass(`${directionalClassName} ${orderClassName}`)\n .addClass(ClassName.ACTIVE)\n\n $(activeElement).removeClass(`${ClassName.ACTIVE} ${orderClassName} ${directionalClassName}`)\n\n this._isSliding = false\n\n setTimeout(() => $(this._element).trigger(slidEvent), 0)\n })\n .emulateTransitionEnd(transitionDuration)\n } else {\n $(activeElement).removeClass(ClassName.ACTIVE)\n $(nextElement).addClass(ClassName.ACTIVE)\n\n this._isSliding = false\n $(this._element).trigger(slidEvent)\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n let _config = {\n ...Default,\n ...$(this).data()\n }\n\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (!data) {\n data = new Carousel(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n data[action]()\n } else if (_config.interval) {\n data.pause()\n data.cycle()\n }\n })\n }\n\n static _dataApiClickHandler(event) {\n const selector = Util.getSelectorFromElement(this)\n\n if (!selector) {\n return\n }\n\n const target = $(selector)[0]\n\n if (!target || !$(target).hasClass(ClassName.CAROUSEL)) {\n return\n }\n\n const config = {\n ...$(target).data(),\n ...$(this).data()\n }\n const slideIndex = this.getAttribute('data-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel._jQueryInterface.call($(target), config)\n\n if (slideIndex) {\n $(target).data(DATA_KEY).to(slideIndex)\n }\n\n event.preventDefault()\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document)\n .on(Event.CLICK_DATA_API, Selector.DATA_SLIDE, Carousel._dataApiClickHandler)\n\n $(window).on(Event.LOAD_DATA_API, () => {\n const carousels = [].slice.call(document.querySelectorAll(Selector.DATA_RIDE))\n for (let i = 0, len = carousels.length; i < len; i++) {\n const $carousel = $(carousels[i])\n Carousel._jQueryInterface.call($carousel, $carousel.data())\n }\n })\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Carousel._jQueryInterface\n $.fn[NAME].Constructor = Carousel\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Carousel._jQueryInterface\n }\n\n return Carousel\n})($)\n\nexport default Carousel\n","import $ from 'jquery'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Collapse = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'collapse'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.collapse'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n const Default = {\n toggle : true,\n parent : ''\n }\n\n const DefaultType = {\n toggle : 'boolean',\n parent : '(string|element)'\n }\n\n const Event = {\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n SHOW : 'show',\n COLLAPSE : 'collapse',\n COLLAPSING : 'collapsing',\n COLLAPSED : 'collapsed'\n }\n\n const Dimension = {\n WIDTH : 'width',\n HEIGHT : 'height'\n }\n\n const Selector = {\n ACTIVES : '.show, .collapsing',\n DATA_TOGGLE : '[data-toggle=\"collapse\"]'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Collapse {\n constructor(element, config) {\n this._isTransitioning = false\n this._element = element\n this._config = this._getConfig(config)\n this._triggerArray = $.makeArray(document.querySelectorAll(\n `[data-toggle=\"collapse\"][href=\"#${element.id}\"],` +\n `[data-toggle=\"collapse\"][data-target=\"#${element.id}\"]`\n ))\n const toggleList = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE))\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = Util.getSelectorFromElement(elem)\n const filterElement = [].slice.call(document.querySelectorAll(selector))\n .filter((foundElem) => foundElem === element)\n\n if (selector !== null && filterElement.length > 0) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle() {\n if ($(this._element).hasClass(ClassName.SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning ||\n $(this._element).hasClass(ClassName.SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = [].slice.call(this._parent.querySelectorAll(Selector.ACTIVES))\n .filter((elem) => elem.getAttribute('data-parent') === this._config.parent)\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n if (actives) {\n activesData = $(actives).not(this._selector).data(DATA_KEY)\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = $.Event(Event.SHOW)\n $(this._element).trigger(startEvent)\n if (startEvent.isDefaultPrevented()) {\n return\n }\n\n if (actives) {\n Collapse._jQueryInterface.call($(actives).not(this._selector), 'hide')\n if (!activesData) {\n $(actives).data(DATA_KEY, null)\n }\n }\n\n const dimension = this._getDimension()\n\n $(this._element)\n .removeClass(ClassName.COLLAPSE)\n .addClass(ClassName.COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n $(this._triggerArray)\n .removeClass(ClassName.COLLAPSED)\n .attr('aria-expanded', true)\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n $(this._element)\n .removeClass(ClassName.COLLAPSING)\n .addClass(ClassName.COLLAPSE)\n .addClass(ClassName.SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n $(this._element).trigger(Event.SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning ||\n !$(this._element).hasClass(ClassName.SHOW)) {\n return\n }\n\n const startEvent = $.Event(Event.HIDE)\n $(this._element).trigger(startEvent)\n if (startEvent.isDefaultPrevented()) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n Util.reflow(this._element)\n\n $(this._element)\n .addClass(ClassName.COLLAPSING)\n .removeClass(ClassName.COLLAPSE)\n .removeClass(ClassName.SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const selector = Util.getSelectorFromElement(trigger)\n if (selector !== null) {\n const $elem = $([].slice.call(document.querySelectorAll(selector)))\n if (!$elem.hasClass(ClassName.SHOW)) {\n $(trigger).addClass(ClassName.COLLAPSED)\n .attr('aria-expanded', false)\n }\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n $(this._element)\n .removeClass(ClassName.COLLAPSING)\n .addClass(ClassName.COLLAPSE)\n .trigger(Event.HIDDEN)\n }\n\n this._element.style[dimension] = ''\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n\n this._config = null\n this._parent = null\n this._element = null\n this._triggerArray = null\n this._isTransitioning = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n const hasWidth = $(this._element).hasClass(Dimension.WIDTH)\n return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT\n }\n\n _getParent() {\n let parent = null\n if (Util.isElement(this._config.parent)) {\n parent = this._config.parent\n\n // It's a jQuery object\n if (typeof this._config.parent.jquery !== 'undefined') {\n parent = this._config.parent[0]\n }\n } else {\n parent = document.querySelector(this._config.parent)\n }\n\n const selector =\n `[data-toggle=\"collapse\"][data-parent=\"${this._config.parent}\"]`\n\n const children = [].slice.call(parent.querySelectorAll(selector))\n $(children).each((i, element) => {\n this._addAriaAndCollapsedClass(\n Collapse._getTargetFromElement(element),\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (element) {\n const isOpen = $(element).hasClass(ClassName.SHOW)\n\n if (triggerArray.length) {\n $(triggerArray)\n .toggleClass(ClassName.COLLAPSED, !isOpen)\n .attr('aria-expanded', isOpen)\n }\n }\n }\n\n // Static\n\n static _getTargetFromElement(element) {\n const selector = Util.getSelectorFromElement(element)\n return selector ? document.querySelector(selector) : null\n }\n\n static _jQueryInterface(config) {\n return this.each(function () {\n const $this = $(this)\n let data = $this.data(DATA_KEY)\n const _config = {\n ...Default,\n ...$this.data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (!data && _config.toggle && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(this, _config)\n $this.data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n // preventDefault only for
    elements (which change the URL) not inside the collapsible element\n if (event.currentTarget.tagName === 'A') {\n event.preventDefault()\n }\n\n const $trigger = $(this)\n const selector = Util.getSelectorFromElement(this)\n const selectors = [].slice.call(document.querySelectorAll(selector))\n $(selectors).each(function () {\n const $target = $(this)\n const data = $target.data(DATA_KEY)\n const config = data ? 'toggle' : $trigger.data()\n Collapse._jQueryInterface.call($target, config)\n })\n })\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Collapse._jQueryInterface\n $.fn[NAME].Constructor = Collapse\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Collapse._jQueryInterface\n }\n\n return Collapse\n})($)\n\nexport default Collapse\n","import $ from 'jquery'\nimport Popper from 'popper.js'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Dropdown = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'dropdown'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.dropdown'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const ESCAPE_KEYCODE = 27 // KeyboardEvent.which value for Escape (Esc) key\n const SPACE_KEYCODE = 32 // KeyboardEvent.which value for space key\n const TAB_KEYCODE = 9 // KeyboardEvent.which value for tab key\n const ARROW_UP_KEYCODE = 38 // KeyboardEvent.which value for up arrow key\n const ARROW_DOWN_KEYCODE = 40 // KeyboardEvent.which value for down arrow key\n const RIGHT_MOUSE_BUTTON_WHICH = 3 // MouseEvent.which value for the right button (assuming a right-handed mouse)\n const REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEYCODE}|${ARROW_DOWN_KEYCODE}|${ESCAPE_KEYCODE}`)\n\n const Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`,\n KEYDOWN_DATA_API : `keydown${EVENT_KEY}${DATA_API_KEY}`,\n KEYUP_DATA_API : `keyup${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n DISABLED : 'disabled',\n SHOW : 'show',\n DROPUP : 'dropup',\n DROPRIGHT : 'dropright',\n DROPLEFT : 'dropleft',\n MENURIGHT : 'dropdown-menu-right',\n MENULEFT : 'dropdown-menu-left',\n POSITION_STATIC : 'position-static'\n }\n\n const Selector = {\n DATA_TOGGLE : '[data-toggle=\"dropdown\"]',\n FORM_CHILD : '.dropdown form',\n MENU : '.dropdown-menu',\n NAVBAR_NAV : '.navbar-nav',\n VISIBLE_ITEMS : '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n }\n\n const AttachmentMap = {\n TOP : 'top-start',\n TOPEND : 'top-end',\n BOTTOM : 'bottom-start',\n BOTTOMEND : 'bottom-end',\n RIGHT : 'right-start',\n RIGHTEND : 'right-end',\n LEFT : 'left-start',\n LEFTEND : 'left-end'\n }\n\n const Default = {\n offset : 0,\n flip : true,\n boundary : 'scrollParent',\n reference : 'toggle',\n display : 'dynamic'\n }\n\n const DefaultType = {\n offset : '(number|string|function)',\n flip : 'boolean',\n boundary : '(string|element)',\n reference : '(string|element)',\n display : 'string'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Dropdown {\n constructor(element, config) {\n this._element = element\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n toggle() {\n if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED)) {\n return\n }\n\n const parent = Dropdown._getParentFromElement(this._element)\n const isActive = $(this._menu).hasClass(ClassName.SHOW)\n\n Dropdown._clearMenus()\n\n if (isActive) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n const showEvent = $.Event(Event.SHOW, relatedTarget)\n\n $(parent).trigger(showEvent)\n\n if (showEvent.isDefaultPrevented()) {\n return\n }\n\n // Disable totally Popper.js for Dropdown in Navbar\n if (!this._inNavbar) {\n /**\n * Check for Popper dependency\n * Popper - https://popper.js.org\n */\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap dropdown require Popper.js (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (Util.isElement(this._config.reference)) {\n referenceElement = this._config.reference\n\n // Check if it's jQuery element\n if (typeof this._config.reference.jquery !== 'undefined') {\n referenceElement = this._config.reference[0]\n }\n }\n\n // If boundary is not `scrollParent`, then set position to `static`\n // to allow the menu to \"escape\" the scroll parent's boundaries\n // https://github.com/twbs/bootstrap/issues/24251\n if (this._config.boundary !== 'scrollParent') {\n $(parent).addClass(ClassName.POSITION_STATIC)\n }\n this._popper = new Popper(referenceElement, this._menu, this._getPopperConfig())\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n $(parent).closest(Selector.NAVBAR_NAV).length === 0) {\n $(document.body).children().on('mouseover', null, $.noop)\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n $(this._menu).toggleClass(ClassName.SHOW)\n $(parent)\n .toggleClass(ClassName.SHOW)\n .trigger($.Event(Event.SHOWN, relatedTarget))\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n $(this._element).off(EVENT_KEY)\n this._element = null\n this._menu = null\n if (this._popper !== null) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper !== null) {\n this._popper.scheduleUpdate()\n }\n }\n\n // Private\n\n _addEventListeners() {\n $(this._element).on(Event.CLICK, (event) => {\n event.preventDefault()\n event.stopPropagation()\n this.toggle()\n })\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...$(this._element).data(),\n ...config\n }\n\n Util.typeCheckConfig(\n NAME,\n config,\n this.constructor.DefaultType\n )\n\n return config\n }\n\n _getMenuElement() {\n if (!this._menu) {\n const parent = Dropdown._getParentFromElement(this._element)\n if (parent) {\n this._menu = parent.querySelector(Selector.MENU)\n }\n }\n return this._menu\n }\n\n _getPlacement() {\n const $parentDropdown = $(this._element.parentNode)\n let placement = AttachmentMap.BOTTOM\n\n // Handle dropup\n if ($parentDropdown.hasClass(ClassName.DROPUP)) {\n placement = AttachmentMap.TOP\n if ($(this._menu).hasClass(ClassName.MENURIGHT)) {\n placement = AttachmentMap.TOPEND\n }\n } else if ($parentDropdown.hasClass(ClassName.DROPRIGHT)) {\n placement = AttachmentMap.RIGHT\n } else if ($parentDropdown.hasClass(ClassName.DROPLEFT)) {\n placement = AttachmentMap.LEFT\n } else if ($(this._menu).hasClass(ClassName.MENURIGHT)) {\n placement = AttachmentMap.BOTTOMEND\n }\n return placement\n }\n\n _detectNavbar() {\n return $(this._element).closest('.navbar').length > 0\n }\n\n _getPopperConfig() {\n const offsetConf = {}\n if (typeof this._config.offset === 'function') {\n offsetConf.fn = (data) => {\n data.offsets = {\n ...data.offsets,\n ...this._config.offset(data.offsets) || {}\n }\n return data\n }\n } else {\n offsetConf.offset = this._config.offset\n }\n\n const popperConfig = {\n placement: this._getPlacement(),\n modifiers: {\n offset: offsetConf,\n flip: {\n enabled: this._config.flip\n },\n preventOverflow: {\n boundariesElement: this._config.boundary\n }\n }\n }\n\n // Disable Popper.js if we have a static display\n if (this._config.display === 'static') {\n popperConfig.modifiers.applyStyle = {\n enabled: false\n }\n }\n return popperConfig\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data) {\n data = new Dropdown(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n\n static _clearMenus(event) {\n if (event && (event.which === RIGHT_MOUSE_BUTTON_WHICH ||\n event.type === 'keyup' && event.which !== TAB_KEYCODE)) {\n return\n }\n\n const toggles = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE))\n for (let i = 0, len = toggles.length; i < len; i++) {\n const parent = Dropdown._getParentFromElement(toggles[i])\n const context = $(toggles[i]).data(DATA_KEY)\n const relatedTarget = {\n relatedTarget: toggles[i]\n }\n\n if (event && event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n\n if (!context) {\n continue\n }\n\n const dropdownMenu = context._menu\n if (!$(parent).hasClass(ClassName.SHOW)) {\n continue\n }\n\n if (event && (event.type === 'click' &&\n /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) &&\n $.contains(parent, event.target)) {\n continue\n }\n\n const hideEvent = $.Event(Event.HIDE, relatedTarget)\n $(parent).trigger(hideEvent)\n if (hideEvent.isDefaultPrevented()) {\n continue\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().off('mouseover', null, $.noop)\n }\n\n toggles[i].setAttribute('aria-expanded', 'false')\n\n $(dropdownMenu).removeClass(ClassName.SHOW)\n $(parent)\n .removeClass(ClassName.SHOW)\n .trigger($.Event(Event.HIDDEN, relatedTarget))\n }\n }\n\n static _getParentFromElement(element) {\n let parent\n const selector = Util.getSelectorFromElement(element)\n\n if (selector) {\n parent = document.querySelector(selector)\n }\n\n return parent || element.parentNode\n }\n\n // eslint-disable-next-line complexity\n static _dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName)\n ? event.which === SPACE_KEYCODE || event.which !== ESCAPE_KEYCODE &&\n (event.which !== ARROW_DOWN_KEYCODE && event.which !== ARROW_UP_KEYCODE ||\n $(event.target).closest(Selector.MENU).length) : !REGEXP_KEYDOWN.test(event.which)) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (this.disabled || $(this).hasClass(ClassName.DISABLED)) {\n return\n }\n\n const parent = Dropdown._getParentFromElement(this)\n const isActive = $(parent).hasClass(ClassName.SHOW)\n\n if (!isActive && (event.which !== ESCAPE_KEYCODE || event.which !== SPACE_KEYCODE) ||\n isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) {\n if (event.which === ESCAPE_KEYCODE) {\n const toggle = parent.querySelector(Selector.DATA_TOGGLE)\n $(toggle).trigger('focus')\n }\n\n $(this).trigger('click')\n return\n }\n\n const items = [].slice.call(parent.querySelectorAll(Selector.VISIBLE_ITEMS))\n\n if (items.length === 0) {\n return\n }\n\n let index = items.indexOf(event.target)\n\n if (event.which === ARROW_UP_KEYCODE && index > 0) { // Up\n index--\n }\n\n if (event.which === ARROW_DOWN_KEYCODE && index < items.length - 1) { // Down\n index++\n }\n\n if (index < 0) {\n index = 0\n }\n\n items[index].focus()\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document)\n .on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler)\n .on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler)\n .on(`${Event.CLICK_DATA_API} ${Event.KEYUP_DATA_API}`, Dropdown._clearMenus)\n .on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n event.preventDefault()\n event.stopPropagation()\n Dropdown._jQueryInterface.call($(this), 'toggle')\n })\n .on(Event.CLICK_DATA_API, Selector.FORM_CHILD, (e) => {\n e.stopPropagation()\n })\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Dropdown._jQueryInterface\n $.fn[NAME].Constructor = Dropdown\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Dropdown._jQueryInterface\n }\n\n return Dropdown\n})($, Popper)\n\nexport default Dropdown\n","import $ from 'jquery'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Modal = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'modal'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.modal'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const ESCAPE_KEYCODE = 27 // KeyboardEvent.which value for Escape (Esc) key\n\n const Default = {\n backdrop : true,\n keyboard : true,\n focus : true,\n show : true\n }\n\n const DefaultType = {\n backdrop : '(boolean|string)',\n keyboard : 'boolean',\n focus : 'boolean',\n show : 'boolean'\n }\n\n const Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n RESIZE : `resize${EVENT_KEY}`,\n CLICK_DISMISS : `click.dismiss${EVENT_KEY}`,\n KEYDOWN_DISMISS : `keydown.dismiss${EVENT_KEY}`,\n MOUSEUP_DISMISS : `mouseup.dismiss${EVENT_KEY}`,\n MOUSEDOWN_DISMISS : `mousedown.dismiss${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n SCROLLBAR_MEASURER : 'modal-scrollbar-measure',\n BACKDROP : 'modal-backdrop',\n OPEN : 'modal-open',\n FADE : 'fade',\n SHOW : 'show'\n }\n\n const Selector = {\n DIALOG : '.modal-dialog',\n DATA_TOGGLE : '[data-toggle=\"modal\"]',\n DATA_DISMISS : '[data-dismiss=\"modal\"]',\n FIXED_CONTENT : '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',\n STICKY_CONTENT : '.sticky-top'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Modal {\n constructor(element, config) {\n this._config = this._getConfig(config)\n this._element = element\n this._dialog = element.querySelector(Selector.DIALOG)\n this._backdrop = null\n this._isShown = false\n this._isBodyOverflowing = false\n this._ignoreBackdropClick = false\n this._scrollbarWidth = 0\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isTransitioning || this._isShown) {\n return\n }\n\n if ($(this._element).hasClass(ClassName.FADE)) {\n this._isTransitioning = true\n }\n\n const showEvent = $.Event(Event.SHOW, {\n relatedTarget\n })\n\n $(this._element).trigger(showEvent)\n\n if (this._isShown || showEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = true\n\n this._checkScrollbar()\n this._setScrollbar()\n\n this._adjustDialog()\n\n $(document.body).addClass(ClassName.OPEN)\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(this._element).on(\n Event.CLICK_DISMISS,\n Selector.DATA_DISMISS,\n (event) => this.hide(event)\n )\n\n $(this._dialog).on(Event.MOUSEDOWN_DISMISS, () => {\n $(this._element).one(Event.MOUSEUP_DISMISS, (event) => {\n if ($(event.target).is(this._element)) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event) {\n event.preventDefault()\n }\n\n if (this._isTransitioning || !this._isShown) {\n return\n }\n\n const hideEvent = $.Event(Event.HIDE)\n\n $(this._element).trigger(hideEvent)\n\n if (!this._isShown || hideEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = false\n const transition = $(this._element).hasClass(ClassName.FADE)\n\n if (transition) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(document).off(Event.FOCUSIN)\n\n $(this._element).removeClass(ClassName.SHOW)\n\n $(this._element).off(Event.CLICK_DISMISS)\n $(this._dialog).off(Event.MOUSEDOWN_DISMISS)\n\n\n if (transition) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, (event) => this._hideModal(event))\n .emulateTransitionEnd(transitionDuration)\n } else {\n this._hideModal()\n }\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n\n $(window, document, this._element, this._backdrop).off(EVENT_KEY)\n\n this._config = null\n this._element = null\n this._dialog = null\n this._backdrop = null\n this._isShown = null\n this._isBodyOverflowing = null\n this._ignoreBackdropClick = null\n this._scrollbarWidth = null\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const transition = $(this._element).hasClass(ClassName.FADE)\n\n if (!this._element.parentNode ||\n this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.scrollTop = 0\n\n if (transition) {\n Util.reflow(this._element)\n }\n\n $(this._element).addClass(ClassName.SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const shownEvent = $.Event(Event.SHOWN, {\n relatedTarget\n })\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n this._isTransitioning = false\n $(this._element).trigger(shownEvent)\n }\n\n if (transition) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._dialog)\n .one(Util.TRANSITION_END, transitionComplete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n transitionComplete()\n }\n }\n\n _enforceFocus() {\n $(document)\n .off(Event.FOCUSIN) // Guard against infinite focus loop\n .on(Event.FOCUSIN, (event) => {\n if (document !== event.target &&\n this._element !== event.target &&\n $(this._element).has(event.target).length === 0) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown && this._config.keyboard) {\n $(this._element).on(Event.KEYDOWN_DISMISS, (event) => {\n if (event.which === ESCAPE_KEYCODE) {\n event.preventDefault()\n this.hide()\n }\n })\n } else if (!this._isShown) {\n $(this._element).off(Event.KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n $(window).on(Event.RESIZE, (event) => this.handleUpdate(event))\n } else {\n $(window).off(Event.RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._isTransitioning = false\n this._showBackdrop(() => {\n $(document.body).removeClass(ClassName.OPEN)\n this._resetAdjustments()\n this._resetScrollbar()\n $(this._element).trigger(Event.HIDDEN)\n })\n }\n\n _removeBackdrop() {\n if (this._backdrop) {\n $(this._backdrop).remove()\n this._backdrop = null\n }\n }\n\n _showBackdrop(callback) {\n const animate = $(this._element).hasClass(ClassName.FADE)\n ? ClassName.FADE : ''\n\n if (this._isShown && this._config.backdrop) {\n this._backdrop = document.createElement('div')\n this._backdrop.className = ClassName.BACKDROP\n\n if (animate) {\n this._backdrop.classList.add(animate)\n }\n\n $(this._backdrop).appendTo(document.body)\n\n $(this._element).on(Event.CLICK_DISMISS, (event) => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n if (event.target !== event.currentTarget) {\n return\n }\n if (this._config.backdrop === 'static') {\n this._element.focus()\n } else {\n this.hide()\n }\n })\n\n if (animate) {\n Util.reflow(this._backdrop)\n }\n\n $(this._backdrop).addClass(ClassName.SHOW)\n\n if (!callback) {\n return\n }\n\n if (!animate) {\n callback()\n return\n }\n\n const backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop)\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callback)\n .emulateTransitionEnd(backdropTransitionDuration)\n } else if (!this._isShown && this._backdrop) {\n $(this._backdrop).removeClass(ClassName.SHOW)\n\n const callbackRemove = () => {\n this._removeBackdrop()\n if (callback) {\n callback()\n }\n }\n\n if ($(this._element).hasClass(ClassName.FADE)) {\n const backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop)\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callbackRemove)\n .emulateTransitionEnd(backdropTransitionDuration)\n } else {\n callbackRemove()\n }\n } else if (callback) {\n callback()\n }\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // todo (fat): these should probably be refactored out of modal.js\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing =\n this._element.scrollHeight > document.documentElement.clientHeight\n\n if (!this._isBodyOverflowing && isModalOverflowing) {\n this._element.style.paddingLeft = `${this._scrollbarWidth}px`\n }\n\n if (this._isBodyOverflowing && !isModalOverflowing) {\n this._element.style.paddingRight = `${this._scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n _checkScrollbar() {\n const rect = document.body.getBoundingClientRect()\n this._isBodyOverflowing = rect.left + rect.right < window.innerWidth\n this._scrollbarWidth = this._getScrollbarWidth()\n }\n\n _setScrollbar() {\n if (this._isBodyOverflowing) {\n // Note: DOMNode.style.paddingRight returns the actual value or '' if not set\n // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set\n const fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT))\n const stickyContent = [].slice.call(document.querySelectorAll(Selector.STICKY_CONTENT))\n\n // Adjust fixed content padding\n $(fixedContent).each((index, element) => {\n const actualPadding = element.style.paddingRight\n const calculatedPadding = $(element).css('padding-right')\n $(element)\n .data('padding-right', actualPadding)\n .css('padding-right', `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`)\n })\n\n // Adjust sticky content margin\n $(stickyContent).each((index, element) => {\n const actualMargin = element.style.marginRight\n const calculatedMargin = $(element).css('margin-right')\n $(element)\n .data('margin-right', actualMargin)\n .css('margin-right', `${parseFloat(calculatedMargin) - this._scrollbarWidth}px`)\n })\n\n // Adjust body padding\n const actualPadding = document.body.style.paddingRight\n const calculatedPadding = $(document.body).css('padding-right')\n $(document.body)\n .data('padding-right', actualPadding)\n .css('padding-right', `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`)\n }\n }\n\n _resetScrollbar() {\n // Restore fixed content padding\n const fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT))\n $(fixedContent).each((index, element) => {\n const padding = $(element).data('padding-right')\n $(element).removeData('padding-right')\n element.style.paddingRight = padding ? padding : ''\n })\n\n // Restore sticky content\n const elements = [].slice.call(document.querySelectorAll(`${Selector.STICKY_CONTENT}`))\n $(elements).each((index, element) => {\n const margin = $(element).data('margin-right')\n if (typeof margin !== 'undefined') {\n $(element).css('margin-right', margin).removeData('margin-right')\n }\n })\n\n // Restore body padding\n const padding = $(document.body).data('padding-right')\n $(document.body).removeData('padding-right')\n document.body.style.paddingRight = padding ? padding : ''\n }\n\n _getScrollbarWidth() { // thx d.walsh\n const scrollDiv = document.createElement('div')\n scrollDiv.className = ClassName.SCROLLBAR_MEASURER\n document.body.appendChild(scrollDiv)\n const scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth\n document.body.removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n // Static\n\n static _jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = {\n ...Default,\n ...$(this).data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (!data) {\n data = new Modal(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config](relatedTarget)\n } else if (_config.show) {\n data.show(relatedTarget)\n }\n })\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n let target\n const selector = Util.getSelectorFromElement(this)\n\n if (selector) {\n target = document.querySelector(selector)\n }\n\n const config = $(target).data(DATA_KEY)\n ? 'toggle' : {\n ...$(target).data(),\n ...$(this).data()\n }\n\n if (this.tagName === 'A' || this.tagName === 'AREA') {\n event.preventDefault()\n }\n\n const $target = $(target).one(Event.SHOW, (showEvent) => {\n if (showEvent.isDefaultPrevented()) {\n // Only register focus restorer if modal will actually get shown\n return\n }\n\n $target.one(Event.HIDDEN, () => {\n if ($(this).is(':visible')) {\n this.focus()\n }\n })\n })\n\n Modal._jQueryInterface.call($(target), config, this)\n })\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Modal._jQueryInterface\n $.fn[NAME].Constructor = Modal\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Modal._jQueryInterface\n }\n\n return Modal\n})($)\n\nexport default Modal\n","import $ from 'jquery'\nimport Popper from 'popper.js'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Tooltip = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'tooltip'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.tooltip'\n const EVENT_KEY = `.${DATA_KEY}`\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const CLASS_PREFIX = 'bs-tooltip'\n const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\n const DefaultType = {\n animation : 'boolean',\n template : 'string',\n title : '(string|element|function)',\n trigger : 'string',\n delay : '(number|object)',\n html : 'boolean',\n selector : '(string|boolean)',\n placement : '(string|function)',\n offset : '(number|string)',\n container : '(string|element|boolean)',\n fallbackPlacement : '(string|array)',\n boundary : '(string|element)'\n }\n\n const AttachmentMap = {\n AUTO : 'auto',\n TOP : 'top',\n RIGHT : 'right',\n BOTTOM : 'bottom',\n LEFT : 'left'\n }\n\n const Default = {\n animation : true,\n template : '
    ' +\n '
    ' +\n '
    ',\n trigger : 'hover focus',\n title : '',\n delay : 0,\n html : false,\n selector : false,\n placement : 'top',\n offset : 0,\n container : false,\n fallbackPlacement : 'flip',\n boundary : 'scrollParent'\n }\n\n const HoverState = {\n SHOW : 'show',\n OUT : 'out'\n }\n\n const Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n INSERTED : `inserted${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n FOCUSOUT : `focusout${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`\n }\n\n const ClassName = {\n FADE : 'fade',\n SHOW : 'show'\n }\n\n const Selector = {\n TOOLTIP : '.tooltip',\n TOOLTIP_INNER : '.tooltip-inner',\n ARROW : '.arrow'\n }\n\n const Trigger = {\n HOVER : 'hover',\n FOCUS : 'focus',\n CLICK : 'click',\n MANUAL : 'manual'\n }\n\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Tooltip {\n constructor(element, config) {\n /**\n * Check for Popper dependency\n * Popper - https://popper.js.org\n */\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap tooltips require Popper.js (https://popper.js.org)')\n }\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this.element = element\n this.config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get Event() {\n return Event\n }\n\n static get EVENT_KEY() {\n return EVENT_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const dataKey = this.constructor.DATA_KEY\n let context = $(event.currentTarget).data(dataKey)\n\n if (!context) {\n context = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, context)\n }\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if ($(this.getTipElement()).hasClass(ClassName.SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n $.removeData(this.element, this.constructor.DATA_KEY)\n\n $(this.element).off(this.constructor.EVENT_KEY)\n $(this.element).closest('.modal').off('hide.bs.modal')\n\n if (this.tip) {\n $(this.tip).remove()\n }\n\n this._isEnabled = null\n this._timeout = null\n this._hoverState = null\n this._activeTrigger = null\n if (this._popper !== null) {\n this._popper.destroy()\n }\n\n this._popper = null\n this.element = null\n this.config = null\n this.tip = null\n }\n\n show() {\n if ($(this.element).css('display') === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n const showEvent = $.Event(this.constructor.Event.SHOW)\n if (this.isWithContent() && this._isEnabled) {\n $(this.element).trigger(showEvent)\n\n const isInTheDom = $.contains(\n this.element.ownerDocument.documentElement,\n this.element\n )\n\n if (showEvent.isDefaultPrevented() || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = Util.getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this.element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this.config.animation) {\n $(tip).addClass(ClassName.FADE)\n }\n\n const placement = typeof this.config.placement === 'function'\n ? this.config.placement.call(this, tip, this.element)\n : this.config.placement\n\n const attachment = this._getAttachment(placement)\n this.addAttachmentClass(attachment)\n\n const container = this.config.container === false ? document.body : $(document).find(this.config.container)\n\n $(tip).data(this.constructor.DATA_KEY, this)\n\n if (!$.contains(this.element.ownerDocument.documentElement, this.tip)) {\n $(tip).appendTo(container)\n }\n\n $(this.element).trigger(this.constructor.Event.INSERTED)\n\n this._popper = new Popper(this.element, tip, {\n placement: attachment,\n modifiers: {\n offset: {\n offset: this.config.offset\n },\n flip: {\n behavior: this.config.fallbackPlacement\n },\n arrow: {\n element: Selector.ARROW\n },\n preventOverflow: {\n boundariesElement: this.config.boundary\n }\n },\n onCreate: (data) => {\n if (data.originalPlacement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n },\n onUpdate: (data) => {\n this._handlePopperPlacementChange(data)\n }\n })\n\n $(tip).addClass(ClassName.SHOW)\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().on('mouseover', null, $.noop)\n }\n\n const complete = () => {\n if (this.config.animation) {\n this._fixTransition()\n }\n const prevHoverState = this._hoverState\n this._hoverState = null\n\n $(this.element).trigger(this.constructor.Event.SHOWN)\n\n if (prevHoverState === HoverState.OUT) {\n this._leave(null, this)\n }\n }\n\n if ($(this.tip).hasClass(ClassName.FADE)) {\n const transitionDuration = Util.getTransitionDurationFromElement(this.tip)\n\n $(this.tip)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n complete()\n }\n }\n }\n\n hide(callback) {\n const tip = this.getTipElement()\n const hideEvent = $.Event(this.constructor.Event.HIDE)\n const complete = () => {\n if (this._hoverState !== HoverState.SHOW && tip.parentNode) {\n tip.parentNode.removeChild(tip)\n }\n\n this._cleanTipClass()\n this.element.removeAttribute('aria-describedby')\n $(this.element).trigger(this.constructor.Event.HIDDEN)\n if (this._popper !== null) {\n this._popper.destroy()\n }\n\n if (callback) {\n callback()\n }\n }\n\n $(this.element).trigger(hideEvent)\n\n if (hideEvent.isDefaultPrevented()) {\n return\n }\n\n $(tip).removeClass(ClassName.SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().off('mouseover', null, $.noop)\n }\n\n this._activeTrigger[Trigger.CLICK] = false\n this._activeTrigger[Trigger.FOCUS] = false\n this._activeTrigger[Trigger.HOVER] = false\n\n if ($(this.tip).hasClass(ClassName.FADE)) {\n const transitionDuration = Util.getTransitionDurationFromElement(tip)\n\n $(tip)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n complete()\n }\n\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.scheduleUpdate()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n addAttachmentClass(attachment) {\n $(this.getTipElement()).addClass(`${CLASS_PREFIX}-${attachment}`)\n }\n\n getTipElement() {\n this.tip = this.tip || $(this.config.template)[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent($(tip.querySelectorAll(Selector.TOOLTIP_INNER)), this.getTitle())\n $(tip).removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)\n }\n\n setElementContent($element, content) {\n const html = this.config.html\n if (typeof content === 'object' && (content.nodeType || content.jquery)) {\n // Content is a DOM node or a jQuery\n if (html) {\n if (!$(content).parent().is($element)) {\n $element.empty().append(content)\n }\n } else {\n $element.text($(content).text())\n }\n } else {\n $element[html ? 'html' : 'text'](content)\n }\n }\n\n getTitle() {\n let title = this.element.getAttribute('data-original-title')\n\n if (!title) {\n title = typeof this.config.title === 'function'\n ? this.config.title.call(this.element)\n : this.config.title\n }\n\n return title\n }\n\n // Private\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this.config.trigger.split(' ')\n\n triggers.forEach((trigger) => {\n if (trigger === 'click') {\n $(this.element).on(\n this.constructor.Event.CLICK,\n this.config.selector,\n (event) => this.toggle(event)\n )\n } else if (trigger !== Trigger.MANUAL) {\n const eventIn = trigger === Trigger.HOVER\n ? this.constructor.Event.MOUSEENTER\n : this.constructor.Event.FOCUSIN\n const eventOut = trigger === Trigger.HOVER\n ? this.constructor.Event.MOUSELEAVE\n : this.constructor.Event.FOCUSOUT\n\n $(this.element)\n .on(\n eventIn,\n this.config.selector,\n (event) => this._enter(event)\n )\n .on(\n eventOut,\n this.config.selector,\n (event) => this._leave(event)\n )\n }\n\n $(this.element).closest('.modal').on(\n 'hide.bs.modal',\n () => this.hide()\n )\n })\n\n if (this.config.selector) {\n this.config = {\n ...this.config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const titleType = typeof this.element.getAttribute('data-original-title')\n if (this.element.getAttribute('title') ||\n titleType !== 'string') {\n this.element.setAttribute(\n 'data-original-title',\n this.element.getAttribute('title') || ''\n )\n this.element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n const dataKey = this.constructor.DATA_KEY\n\n context = context || $(event.currentTarget).data(dataKey)\n\n if (!context) {\n context = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, context)\n }\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER\n ] = true\n }\n\n if ($(context.getTipElement()).hasClass(ClassName.SHOW) ||\n context._hoverState === HoverState.SHOW) {\n context._hoverState = HoverState.SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HoverState.SHOW\n\n if (!context.config.delay || !context.config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HoverState.SHOW) {\n context.show()\n }\n }, context.config.delay.show)\n }\n\n _leave(event, context) {\n const dataKey = this.constructor.DATA_KEY\n\n context = context || $(event.currentTarget).data(dataKey)\n\n if (!context) {\n context = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, context)\n }\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER\n ] = false\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HoverState.OUT\n\n if (!context.config.delay || !context.config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HoverState.OUT) {\n context.hide()\n }\n }, context.config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...$(this.element).data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n Util.typeCheckConfig(\n NAME,\n config,\n this.constructor.DefaultType\n )\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this.config) {\n for (const key in this.config) {\n if (this.constructor.Default[key] !== this.config[key]) {\n config[key] = this.config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const $tip = $(this.getTipElement())\n const tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length) {\n $tip.removeClass(tabClass.join(''))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const popperInstance = popperData.instance\n this.tip = popperInstance.popper\n this._cleanTipClass()\n this.addAttachmentClass(this._getAttachment(popperData.placement))\n }\n\n _fixTransition() {\n const tip = this.getTipElement()\n const initConfigAnimation = this.config.animation\n if (tip.getAttribute('x-placement') !== null) {\n return\n }\n $(tip).removeClass(ClassName.FADE)\n this.config.animation = false\n this.hide()\n this.show()\n this.config.animation = initConfigAnimation\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' && config\n\n if (!data && /dispose|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Tooltip(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Tooltip._jQueryInterface\n $.fn[NAME].Constructor = Tooltip\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Tooltip._jQueryInterface\n }\n\n return Tooltip\n})($, Popper)\n\nexport default Tooltip\n","import $ from 'jquery'\nimport Tooltip from './tooltip'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Popover = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'popover'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.popover'\n const EVENT_KEY = `.${DATA_KEY}`\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const CLASS_PREFIX = 'bs-popover'\n const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\n const Default = {\n ...Tooltip.Default,\n placement : 'right',\n trigger : 'click',\n content : '',\n template : '
    ' +\n '
    ' +\n '

    ' +\n '
    '\n }\n\n const DefaultType = {\n ...Tooltip.DefaultType,\n content : '(string|element|function)'\n }\n\n const ClassName = {\n FADE : 'fade',\n SHOW : 'show'\n }\n\n const Selector = {\n TITLE : '.popover-header',\n CONTENT : '.popover-body'\n }\n\n const Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n INSERTED : `inserted${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n FOCUSOUT : `focusout${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Popover extends Tooltip {\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get Event() {\n return Event\n }\n\n static get EVENT_KEY() {\n return EVENT_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n addAttachmentClass(attachment) {\n $(this.getTipElement()).addClass(`${CLASS_PREFIX}-${attachment}`)\n }\n\n getTipElement() {\n this.tip = this.tip || $(this.config.template)[0]\n return this.tip\n }\n\n setContent() {\n const $tip = $(this.getTipElement())\n\n // We use append for html objects to maintain js events\n this.setElementContent($tip.find(Selector.TITLE), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this.element)\n }\n this.setElementContent($tip.find(Selector.CONTENT), content)\n\n $tip.removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)\n }\n\n // Private\n\n _getContent() {\n return this.element.getAttribute('data-content') ||\n this.config.content\n }\n\n _cleanTipClass() {\n const $tip = $(this.getTipElement())\n const tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n $tip.removeClass(tabClass.join(''))\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data && /destroy|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Popover(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Popover._jQueryInterface\n $.fn[NAME].Constructor = Popover\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Popover._jQueryInterface\n }\n\n return Popover\n})($)\n\nexport default Popover\n","import $ from 'jquery'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst ScrollSpy = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'scrollspy'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.scrollspy'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n const Default = {\n offset : 10,\n method : 'auto',\n target : ''\n }\n\n const DefaultType = {\n offset : 'number',\n method : 'string',\n target : '(string|element)'\n }\n\n const Event = {\n ACTIVATE : `activate${EVENT_KEY}`,\n SCROLL : `scroll${EVENT_KEY}`,\n LOAD_DATA_API : `load${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n DROPDOWN_ITEM : 'dropdown-item',\n DROPDOWN_MENU : 'dropdown-menu',\n ACTIVE : 'active'\n }\n\n const Selector = {\n DATA_SPY : '[data-spy=\"scroll\"]',\n ACTIVE : '.active',\n NAV_LIST_GROUP : '.nav, .list-group',\n NAV_LINKS : '.nav-link',\n NAV_ITEMS : '.nav-item',\n LIST_ITEMS : '.list-group-item',\n DROPDOWN : '.dropdown',\n DROPDOWN_ITEMS : '.dropdown-item',\n DROPDOWN_TOGGLE : '.dropdown-toggle'\n }\n\n const OffsetMethod = {\n OFFSET : 'offset',\n POSITION : 'position'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class ScrollSpy {\n constructor(element, config) {\n this._element = element\n this._scrollElement = element.tagName === 'BODY' ? window : element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${Selector.NAV_LINKS},` +\n `${this._config.target} ${Selector.LIST_ITEMS},` +\n `${this._config.target} ${Selector.DROPDOWN_ITEMS}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n $(this._scrollElement).on(Event.SCROLL, (event) => this._process(event))\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window\n ? OffsetMethod.OFFSET : OffsetMethod.POSITION\n\n const offsetMethod = this._config.method === 'auto'\n ? autoMethod : this._config.method\n\n const offsetBase = offsetMethod === OffsetMethod.POSITION\n ? this._getScrollTop() : 0\n\n this._offsets = []\n this._targets = []\n\n this._scrollHeight = this._getScrollHeight()\n\n const targets = [].slice.call(document.querySelectorAll(this._selector))\n\n targets\n .map((element) => {\n let target\n const targetSelector = Util.getSelectorFromElement(element)\n\n if (targetSelector) {\n target = document.querySelector(targetSelector)\n }\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n // TODO (fat): remove sketch reliance on jQuery position/offset\n return [\n $(target)[offsetMethod]().top + offsetBase,\n targetSelector\n ]\n }\n }\n return null\n })\n .filter((item) => item)\n .sort((a, b) => a[0] - b[0])\n .forEach((item) => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n $(this._scrollElement).off(EVENT_KEY)\n\n this._element = null\n this._scrollElement = null\n this._config = null\n this._selector = null\n this._offsets = null\n this._targets = null\n this._activeTarget = null\n this._scrollHeight = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (typeof config.target !== 'string') {\n let id = $(config.target).attr('id')\n if (!id) {\n id = Util.getUID(NAME)\n $(config.target).attr('id', id)\n }\n config.target = `#${id}`\n }\n\n Util.typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window\n ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window\n ? window.innerHeight : this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset +\n scrollHeight -\n this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n const offsetLength = this._offsets.length\n for (let i = offsetLength; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' ||\n scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n let queries = this._selector.split(',')\n // eslint-disable-next-line arrow-body-style\n queries = queries.map((selector) => {\n return `${selector}[data-target=\"${target}\"],` +\n `${selector}[href=\"${target}\"]`\n })\n\n const $link = $([].slice.call(document.querySelectorAll(queries.join(','))))\n\n if ($link.hasClass(ClassName.DROPDOWN_ITEM)) {\n $link.closest(Selector.DROPDOWN).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE)\n $link.addClass(ClassName.ACTIVE)\n } else {\n // Set triggered link as active\n $link.addClass(ClassName.ACTIVE)\n // Set triggered links parents as active\n // With both
    ',trigger:"hover focus",title:"",delay:0,html:!(Ie={AUTO:"auto",TOP:"top",RIGHT:"right",BOTTOM:"bottom",LEFT:"left"}),selector:!(Se={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(number|string)",container:"(string|element|boolean)",fallbackPlacement:"(string|array)",boundary:"(string|element)"}),placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent"},we="out",Ne={HIDE:"hide"+Ee,HIDDEN:"hidden"+Ee,SHOW:(De="show")+Ee,SHOWN:"shown"+Ee,INSERTED:"inserted"+Ee,CLICK:"click"+Ee,FOCUSIN:"focusin"+Ee,FOCUSOUT:"focusout"+Ee,MOUSEENTER:"mouseenter"+Ee,MOUSELEAVE:"mouseleave"+Ee},Oe="fade",ke="show",Pe=".tooltip-inner",je=".arrow",He="hover",Le="focus",Re="click",xe="manual",We=function(){function i(t,e){if("undefined"==typeof h)throw new TypeError("Bootstrap tooltips require Popper.js (https://popper.js.org)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var t=i.prototype;return t.enable=function(){this._isEnabled=!0},t.disable=function(){this._isEnabled=!1},t.toggleEnabled=function(){this._isEnabled=!this._isEnabled},t.toggle=function(t){if(this._isEnabled)if(t){var e=this.constructor.DATA_KEY,n=pe(t.currentTarget).data(e);n||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),pe(t.currentTarget).data(e,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(pe(this.getTipElement()).hasClass(ke))return void this._leave(null,this);this._enter(null,this)}},t.dispose=function(){clearTimeout(this._timeout),pe.removeData(this.element,this.constructor.DATA_KEY),pe(this.element).off(this.constructor.EVENT_KEY),pe(this.element).closest(".modal").off("hide.bs.modal"),this.tip&&pe(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,(this._activeTrigger=null)!==this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},t.show=function(){var e=this;if("none"===pe(this.element).css("display"))throw new Error("Please use show on visible elements");var t=pe.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){pe(this.element).trigger(t);var n=pe.contains(this.element.ownerDocument.documentElement,this.element);if(t.isDefaultPrevented()||!n)return;var i=this.getTipElement(),r=Fn.getUID(this.constructor.NAME);i.setAttribute("id",r),this.element.setAttribute("aria-describedby",r),this.setContent(),this.config.animation&&pe(i).addClass(Oe);var o="function"==typeof this.config.placement?this.config.placement.call(this,i,this.element):this.config.placement,s=this._getAttachment(o);this.addAttachmentClass(s);var a=!1===this.config.container?document.body:pe(document).find(this.config.container);pe(i).data(this.constructor.DATA_KEY,this),pe.contains(this.element.ownerDocument.documentElement,this.tip)||pe(i).appendTo(a),pe(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new h(this.element,i,{placement:s,modifiers:{offset:{offset:this.config.offset},flip:{behavior:this.config.fallbackPlacement},arrow:{element:je},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e._handlePopperPlacementChange(t)},onUpdate:function(t){e._handlePopperPlacementChange(t)}}),pe(i).addClass(ke),"ontouchstart"in document.documentElement&&pe(document.body).children().on("mouseover",null,pe.noop);var l=function(){e.config.animation&&e._fixTransition();var t=e._hoverState;e._hoverState=null,pe(e.element).trigger(e.constructor.Event.SHOWN),t===we&&e._leave(null,e)};if(pe(this.tip).hasClass(Oe)){var c=Fn.getTransitionDurationFromElement(this.tip);pe(this.tip).one(Fn.TRANSITION_END,l).emulateTransitionEnd(c)}else l()}},t.hide=function(t){var e=this,n=this.getTipElement(),i=pe.Event(this.constructor.Event.HIDE),r=function(){e._hoverState!==De&&n.parentNode&&n.parentNode.removeChild(n),e._cleanTipClass(),e.element.removeAttribute("aria-describedby"),pe(e.element).trigger(e.constructor.Event.HIDDEN),null!==e._popper&&e._popper.destroy(),t&&t()};if(pe(this.element).trigger(i),!i.isDefaultPrevented()){if(pe(n).removeClass(ke),"ontouchstart"in document.documentElement&&pe(document.body).children().off("mouseover",null,pe.noop),this._activeTrigger[Re]=!1,this._activeTrigger[Le]=!1,this._activeTrigger[He]=!1,pe(this.tip).hasClass(Oe)){var o=Fn.getTransitionDurationFromElement(n);pe(n).one(Fn.TRANSITION_END,r).emulateTransitionEnd(o)}else r();this._hoverState=""}},t.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},t.isWithContent=function(){return Boolean(this.getTitle())},t.addAttachmentClass=function(t){pe(this.getTipElement()).addClass(Te+"-"+t)},t.getTipElement=function(){return this.tip=this.tip||pe(this.config.template)[0],this.tip},t.setContent=function(){var t=this.getTipElement();this.setElementContent(pe(t.querySelectorAll(Pe)),this.getTitle()),pe(t).removeClass(Oe+" "+ke)},t.setElementContent=function(t,e){var n=this.config.html;"object"==typeof e&&(e.nodeType||e.jquery)?n?pe(e).parent().is(t)||t.empty().append(e):t.text(pe(e).text()):t[n?"html":"text"](e)},t.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},t._getAttachment=function(t){return Ie[t.toUpperCase()]},t._setListeners=function(){var i=this;this.config.trigger.split(" ").forEach(function(t){if("click"===t)pe(i.element).on(i.constructor.Event.CLICK,i.config.selector,function(t){return i.toggle(t)});else if(t!==xe){var e=t===He?i.constructor.Event.MOUSEENTER:i.constructor.Event.FOCUSIN,n=t===He?i.constructor.Event.MOUSELEAVE:i.constructor.Event.FOCUSOUT;pe(i.element).on(e,i.config.selector,function(t){return i._enter(t)}).on(n,i.config.selector,function(t){return i._leave(t)})}pe(i.element).closest(".modal").on("hide.bs.modal",function(){return i.hide()})}),this.config.selector?this.config=l({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},t._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},t._enter=function(t,e){var n=this.constructor.DATA_KEY;(e=e||pe(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),pe(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusin"===t.type?Le:He]=!0),pe(e.getTipElement()).hasClass(ke)||e._hoverState===De?e._hoverState=De:(clearTimeout(e._timeout),e._hoverState=De,e.config.delay&&e.config.delay.show?e._timeout=setTimeout(function(){e._hoverState===De&&e.show()},e.config.delay.show):e.show())},t._leave=function(t,e){var n=this.constructor.DATA_KEY;(e=e||pe(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),pe(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusout"===t.type?Le:He]=!1),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=we,e.config.delay&&e.config.delay.hide?e._timeout=setTimeout(function(){e._hoverState===we&&e.hide()},e.config.delay.hide):e.hide())},t._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},t._getConfig=function(t){return"number"==typeof(t=l({},this.constructor.Default,pe(this.element).data(),"object"==typeof t&&t?t:{})).delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),Fn.typeCheckConfig(ve,t,this.constructor.DefaultType),t},t._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},t._cleanTipClass=function(){var t=pe(this.getTipElement()),e=t.attr("class").match(be);null!==e&&e.length&&t.removeClass(e.join(""))},t._handlePopperPlacementChange=function(t){var e=t.instance;this.tip=e.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},t._fixTransition=function(){var t=this.getTipElement(),e=this.config.animation;null===t.getAttribute("x-placement")&&(pe(t).removeClass(Oe),this.config.animation=!1,this.hide(),this.show(),this.config.animation=e)},i._jQueryInterface=function(n){return this.each(function(){var t=pe(this).data(ye),e="object"==typeof n&&n;if((t||!/dispose|hide/.test(n))&&(t||(t=new i(this,e),pe(this).data(ye,t)),"string"==typeof n)){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.1.3"}},{key:"Default",get:function(){return Ae}},{key:"NAME",get:function(){return ve}},{key:"DATA_KEY",get:function(){return ye}},{key:"Event",get:function(){return Ne}},{key:"EVENT_KEY",get:function(){return Ee}},{key:"DefaultType",get:function(){return Se}}]),i}(),pe.fn[ve]=We._jQueryInterface,pe.fn[ve].Constructor=We,pe.fn[ve].noConflict=function(){return pe.fn[ve]=Ce,We._jQueryInterface},We),Jn=(qe="popover",Ke="."+(Fe="bs.popover"),Me=(Ue=e).fn[qe],Qe="bs-popover",Be=new RegExp("(^|\\s)"+Qe+"\\S+","g"),Ve=l({},zn.Default,{placement:"right",trigger:"click",content:"",template:''}),Ye=l({},zn.DefaultType,{content:"(string|element|function)"}),ze="fade",Ze=".popover-header",Ge=".popover-body",$e={HIDE:"hide"+Ke,HIDDEN:"hidden"+Ke,SHOW:(Je="show")+Ke,SHOWN:"shown"+Ke,INSERTED:"inserted"+Ke,CLICK:"click"+Ke,FOCUSIN:"focusin"+Ke,FOCUSOUT:"focusout"+Ke,MOUSEENTER:"mouseenter"+Ke,MOUSELEAVE:"mouseleave"+Ke},Xe=function(t){var e,n;function i(){return t.apply(this,arguments)||this}n=t,(e=i).prototype=Object.create(n.prototype),(e.prototype.constructor=e).__proto__=n;var r=i.prototype;return r.isWithContent=function(){return this.getTitle()||this._getContent()},r.addAttachmentClass=function(t){Ue(this.getTipElement()).addClass(Qe+"-"+t)},r.getTipElement=function(){return this.tip=this.tip||Ue(this.config.template)[0],this.tip},r.setContent=function(){var t=Ue(this.getTipElement());this.setElementContent(t.find(Ze),this.getTitle());var e=this._getContent();"function"==typeof e&&(e=e.call(this.element)),this.setElementContent(t.find(Ge),e),t.removeClass(ze+" "+Je)},r._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},r._cleanTipClass=function(){var t=Ue(this.getTipElement()),e=t.attr("class").match(Be);null!==e&&0=this._offsets[r]&&("undefined"==typeof this._offsets[r+1]||t {\n /**\n * ------------------------------------------------------------------------\n * Private TransitionEnd Helpers\n * ------------------------------------------------------------------------\n */\n\n const TRANSITION_END = 'transitionend'\n const MAX_UID = 1000000\n const MILLISECONDS_MULTIPLIER = 1000\n\n // Shoutout AngusCroll (https://goo.gl/pxwQGp)\n function toType(obj) {\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n }\n\n function getSpecialTransitionEndEvent() {\n return {\n bindType: TRANSITION_END,\n delegateType: TRANSITION_END,\n handle(event) {\n if ($(event.target).is(this)) {\n return event.handleObj.handler.apply(this, arguments) // eslint-disable-line prefer-rest-params\n }\n return undefined // eslint-disable-line no-undefined\n }\n }\n }\n\n function transitionEndEmulator(duration) {\n let called = false\n\n $(this).one(Util.TRANSITION_END, () => {\n called = true\n })\n\n setTimeout(() => {\n if (!called) {\n Util.triggerTransitionEnd(this)\n }\n }, duration)\n\n return this\n }\n\n function setTransitionEndSupport() {\n $.fn.emulateTransitionEnd = transitionEndEmulator\n $.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent()\n }\n\n /**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\n const Util = {\n\n TRANSITION_END: 'bsTransitionEnd',\n\n getUID(prefix) {\n do {\n // eslint-disable-next-line no-bitwise\n prefix += ~~(Math.random() * MAX_UID) // \"~~\" acts like a faster Math.floor() here\n } while (document.getElementById(prefix))\n return prefix\n },\n\n getSelectorFromElement(element) {\n let selector = element.getAttribute('data-target')\n if (!selector || selector === '#') {\n selector = element.getAttribute('href') || ''\n }\n\n try {\n return document.querySelector(selector) ? selector : null\n } catch (err) {\n return null\n }\n },\n\n getTransitionDurationFromElement(element) {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let transitionDuration = $(element).css('transition-duration')\n const floatTransitionDuration = parseFloat(transitionDuration)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n\n return parseFloat(transitionDuration) * MILLISECONDS_MULTIPLIER\n },\n\n reflow(element) {\n return element.offsetHeight\n },\n\n triggerTransitionEnd(element) {\n $(element).trigger(TRANSITION_END)\n },\n\n // TODO: Remove in v5\n supportsTransitionEnd() {\n return Boolean(TRANSITION_END)\n },\n\n isElement(obj) {\n return (obj[0] || obj).nodeType\n },\n\n typeCheckConfig(componentName, config, configTypes) {\n for (const property in configTypes) {\n if (Object.prototype.hasOwnProperty.call(configTypes, property)) {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && Util.isElement(value)\n ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new Error(\n `${componentName.toUpperCase()}: ` +\n `Option \"${property}\" provided type \"${valueType}\" ` +\n `but expected type \"${expectedTypes}\".`)\n }\n }\n }\n }\n }\n\n setTransitionEndSupport()\n\n return Util\n})($)\n\nexport default Util\n","import $ from 'jquery'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Alert = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'alert'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.alert'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n const Selector = {\n DISMISS : '[data-dismiss=\"alert\"]'\n }\n\n const Event = {\n CLOSE : `close${EVENT_KEY}`,\n CLOSED : `closed${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n ALERT : 'alert',\n FADE : 'fade',\n SHOW : 'show'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Alert {\n constructor(element) {\n this._element = element\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n // Public\n\n close(element) {\n let rootElement = this._element\n if (element) {\n rootElement = this._getRootElement(element)\n }\n\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent.isDefaultPrevented()) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n this._element = null\n }\n\n // Private\n\n _getRootElement(element) {\n const selector = Util.getSelectorFromElement(element)\n let parent = false\n\n if (selector) {\n parent = document.querySelector(selector)\n }\n\n if (!parent) {\n parent = $(element).closest(`.${ClassName.ALERT}`)[0]\n }\n\n return parent\n }\n\n _triggerCloseEvent(element) {\n const closeEvent = $.Event(Event.CLOSE)\n\n $(element).trigger(closeEvent)\n return closeEvent\n }\n\n _removeElement(element) {\n $(element).removeClass(ClassName.SHOW)\n\n if (!$(element).hasClass(ClassName.FADE)) {\n this._destroyElement(element)\n return\n }\n\n const transitionDuration = Util.getTransitionDurationFromElement(element)\n\n $(element)\n .one(Util.TRANSITION_END, (event) => this._destroyElement(element, event))\n .emulateTransitionEnd(transitionDuration)\n }\n\n _destroyElement(element) {\n $(element)\n .detach()\n .trigger(Event.CLOSED)\n .remove()\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n const $element = $(this)\n let data = $element.data(DATA_KEY)\n\n if (!data) {\n data = new Alert(this)\n $element.data(DATA_KEY, data)\n }\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static _handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document).on(\n Event.CLICK_DATA_API,\n Selector.DISMISS,\n Alert._handleDismiss(new Alert())\n )\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Alert._jQueryInterface\n $.fn[NAME].Constructor = Alert\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Alert._jQueryInterface\n }\n\n return Alert\n})($)\n\nexport default Alert\n","import $ from 'jquery'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Button = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'button'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.button'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n const ClassName = {\n ACTIVE : 'active',\n BUTTON : 'btn',\n FOCUS : 'focus'\n }\n\n const Selector = {\n DATA_TOGGLE_CARROT : '[data-toggle^=\"button\"]',\n DATA_TOGGLE : '[data-toggle=\"buttons\"]',\n INPUT : 'input',\n ACTIVE : '.active',\n BUTTON : '.btn'\n }\n\n const Event = {\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`,\n FOCUS_BLUR_DATA_API : `focus${EVENT_KEY}${DATA_API_KEY} ` +\n `blur${EVENT_KEY}${DATA_API_KEY}`\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Button {\n constructor(element) {\n this._element = element\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n // Public\n\n toggle() {\n let triggerChangeEvent = true\n let addAriaPressed = true\n const rootElement = $(this._element).closest(\n Selector.DATA_TOGGLE\n )[0]\n\n if (rootElement) {\n const input = this._element.querySelector(Selector.INPUT)\n\n if (input) {\n if (input.type === 'radio') {\n if (input.checked &&\n this._element.classList.contains(ClassName.ACTIVE)) {\n triggerChangeEvent = false\n } else {\n const activeElement = rootElement.querySelector(Selector.ACTIVE)\n\n if (activeElement) {\n $(activeElement).removeClass(ClassName.ACTIVE)\n }\n }\n }\n\n if (triggerChangeEvent) {\n if (input.hasAttribute('disabled') ||\n rootElement.hasAttribute('disabled') ||\n input.classList.contains('disabled') ||\n rootElement.classList.contains('disabled')) {\n return\n }\n input.checked = !this._element.classList.contains(ClassName.ACTIVE)\n $(input).trigger('change')\n }\n\n input.focus()\n addAriaPressed = false\n }\n }\n\n if (addAriaPressed) {\n this._element.setAttribute('aria-pressed',\n !this._element.classList.contains(ClassName.ACTIVE))\n }\n\n if (triggerChangeEvent) {\n $(this._element).toggleClass(ClassName.ACTIVE)\n }\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n this._element = null\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n\n if (!data) {\n data = new Button(this)\n $(this).data(DATA_KEY, data)\n }\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document)\n .on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE_CARROT, (event) => {\n event.preventDefault()\n\n let button = event.target\n\n if (!$(button).hasClass(ClassName.BUTTON)) {\n button = $(button).closest(Selector.BUTTON)\n }\n\n Button._jQueryInterface.call($(button), 'toggle')\n })\n .on(Event.FOCUS_BLUR_DATA_API, Selector.DATA_TOGGLE_CARROT, (event) => {\n const button = $(event.target).closest(Selector.BUTTON)[0]\n $(button).toggleClass(ClassName.FOCUS, /^focus(in)?$/.test(event.type))\n })\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Button._jQueryInterface\n $.fn[NAME].Constructor = Button\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Button._jQueryInterface\n }\n\n return Button\n})($)\n\nexport default Button\n","import $ from 'jquery'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Carousel = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'carousel'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.carousel'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const ARROW_LEFT_KEYCODE = 37 // KeyboardEvent.which value for left arrow key\n const ARROW_RIGHT_KEYCODE = 39 // KeyboardEvent.which value for right arrow key\n const TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\n\n const Default = {\n interval : 5000,\n keyboard : true,\n slide : false,\n pause : 'hover',\n wrap : true\n }\n\n const DefaultType = {\n interval : '(number|boolean)',\n keyboard : 'boolean',\n slide : '(boolean|string)',\n pause : '(string|boolean)',\n wrap : 'boolean'\n }\n\n const Direction = {\n NEXT : 'next',\n PREV : 'prev',\n LEFT : 'left',\n RIGHT : 'right'\n }\n\n const Event = {\n SLIDE : `slide${EVENT_KEY}`,\n SLID : `slid${EVENT_KEY}`,\n KEYDOWN : `keydown${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`,\n TOUCHEND : `touchend${EVENT_KEY}`,\n LOAD_DATA_API : `load${EVENT_KEY}${DATA_API_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n CAROUSEL : 'carousel',\n ACTIVE : 'active',\n SLIDE : 'slide',\n RIGHT : 'carousel-item-right',\n LEFT : 'carousel-item-left',\n NEXT : 'carousel-item-next',\n PREV : 'carousel-item-prev',\n ITEM : 'carousel-item'\n }\n\n const Selector = {\n ACTIVE : '.active',\n ACTIVE_ITEM : '.active.carousel-item',\n ITEM : '.carousel-item',\n NEXT_PREV : '.carousel-item-next, .carousel-item-prev',\n INDICATORS : '.carousel-indicators',\n DATA_SLIDE : '[data-slide], [data-slide-to]',\n DATA_RIDE : '[data-ride=\"carousel\"]'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Carousel {\n constructor(element, config) {\n this._items = null\n this._interval = null\n this._activeElement = null\n\n this._isPaused = false\n this._isSliding = false\n\n this.touchTimeout = null\n\n this._config = this._getConfig(config)\n this._element = $(element)[0]\n this._indicatorsElement = this._element.querySelector(Selector.INDICATORS)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n next() {\n if (!this._isSliding) {\n this._slide(Direction.NEXT)\n }\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden &&\n ($(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden')) {\n this.next()\n }\n }\n\n prev() {\n if (!this._isSliding) {\n this._slide(Direction.PREV)\n }\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (this._element.querySelector(Selector.NEXT_PREV)) {\n Util.triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config.interval && !this._isPaused) {\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = this._element.querySelector(Selector.ACTIVE_ITEM)\n\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n $(this._element).one(Event.SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const direction = index > activeIndex\n ? Direction.NEXT\n : Direction.PREV\n\n this._slide(direction, this._items[index])\n }\n\n dispose() {\n $(this._element).off(EVENT_KEY)\n $.removeData(this._element, DATA_KEY)\n\n this._items = null\n this._config = null\n this._element = null\n this._interval = null\n this._isPaused = null\n this._isSliding = null\n this._activeElement = null\n this._indicatorsElement = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n $(this._element)\n .on(Event.KEYDOWN, (event) => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n $(this._element)\n .on(Event.MOUSEENTER, (event) => this.pause(event))\n .on(Event.MOUSELEAVE, (event) => this.cycle(event))\n if ('ontouchstart' in document.documentElement) {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n $(this._element).on(Event.TOUCHEND, () => {\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n this.touchTimeout = setTimeout((event) => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n })\n }\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n switch (event.which) {\n case ARROW_LEFT_KEYCODE:\n event.preventDefault()\n this.prev()\n break\n case ARROW_RIGHT_KEYCODE:\n event.preventDefault()\n this.next()\n break\n default:\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode\n ? [].slice.call(element.parentNode.querySelectorAll(Selector.ITEM))\n : []\n return this._items.indexOf(element)\n }\n\n _getItemByDirection(direction, activeElement) {\n const isNextDirection = direction === Direction.NEXT\n const isPrevDirection = direction === Direction.PREV\n const activeIndex = this._getItemIndex(activeElement)\n const lastItemIndex = this._items.length - 1\n const isGoingToWrap = isPrevDirection && activeIndex === 0 ||\n isNextDirection && activeIndex === lastItemIndex\n\n if (isGoingToWrap && !this._config.wrap) {\n return activeElement\n }\n\n const delta = direction === Direction.PREV ? -1 : 1\n const itemIndex = (activeIndex + delta) % this._items.length\n\n return itemIndex === -1\n ? this._items[this._items.length - 1] : this._items[itemIndex]\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(this._element.querySelector(Selector.ACTIVE_ITEM))\n const slideEvent = $.Event(Event.SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n\n $(this._element).trigger(slideEvent)\n\n return slideEvent\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const indicators = [].slice.call(this._indicatorsElement.querySelectorAll(Selector.ACTIVE))\n $(indicators)\n .removeClass(ClassName.ACTIVE)\n\n const nextIndicator = this._indicatorsElement.children[\n this._getItemIndex(element)\n ]\n\n if (nextIndicator) {\n $(nextIndicator).addClass(ClassName.ACTIVE)\n }\n }\n }\n\n _slide(direction, element) {\n const activeElement = this._element.querySelector(Selector.ACTIVE_ITEM)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || activeElement &&\n this._getItemByDirection(direction, activeElement)\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n let directionalClassName\n let orderClassName\n let eventDirectionName\n\n if (direction === Direction.NEXT) {\n directionalClassName = ClassName.LEFT\n orderClassName = ClassName.NEXT\n eventDirectionName = Direction.LEFT\n } else {\n directionalClassName = ClassName.RIGHT\n orderClassName = ClassName.PREV\n eventDirectionName = Direction.RIGHT\n }\n\n if (nextElement && $(nextElement).hasClass(ClassName.ACTIVE)) {\n this._isSliding = false\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.isDefaultPrevented()) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n\n const slidEvent = $.Event(Event.SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n\n if ($(this._element).hasClass(ClassName.SLIDE)) {\n $(nextElement).addClass(orderClassName)\n\n Util.reflow(nextElement)\n\n $(activeElement).addClass(directionalClassName)\n $(nextElement).addClass(directionalClassName)\n\n const transitionDuration = Util.getTransitionDurationFromElement(activeElement)\n\n $(activeElement)\n .one(Util.TRANSITION_END, () => {\n $(nextElement)\n .removeClass(`${directionalClassName} ${orderClassName}`)\n .addClass(ClassName.ACTIVE)\n\n $(activeElement).removeClass(`${ClassName.ACTIVE} ${orderClassName} ${directionalClassName}`)\n\n this._isSliding = false\n\n setTimeout(() => $(this._element).trigger(slidEvent), 0)\n })\n .emulateTransitionEnd(transitionDuration)\n } else {\n $(activeElement).removeClass(ClassName.ACTIVE)\n $(nextElement).addClass(ClassName.ACTIVE)\n\n this._isSliding = false\n $(this._element).trigger(slidEvent)\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n let _config = {\n ...Default,\n ...$(this).data()\n }\n\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (!data) {\n data = new Carousel(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n data[action]()\n } else if (_config.interval) {\n data.pause()\n data.cycle()\n }\n })\n }\n\n static _dataApiClickHandler(event) {\n const selector = Util.getSelectorFromElement(this)\n\n if (!selector) {\n return\n }\n\n const target = $(selector)[0]\n\n if (!target || !$(target).hasClass(ClassName.CAROUSEL)) {\n return\n }\n\n const config = {\n ...$(target).data(),\n ...$(this).data()\n }\n const slideIndex = this.getAttribute('data-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel._jQueryInterface.call($(target), config)\n\n if (slideIndex) {\n $(target).data(DATA_KEY).to(slideIndex)\n }\n\n event.preventDefault()\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document)\n .on(Event.CLICK_DATA_API, Selector.DATA_SLIDE, Carousel._dataApiClickHandler)\n\n $(window).on(Event.LOAD_DATA_API, () => {\n const carousels = [].slice.call(document.querySelectorAll(Selector.DATA_RIDE))\n for (let i = 0, len = carousels.length; i < len; i++) {\n const $carousel = $(carousels[i])\n Carousel._jQueryInterface.call($carousel, $carousel.data())\n }\n })\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Carousel._jQueryInterface\n $.fn[NAME].Constructor = Carousel\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Carousel._jQueryInterface\n }\n\n return Carousel\n})($)\n\nexport default Carousel\n","import $ from 'jquery'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Collapse = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'collapse'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.collapse'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n const Default = {\n toggle : true,\n parent : ''\n }\n\n const DefaultType = {\n toggle : 'boolean',\n parent : '(string|element)'\n }\n\n const Event = {\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n SHOW : 'show',\n COLLAPSE : 'collapse',\n COLLAPSING : 'collapsing',\n COLLAPSED : 'collapsed'\n }\n\n const Dimension = {\n WIDTH : 'width',\n HEIGHT : 'height'\n }\n\n const Selector = {\n ACTIVES : '.show, .collapsing',\n DATA_TOGGLE : '[data-toggle=\"collapse\"]'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Collapse {\n constructor(element, config) {\n this._isTransitioning = false\n this._element = element\n this._config = this._getConfig(config)\n this._triggerArray = $.makeArray(document.querySelectorAll(\n `[data-toggle=\"collapse\"][href=\"#${element.id}\"],` +\n `[data-toggle=\"collapse\"][data-target=\"#${element.id}\"]`\n ))\n const toggleList = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE))\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = Util.getSelectorFromElement(elem)\n const filterElement = [].slice.call(document.querySelectorAll(selector))\n .filter((foundElem) => foundElem === element)\n\n if (selector !== null && filterElement.length > 0) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle() {\n if ($(this._element).hasClass(ClassName.SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning ||\n $(this._element).hasClass(ClassName.SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = [].slice.call(this._parent.querySelectorAll(Selector.ACTIVES))\n .filter((elem) => elem.getAttribute('data-parent') === this._config.parent)\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n if (actives) {\n activesData = $(actives).not(this._selector).data(DATA_KEY)\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = $.Event(Event.SHOW)\n $(this._element).trigger(startEvent)\n if (startEvent.isDefaultPrevented()) {\n return\n }\n\n if (actives) {\n Collapse._jQueryInterface.call($(actives).not(this._selector), 'hide')\n if (!activesData) {\n $(actives).data(DATA_KEY, null)\n }\n }\n\n const dimension = this._getDimension()\n\n $(this._element)\n .removeClass(ClassName.COLLAPSE)\n .addClass(ClassName.COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n $(this._triggerArray)\n .removeClass(ClassName.COLLAPSED)\n .attr('aria-expanded', true)\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n $(this._element)\n .removeClass(ClassName.COLLAPSING)\n .addClass(ClassName.COLLAPSE)\n .addClass(ClassName.SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n $(this._element).trigger(Event.SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning ||\n !$(this._element).hasClass(ClassName.SHOW)) {\n return\n }\n\n const startEvent = $.Event(Event.HIDE)\n $(this._element).trigger(startEvent)\n if (startEvent.isDefaultPrevented()) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n Util.reflow(this._element)\n\n $(this._element)\n .addClass(ClassName.COLLAPSING)\n .removeClass(ClassName.COLLAPSE)\n .removeClass(ClassName.SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const selector = Util.getSelectorFromElement(trigger)\n if (selector !== null) {\n const $elem = $([].slice.call(document.querySelectorAll(selector)))\n if (!$elem.hasClass(ClassName.SHOW)) {\n $(trigger).addClass(ClassName.COLLAPSED)\n .attr('aria-expanded', false)\n }\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n $(this._element)\n .removeClass(ClassName.COLLAPSING)\n .addClass(ClassName.COLLAPSE)\n .trigger(Event.HIDDEN)\n }\n\n this._element.style[dimension] = ''\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n\n this._config = null\n this._parent = null\n this._element = null\n this._triggerArray = null\n this._isTransitioning = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n const hasWidth = $(this._element).hasClass(Dimension.WIDTH)\n return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT\n }\n\n _getParent() {\n let parent = null\n if (Util.isElement(this._config.parent)) {\n parent = this._config.parent\n\n // It's a jQuery object\n if (typeof this._config.parent.jquery !== 'undefined') {\n parent = this._config.parent[0]\n }\n } else {\n parent = document.querySelector(this._config.parent)\n }\n\n const selector =\n `[data-toggle=\"collapse\"][data-parent=\"${this._config.parent}\"]`\n\n const children = [].slice.call(parent.querySelectorAll(selector))\n $(children).each((i, element) => {\n this._addAriaAndCollapsedClass(\n Collapse._getTargetFromElement(element),\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (element) {\n const isOpen = $(element).hasClass(ClassName.SHOW)\n\n if (triggerArray.length) {\n $(triggerArray)\n .toggleClass(ClassName.COLLAPSED, !isOpen)\n .attr('aria-expanded', isOpen)\n }\n }\n }\n\n // Static\n\n static _getTargetFromElement(element) {\n const selector = Util.getSelectorFromElement(element)\n return selector ? document.querySelector(selector) : null\n }\n\n static _jQueryInterface(config) {\n return this.each(function () {\n const $this = $(this)\n let data = $this.data(DATA_KEY)\n const _config = {\n ...Default,\n ...$this.data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (!data && _config.toggle && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(this, _config)\n $this.data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n // preventDefault only for elements (which change the URL) not inside the collapsible element\n if (event.currentTarget.tagName === 'A') {\n event.preventDefault()\n }\n\n const $trigger = $(this)\n const selector = Util.getSelectorFromElement(this)\n const selectors = [].slice.call(document.querySelectorAll(selector))\n $(selectors).each(function () {\n const $target = $(this)\n const data = $target.data(DATA_KEY)\n const config = data ? 'toggle' : $trigger.data()\n Collapse._jQueryInterface.call($target, config)\n })\n })\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Collapse._jQueryInterface\n $.fn[NAME].Constructor = Collapse\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Collapse._jQueryInterface\n }\n\n return Collapse\n})($)\n\nexport default Collapse\n","import $ from 'jquery'\nimport Popper from 'popper.js'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Dropdown = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'dropdown'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.dropdown'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const ESCAPE_KEYCODE = 27 // KeyboardEvent.which value for Escape (Esc) key\n const SPACE_KEYCODE = 32 // KeyboardEvent.which value for space key\n const TAB_KEYCODE = 9 // KeyboardEvent.which value for tab key\n const ARROW_UP_KEYCODE = 38 // KeyboardEvent.which value for up arrow key\n const ARROW_DOWN_KEYCODE = 40 // KeyboardEvent.which value for down arrow key\n const RIGHT_MOUSE_BUTTON_WHICH = 3 // MouseEvent.which value for the right button (assuming a right-handed mouse)\n const REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEYCODE}|${ARROW_DOWN_KEYCODE}|${ESCAPE_KEYCODE}`)\n\n const Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`,\n KEYDOWN_DATA_API : `keydown${EVENT_KEY}${DATA_API_KEY}`,\n KEYUP_DATA_API : `keyup${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n DISABLED : 'disabled',\n SHOW : 'show',\n DROPUP : 'dropup',\n DROPRIGHT : 'dropright',\n DROPLEFT : 'dropleft',\n MENURIGHT : 'dropdown-menu-right',\n MENULEFT : 'dropdown-menu-left',\n POSITION_STATIC : 'position-static'\n }\n\n const Selector = {\n DATA_TOGGLE : '[data-toggle=\"dropdown\"]',\n FORM_CHILD : '.dropdown form',\n MENU : '.dropdown-menu',\n NAVBAR_NAV : '.navbar-nav',\n VISIBLE_ITEMS : '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n }\n\n const AttachmentMap = {\n TOP : 'top-start',\n TOPEND : 'top-end',\n BOTTOM : 'bottom-start',\n BOTTOMEND : 'bottom-end',\n RIGHT : 'right-start',\n RIGHTEND : 'right-end',\n LEFT : 'left-start',\n LEFTEND : 'left-end'\n }\n\n const Default = {\n offset : 0,\n flip : true,\n boundary : 'scrollParent',\n reference : 'toggle',\n display : 'dynamic'\n }\n\n const DefaultType = {\n offset : '(number|string|function)',\n flip : 'boolean',\n boundary : '(string|element)',\n reference : '(string|element)',\n display : 'string'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Dropdown {\n constructor(element, config) {\n this._element = element\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n toggle() {\n if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED)) {\n return\n }\n\n const parent = Dropdown._getParentFromElement(this._element)\n const isActive = $(this._menu).hasClass(ClassName.SHOW)\n\n Dropdown._clearMenus()\n\n if (isActive) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n const showEvent = $.Event(Event.SHOW, relatedTarget)\n\n $(parent).trigger(showEvent)\n\n if (showEvent.isDefaultPrevented()) {\n return\n }\n\n // Disable totally Popper.js for Dropdown in Navbar\n if (!this._inNavbar) {\n /**\n * Check for Popper dependency\n * Popper - https://popper.js.org\n */\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap dropdown require Popper.js (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (Util.isElement(this._config.reference)) {\n referenceElement = this._config.reference\n\n // Check if it's jQuery element\n if (typeof this._config.reference.jquery !== 'undefined') {\n referenceElement = this._config.reference[0]\n }\n }\n\n // If boundary is not `scrollParent`, then set position to `static`\n // to allow the menu to \"escape\" the scroll parent's boundaries\n // https://github.com/twbs/bootstrap/issues/24251\n if (this._config.boundary !== 'scrollParent') {\n $(parent).addClass(ClassName.POSITION_STATIC)\n }\n this._popper = new Popper(referenceElement, this._menu, this._getPopperConfig())\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n $(parent).closest(Selector.NAVBAR_NAV).length === 0) {\n $(document.body).children().on('mouseover', null, $.noop)\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n $(this._menu).toggleClass(ClassName.SHOW)\n $(parent)\n .toggleClass(ClassName.SHOW)\n .trigger($.Event(Event.SHOWN, relatedTarget))\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n $(this._element).off(EVENT_KEY)\n this._element = null\n this._menu = null\n if (this._popper !== null) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper !== null) {\n this._popper.scheduleUpdate()\n }\n }\n\n // Private\n\n _addEventListeners() {\n $(this._element).on(Event.CLICK, (event) => {\n event.preventDefault()\n event.stopPropagation()\n this.toggle()\n })\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...$(this._element).data(),\n ...config\n }\n\n Util.typeCheckConfig(\n NAME,\n config,\n this.constructor.DefaultType\n )\n\n return config\n }\n\n _getMenuElement() {\n if (!this._menu) {\n const parent = Dropdown._getParentFromElement(this._element)\n if (parent) {\n this._menu = parent.querySelector(Selector.MENU)\n }\n }\n return this._menu\n }\n\n _getPlacement() {\n const $parentDropdown = $(this._element.parentNode)\n let placement = AttachmentMap.BOTTOM\n\n // Handle dropup\n if ($parentDropdown.hasClass(ClassName.DROPUP)) {\n placement = AttachmentMap.TOP\n if ($(this._menu).hasClass(ClassName.MENURIGHT)) {\n placement = AttachmentMap.TOPEND\n }\n } else if ($parentDropdown.hasClass(ClassName.DROPRIGHT)) {\n placement = AttachmentMap.RIGHT\n } else if ($parentDropdown.hasClass(ClassName.DROPLEFT)) {\n placement = AttachmentMap.LEFT\n } else if ($(this._menu).hasClass(ClassName.MENURIGHT)) {\n placement = AttachmentMap.BOTTOMEND\n }\n return placement\n }\n\n _detectNavbar() {\n return $(this._element).closest('.navbar').length > 0\n }\n\n _getPopperConfig() {\n const offsetConf = {}\n if (typeof this._config.offset === 'function') {\n offsetConf.fn = (data) => {\n data.offsets = {\n ...data.offsets,\n ...this._config.offset(data.offsets) || {}\n }\n return data\n }\n } else {\n offsetConf.offset = this._config.offset\n }\n\n const popperConfig = {\n placement: this._getPlacement(),\n modifiers: {\n offset: offsetConf,\n flip: {\n enabled: this._config.flip\n },\n preventOverflow: {\n boundariesElement: this._config.boundary\n }\n }\n }\n\n // Disable Popper.js if we have a static display\n if (this._config.display === 'static') {\n popperConfig.modifiers.applyStyle = {\n enabled: false\n }\n }\n return popperConfig\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data) {\n data = new Dropdown(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n\n static _clearMenus(event) {\n if (event && (event.which === RIGHT_MOUSE_BUTTON_WHICH ||\n event.type === 'keyup' && event.which !== TAB_KEYCODE)) {\n return\n }\n\n const toggles = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE))\n for (let i = 0, len = toggles.length; i < len; i++) {\n const parent = Dropdown._getParentFromElement(toggles[i])\n const context = $(toggles[i]).data(DATA_KEY)\n const relatedTarget = {\n relatedTarget: toggles[i]\n }\n\n if (event && event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n\n if (!context) {\n continue\n }\n\n const dropdownMenu = context._menu\n if (!$(parent).hasClass(ClassName.SHOW)) {\n continue\n }\n\n if (event && (event.type === 'click' &&\n /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) &&\n $.contains(parent, event.target)) {\n continue\n }\n\n const hideEvent = $.Event(Event.HIDE, relatedTarget)\n $(parent).trigger(hideEvent)\n if (hideEvent.isDefaultPrevented()) {\n continue\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().off('mouseover', null, $.noop)\n }\n\n toggles[i].setAttribute('aria-expanded', 'false')\n\n $(dropdownMenu).removeClass(ClassName.SHOW)\n $(parent)\n .removeClass(ClassName.SHOW)\n .trigger($.Event(Event.HIDDEN, relatedTarget))\n }\n }\n\n static _getParentFromElement(element) {\n let parent\n const selector = Util.getSelectorFromElement(element)\n\n if (selector) {\n parent = document.querySelector(selector)\n }\n\n return parent || element.parentNode\n }\n\n // eslint-disable-next-line complexity\n static _dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName)\n ? event.which === SPACE_KEYCODE || event.which !== ESCAPE_KEYCODE &&\n (event.which !== ARROW_DOWN_KEYCODE && event.which !== ARROW_UP_KEYCODE ||\n $(event.target).closest(Selector.MENU).length) : !REGEXP_KEYDOWN.test(event.which)) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (this.disabled || $(this).hasClass(ClassName.DISABLED)) {\n return\n }\n\n const parent = Dropdown._getParentFromElement(this)\n const isActive = $(parent).hasClass(ClassName.SHOW)\n\n if (!isActive && (event.which !== ESCAPE_KEYCODE || event.which !== SPACE_KEYCODE) ||\n isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) {\n if (event.which === ESCAPE_KEYCODE) {\n const toggle = parent.querySelector(Selector.DATA_TOGGLE)\n $(toggle).trigger('focus')\n }\n\n $(this).trigger('click')\n return\n }\n\n const items = [].slice.call(parent.querySelectorAll(Selector.VISIBLE_ITEMS))\n\n if (items.length === 0) {\n return\n }\n\n let index = items.indexOf(event.target)\n\n if (event.which === ARROW_UP_KEYCODE && index > 0) { // Up\n index--\n }\n\n if (event.which === ARROW_DOWN_KEYCODE && index < items.length - 1) { // Down\n index++\n }\n\n if (index < 0) {\n index = 0\n }\n\n items[index].focus()\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document)\n .on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler)\n .on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler)\n .on(`${Event.CLICK_DATA_API} ${Event.KEYUP_DATA_API}`, Dropdown._clearMenus)\n .on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n event.preventDefault()\n event.stopPropagation()\n Dropdown._jQueryInterface.call($(this), 'toggle')\n })\n .on(Event.CLICK_DATA_API, Selector.FORM_CHILD, (e) => {\n e.stopPropagation()\n })\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Dropdown._jQueryInterface\n $.fn[NAME].Constructor = Dropdown\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Dropdown._jQueryInterface\n }\n\n return Dropdown\n})($, Popper)\n\nexport default Dropdown\n","import $ from 'jquery'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Modal = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'modal'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.modal'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const ESCAPE_KEYCODE = 27 // KeyboardEvent.which value for Escape (Esc) key\n\n const Default = {\n backdrop : true,\n keyboard : true,\n focus : true,\n show : true\n }\n\n const DefaultType = {\n backdrop : '(boolean|string)',\n keyboard : 'boolean',\n focus : 'boolean',\n show : 'boolean'\n }\n\n const Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n RESIZE : `resize${EVENT_KEY}`,\n CLICK_DISMISS : `click.dismiss${EVENT_KEY}`,\n KEYDOWN_DISMISS : `keydown.dismiss${EVENT_KEY}`,\n MOUSEUP_DISMISS : `mouseup.dismiss${EVENT_KEY}`,\n MOUSEDOWN_DISMISS : `mousedown.dismiss${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n SCROLLBAR_MEASURER : 'modal-scrollbar-measure',\n BACKDROP : 'modal-backdrop',\n OPEN : 'modal-open',\n FADE : 'fade',\n SHOW : 'show'\n }\n\n const Selector = {\n DIALOG : '.modal-dialog',\n DATA_TOGGLE : '[data-toggle=\"modal\"]',\n DATA_DISMISS : '[data-dismiss=\"modal\"]',\n FIXED_CONTENT : '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',\n STICKY_CONTENT : '.sticky-top'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Modal {\n constructor(element, config) {\n this._config = this._getConfig(config)\n this._element = element\n this._dialog = element.querySelector(Selector.DIALOG)\n this._backdrop = null\n this._isShown = false\n this._isBodyOverflowing = false\n this._ignoreBackdropClick = false\n this._scrollbarWidth = 0\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isTransitioning || this._isShown) {\n return\n }\n\n if ($(this._element).hasClass(ClassName.FADE)) {\n this._isTransitioning = true\n }\n\n const showEvent = $.Event(Event.SHOW, {\n relatedTarget\n })\n\n $(this._element).trigger(showEvent)\n\n if (this._isShown || showEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = true\n\n this._checkScrollbar()\n this._setScrollbar()\n\n this._adjustDialog()\n\n $(document.body).addClass(ClassName.OPEN)\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(this._element).on(\n Event.CLICK_DISMISS,\n Selector.DATA_DISMISS,\n (event) => this.hide(event)\n )\n\n $(this._dialog).on(Event.MOUSEDOWN_DISMISS, () => {\n $(this._element).one(Event.MOUSEUP_DISMISS, (event) => {\n if ($(event.target).is(this._element)) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event) {\n event.preventDefault()\n }\n\n if (this._isTransitioning || !this._isShown) {\n return\n }\n\n const hideEvent = $.Event(Event.HIDE)\n\n $(this._element).trigger(hideEvent)\n\n if (!this._isShown || hideEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = false\n const transition = $(this._element).hasClass(ClassName.FADE)\n\n if (transition) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(document).off(Event.FOCUSIN)\n\n $(this._element).removeClass(ClassName.SHOW)\n\n $(this._element).off(Event.CLICK_DISMISS)\n $(this._dialog).off(Event.MOUSEDOWN_DISMISS)\n\n\n if (transition) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, (event) => this._hideModal(event))\n .emulateTransitionEnd(transitionDuration)\n } else {\n this._hideModal()\n }\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n\n $(window, document, this._element, this._backdrop).off(EVENT_KEY)\n\n this._config = null\n this._element = null\n this._dialog = null\n this._backdrop = null\n this._isShown = null\n this._isBodyOverflowing = null\n this._ignoreBackdropClick = null\n this._scrollbarWidth = null\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const transition = $(this._element).hasClass(ClassName.FADE)\n\n if (!this._element.parentNode ||\n this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.scrollTop = 0\n\n if (transition) {\n Util.reflow(this._element)\n }\n\n $(this._element).addClass(ClassName.SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const shownEvent = $.Event(Event.SHOWN, {\n relatedTarget\n })\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n this._isTransitioning = false\n $(this._element).trigger(shownEvent)\n }\n\n if (transition) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._dialog)\n .one(Util.TRANSITION_END, transitionComplete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n transitionComplete()\n }\n }\n\n _enforceFocus() {\n $(document)\n .off(Event.FOCUSIN) // Guard against infinite focus loop\n .on(Event.FOCUSIN, (event) => {\n if (document !== event.target &&\n this._element !== event.target &&\n $(this._element).has(event.target).length === 0) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown && this._config.keyboard) {\n $(this._element).on(Event.KEYDOWN_DISMISS, (event) => {\n if (event.which === ESCAPE_KEYCODE) {\n event.preventDefault()\n this.hide()\n }\n })\n } else if (!this._isShown) {\n $(this._element).off(Event.KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n $(window).on(Event.RESIZE, (event) => this.handleUpdate(event))\n } else {\n $(window).off(Event.RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._isTransitioning = false\n this._showBackdrop(() => {\n $(document.body).removeClass(ClassName.OPEN)\n this._resetAdjustments()\n this._resetScrollbar()\n $(this._element).trigger(Event.HIDDEN)\n })\n }\n\n _removeBackdrop() {\n if (this._backdrop) {\n $(this._backdrop).remove()\n this._backdrop = null\n }\n }\n\n _showBackdrop(callback) {\n const animate = $(this._element).hasClass(ClassName.FADE)\n ? ClassName.FADE : ''\n\n if (this._isShown && this._config.backdrop) {\n this._backdrop = document.createElement('div')\n this._backdrop.className = ClassName.BACKDROP\n\n if (animate) {\n this._backdrop.classList.add(animate)\n }\n\n $(this._backdrop).appendTo(document.body)\n\n $(this._element).on(Event.CLICK_DISMISS, (event) => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n if (event.target !== event.currentTarget) {\n return\n }\n if (this._config.backdrop === 'static') {\n this._element.focus()\n } else {\n this.hide()\n }\n })\n\n if (animate) {\n Util.reflow(this._backdrop)\n }\n\n $(this._backdrop).addClass(ClassName.SHOW)\n\n if (!callback) {\n return\n }\n\n if (!animate) {\n callback()\n return\n }\n\n const backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop)\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callback)\n .emulateTransitionEnd(backdropTransitionDuration)\n } else if (!this._isShown && this._backdrop) {\n $(this._backdrop).removeClass(ClassName.SHOW)\n\n const callbackRemove = () => {\n this._removeBackdrop()\n if (callback) {\n callback()\n }\n }\n\n if ($(this._element).hasClass(ClassName.FADE)) {\n const backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop)\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callbackRemove)\n .emulateTransitionEnd(backdropTransitionDuration)\n } else {\n callbackRemove()\n }\n } else if (callback) {\n callback()\n }\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // todo (fat): these should probably be refactored out of modal.js\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing =\n this._element.scrollHeight > document.documentElement.clientHeight\n\n if (!this._isBodyOverflowing && isModalOverflowing) {\n this._element.style.paddingLeft = `${this._scrollbarWidth}px`\n }\n\n if (this._isBodyOverflowing && !isModalOverflowing) {\n this._element.style.paddingRight = `${this._scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n _checkScrollbar() {\n const rect = document.body.getBoundingClientRect()\n this._isBodyOverflowing = rect.left + rect.right < window.innerWidth\n this._scrollbarWidth = this._getScrollbarWidth()\n }\n\n _setScrollbar() {\n if (this._isBodyOverflowing) {\n // Note: DOMNode.style.paddingRight returns the actual value or '' if not set\n // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set\n const fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT))\n const stickyContent = [].slice.call(document.querySelectorAll(Selector.STICKY_CONTENT))\n\n // Adjust fixed content padding\n $(fixedContent).each((index, element) => {\n const actualPadding = element.style.paddingRight\n const calculatedPadding = $(element).css('padding-right')\n $(element)\n .data('padding-right', actualPadding)\n .css('padding-right', `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`)\n })\n\n // Adjust sticky content margin\n $(stickyContent).each((index, element) => {\n const actualMargin = element.style.marginRight\n const calculatedMargin = $(element).css('margin-right')\n $(element)\n .data('margin-right', actualMargin)\n .css('margin-right', `${parseFloat(calculatedMargin) - this._scrollbarWidth}px`)\n })\n\n // Adjust body padding\n const actualPadding = document.body.style.paddingRight\n const calculatedPadding = $(document.body).css('padding-right')\n $(document.body)\n .data('padding-right', actualPadding)\n .css('padding-right', `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`)\n }\n }\n\n _resetScrollbar() {\n // Restore fixed content padding\n const fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT))\n $(fixedContent).each((index, element) => {\n const padding = $(element).data('padding-right')\n $(element).removeData('padding-right')\n element.style.paddingRight = padding ? padding : ''\n })\n\n // Restore sticky content\n const elements = [].slice.call(document.querySelectorAll(`${Selector.STICKY_CONTENT}`))\n $(elements).each((index, element) => {\n const margin = $(element).data('margin-right')\n if (typeof margin !== 'undefined') {\n $(element).css('margin-right', margin).removeData('margin-right')\n }\n })\n\n // Restore body padding\n const padding = $(document.body).data('padding-right')\n $(document.body).removeData('padding-right')\n document.body.style.paddingRight = padding ? padding : ''\n }\n\n _getScrollbarWidth() { // thx d.walsh\n const scrollDiv = document.createElement('div')\n scrollDiv.className = ClassName.SCROLLBAR_MEASURER\n document.body.appendChild(scrollDiv)\n const scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth\n document.body.removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n // Static\n\n static _jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = {\n ...Default,\n ...$(this).data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (!data) {\n data = new Modal(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config](relatedTarget)\n } else if (_config.show) {\n data.show(relatedTarget)\n }\n })\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n let target\n const selector = Util.getSelectorFromElement(this)\n\n if (selector) {\n target = document.querySelector(selector)\n }\n\n const config = $(target).data(DATA_KEY)\n ? 'toggle' : {\n ...$(target).data(),\n ...$(this).data()\n }\n\n if (this.tagName === 'A' || this.tagName === 'AREA') {\n event.preventDefault()\n }\n\n const $target = $(target).one(Event.SHOW, (showEvent) => {\n if (showEvent.isDefaultPrevented()) {\n // Only register focus restorer if modal will actually get shown\n return\n }\n\n $target.one(Event.HIDDEN, () => {\n if ($(this).is(':visible')) {\n this.focus()\n }\n })\n })\n\n Modal._jQueryInterface.call($(target), config, this)\n })\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Modal._jQueryInterface\n $.fn[NAME].Constructor = Modal\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Modal._jQueryInterface\n }\n\n return Modal\n})($)\n\nexport default Modal\n","import $ from 'jquery'\nimport Popper from 'popper.js'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Tooltip = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'tooltip'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.tooltip'\n const EVENT_KEY = `.${DATA_KEY}`\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const CLASS_PREFIX = 'bs-tooltip'\n const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\n const DefaultType = {\n animation : 'boolean',\n template : 'string',\n title : '(string|element|function)',\n trigger : 'string',\n delay : '(number|object)',\n html : 'boolean',\n selector : '(string|boolean)',\n placement : '(string|function)',\n offset : '(number|string)',\n container : '(string|element|boolean)',\n fallbackPlacement : '(string|array)',\n boundary : '(string|element)'\n }\n\n const AttachmentMap = {\n AUTO : 'auto',\n TOP : 'top',\n RIGHT : 'right',\n BOTTOM : 'bottom',\n LEFT : 'left'\n }\n\n const Default = {\n animation : true,\n template : '
    ' +\n '
    ' +\n '
    ',\n trigger : 'hover focus',\n title : '',\n delay : 0,\n html : false,\n selector : false,\n placement : 'top',\n offset : 0,\n container : false,\n fallbackPlacement : 'flip',\n boundary : 'scrollParent'\n }\n\n const HoverState = {\n SHOW : 'show',\n OUT : 'out'\n }\n\n const Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n INSERTED : `inserted${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n FOCUSOUT : `focusout${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`\n }\n\n const ClassName = {\n FADE : 'fade',\n SHOW : 'show'\n }\n\n const Selector = {\n TOOLTIP : '.tooltip',\n TOOLTIP_INNER : '.tooltip-inner',\n ARROW : '.arrow'\n }\n\n const Trigger = {\n HOVER : 'hover',\n FOCUS : 'focus',\n CLICK : 'click',\n MANUAL : 'manual'\n }\n\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Tooltip {\n constructor(element, config) {\n /**\n * Check for Popper dependency\n * Popper - https://popper.js.org\n */\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap tooltips require Popper.js (https://popper.js.org)')\n }\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this.element = element\n this.config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get Event() {\n return Event\n }\n\n static get EVENT_KEY() {\n return EVENT_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const dataKey = this.constructor.DATA_KEY\n let context = $(event.currentTarget).data(dataKey)\n\n if (!context) {\n context = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, context)\n }\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if ($(this.getTipElement()).hasClass(ClassName.SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n $.removeData(this.element, this.constructor.DATA_KEY)\n\n $(this.element).off(this.constructor.EVENT_KEY)\n $(this.element).closest('.modal').off('hide.bs.modal')\n\n if (this.tip) {\n $(this.tip).remove()\n }\n\n this._isEnabled = null\n this._timeout = null\n this._hoverState = null\n this._activeTrigger = null\n if (this._popper !== null) {\n this._popper.destroy()\n }\n\n this._popper = null\n this.element = null\n this.config = null\n this.tip = null\n }\n\n show() {\n if ($(this.element).css('display') === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n const showEvent = $.Event(this.constructor.Event.SHOW)\n if (this.isWithContent() && this._isEnabled) {\n $(this.element).trigger(showEvent)\n\n const isInTheDom = $.contains(\n this.element.ownerDocument.documentElement,\n this.element\n )\n\n if (showEvent.isDefaultPrevented() || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = Util.getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this.element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this.config.animation) {\n $(tip).addClass(ClassName.FADE)\n }\n\n const placement = typeof this.config.placement === 'function'\n ? this.config.placement.call(this, tip, this.element)\n : this.config.placement\n\n const attachment = this._getAttachment(placement)\n this.addAttachmentClass(attachment)\n\n const container = this.config.container === false ? document.body : $(document).find(this.config.container)\n\n $(tip).data(this.constructor.DATA_KEY, this)\n\n if (!$.contains(this.element.ownerDocument.documentElement, this.tip)) {\n $(tip).appendTo(container)\n }\n\n $(this.element).trigger(this.constructor.Event.INSERTED)\n\n this._popper = new Popper(this.element, tip, {\n placement: attachment,\n modifiers: {\n offset: {\n offset: this.config.offset\n },\n flip: {\n behavior: this.config.fallbackPlacement\n },\n arrow: {\n element: Selector.ARROW\n },\n preventOverflow: {\n boundariesElement: this.config.boundary\n }\n },\n onCreate: (data) => {\n if (data.originalPlacement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n },\n onUpdate: (data) => {\n this._handlePopperPlacementChange(data)\n }\n })\n\n $(tip).addClass(ClassName.SHOW)\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().on('mouseover', null, $.noop)\n }\n\n const complete = () => {\n if (this.config.animation) {\n this._fixTransition()\n }\n const prevHoverState = this._hoverState\n this._hoverState = null\n\n $(this.element).trigger(this.constructor.Event.SHOWN)\n\n if (prevHoverState === HoverState.OUT) {\n this._leave(null, this)\n }\n }\n\n if ($(this.tip).hasClass(ClassName.FADE)) {\n const transitionDuration = Util.getTransitionDurationFromElement(this.tip)\n\n $(this.tip)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n complete()\n }\n }\n }\n\n hide(callback) {\n const tip = this.getTipElement()\n const hideEvent = $.Event(this.constructor.Event.HIDE)\n const complete = () => {\n if (this._hoverState !== HoverState.SHOW && tip.parentNode) {\n tip.parentNode.removeChild(tip)\n }\n\n this._cleanTipClass()\n this.element.removeAttribute('aria-describedby')\n $(this.element).trigger(this.constructor.Event.HIDDEN)\n if (this._popper !== null) {\n this._popper.destroy()\n }\n\n if (callback) {\n callback()\n }\n }\n\n $(this.element).trigger(hideEvent)\n\n if (hideEvent.isDefaultPrevented()) {\n return\n }\n\n $(tip).removeClass(ClassName.SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().off('mouseover', null, $.noop)\n }\n\n this._activeTrigger[Trigger.CLICK] = false\n this._activeTrigger[Trigger.FOCUS] = false\n this._activeTrigger[Trigger.HOVER] = false\n\n if ($(this.tip).hasClass(ClassName.FADE)) {\n const transitionDuration = Util.getTransitionDurationFromElement(tip)\n\n $(tip)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n complete()\n }\n\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.scheduleUpdate()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n addAttachmentClass(attachment) {\n $(this.getTipElement()).addClass(`${CLASS_PREFIX}-${attachment}`)\n }\n\n getTipElement() {\n this.tip = this.tip || $(this.config.template)[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent($(tip.querySelectorAll(Selector.TOOLTIP_INNER)), this.getTitle())\n $(tip).removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)\n }\n\n setElementContent($element, content) {\n const html = this.config.html\n if (typeof content === 'object' && (content.nodeType || content.jquery)) {\n // Content is a DOM node or a jQuery\n if (html) {\n if (!$(content).parent().is($element)) {\n $element.empty().append(content)\n }\n } else {\n $element.text($(content).text())\n }\n } else {\n $element[html ? 'html' : 'text'](content)\n }\n }\n\n getTitle() {\n let title = this.element.getAttribute('data-original-title')\n\n if (!title) {\n title = typeof this.config.title === 'function'\n ? this.config.title.call(this.element)\n : this.config.title\n }\n\n return title\n }\n\n // Private\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this.config.trigger.split(' ')\n\n triggers.forEach((trigger) => {\n if (trigger === 'click') {\n $(this.element).on(\n this.constructor.Event.CLICK,\n this.config.selector,\n (event) => this.toggle(event)\n )\n } else if (trigger !== Trigger.MANUAL) {\n const eventIn = trigger === Trigger.HOVER\n ? this.constructor.Event.MOUSEENTER\n : this.constructor.Event.FOCUSIN\n const eventOut = trigger === Trigger.HOVER\n ? this.constructor.Event.MOUSELEAVE\n : this.constructor.Event.FOCUSOUT\n\n $(this.element)\n .on(\n eventIn,\n this.config.selector,\n (event) => this._enter(event)\n )\n .on(\n eventOut,\n this.config.selector,\n (event) => this._leave(event)\n )\n }\n\n $(this.element).closest('.modal').on(\n 'hide.bs.modal',\n () => this.hide()\n )\n })\n\n if (this.config.selector) {\n this.config = {\n ...this.config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const titleType = typeof this.element.getAttribute('data-original-title')\n if (this.element.getAttribute('title') ||\n titleType !== 'string') {\n this.element.setAttribute(\n 'data-original-title',\n this.element.getAttribute('title') || ''\n )\n this.element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n const dataKey = this.constructor.DATA_KEY\n\n context = context || $(event.currentTarget).data(dataKey)\n\n if (!context) {\n context = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, context)\n }\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER\n ] = true\n }\n\n if ($(context.getTipElement()).hasClass(ClassName.SHOW) ||\n context._hoverState === HoverState.SHOW) {\n context._hoverState = HoverState.SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HoverState.SHOW\n\n if (!context.config.delay || !context.config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HoverState.SHOW) {\n context.show()\n }\n }, context.config.delay.show)\n }\n\n _leave(event, context) {\n const dataKey = this.constructor.DATA_KEY\n\n context = context || $(event.currentTarget).data(dataKey)\n\n if (!context) {\n context = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, context)\n }\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER\n ] = false\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HoverState.OUT\n\n if (!context.config.delay || !context.config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HoverState.OUT) {\n context.hide()\n }\n }, context.config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...$(this.element).data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n Util.typeCheckConfig(\n NAME,\n config,\n this.constructor.DefaultType\n )\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this.config) {\n for (const key in this.config) {\n if (this.constructor.Default[key] !== this.config[key]) {\n config[key] = this.config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const $tip = $(this.getTipElement())\n const tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length) {\n $tip.removeClass(tabClass.join(''))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const popperInstance = popperData.instance\n this.tip = popperInstance.popper\n this._cleanTipClass()\n this.addAttachmentClass(this._getAttachment(popperData.placement))\n }\n\n _fixTransition() {\n const tip = this.getTipElement()\n const initConfigAnimation = this.config.animation\n if (tip.getAttribute('x-placement') !== null) {\n return\n }\n $(tip).removeClass(ClassName.FADE)\n this.config.animation = false\n this.hide()\n this.show()\n this.config.animation = initConfigAnimation\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' && config\n\n if (!data && /dispose|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Tooltip(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Tooltip._jQueryInterface\n $.fn[NAME].Constructor = Tooltip\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Tooltip._jQueryInterface\n }\n\n return Tooltip\n})($, Popper)\n\nexport default Tooltip\n","import $ from 'jquery'\nimport Tooltip from './tooltip'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Popover = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'popover'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.popover'\n const EVENT_KEY = `.${DATA_KEY}`\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const CLASS_PREFIX = 'bs-popover'\n const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\n const Default = {\n ...Tooltip.Default,\n placement : 'right',\n trigger : 'click',\n content : '',\n template : '
    ' +\n '
    ' +\n '

    ' +\n '
    '\n }\n\n const DefaultType = {\n ...Tooltip.DefaultType,\n content : '(string|element|function)'\n }\n\n const ClassName = {\n FADE : 'fade',\n SHOW : 'show'\n }\n\n const Selector = {\n TITLE : '.popover-header',\n CONTENT : '.popover-body'\n }\n\n const Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n INSERTED : `inserted${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n FOCUSOUT : `focusout${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Popover extends Tooltip {\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get Event() {\n return Event\n }\n\n static get EVENT_KEY() {\n return EVENT_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n addAttachmentClass(attachment) {\n $(this.getTipElement()).addClass(`${CLASS_PREFIX}-${attachment}`)\n }\n\n getTipElement() {\n this.tip = this.tip || $(this.config.template)[0]\n return this.tip\n }\n\n setContent() {\n const $tip = $(this.getTipElement())\n\n // We use append for html objects to maintain js events\n this.setElementContent($tip.find(Selector.TITLE), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this.element)\n }\n this.setElementContent($tip.find(Selector.CONTENT), content)\n\n $tip.removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)\n }\n\n // Private\n\n _getContent() {\n return this.element.getAttribute('data-content') ||\n this.config.content\n }\n\n _cleanTipClass() {\n const $tip = $(this.getTipElement())\n const tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n $tip.removeClass(tabClass.join(''))\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data && /destroy|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Popover(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Popover._jQueryInterface\n $.fn[NAME].Constructor = Popover\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Popover._jQueryInterface\n }\n\n return Popover\n})($)\n\nexport default Popover\n","import $ from 'jquery'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.1.3): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst ScrollSpy = (($) => {\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'scrollspy'\n const VERSION = '4.1.3'\n const DATA_KEY = 'bs.scrollspy'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n const Default = {\n offset : 10,\n method : 'auto',\n target : ''\n }\n\n const DefaultType = {\n offset : 'number',\n method : 'string',\n target : '(string|element)'\n }\n\n const Event = {\n ACTIVATE : `activate${EVENT_KEY}`,\n SCROLL : `scroll${EVENT_KEY}`,\n LOAD_DATA_API : `load${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n DROPDOWN_ITEM : 'dropdown-item',\n DROPDOWN_MENU : 'dropdown-menu',\n ACTIVE : 'active'\n }\n\n const Selector = {\n DATA_SPY : '[data-spy=\"scroll\"]',\n ACTIVE : '.active',\n NAV_LIST_GROUP : '.nav, .list-group',\n NAV_LINKS : '.nav-link',\n NAV_ITEMS : '.nav-item',\n LIST_ITEMS : '.list-group-item',\n DROPDOWN : '.dropdown',\n DROPDOWN_ITEMS : '.dropdown-item',\n DROPDOWN_TOGGLE : '.dropdown-toggle'\n }\n\n const OffsetMethod = {\n OFFSET : 'offset',\n POSITION : 'position'\n }\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class ScrollSpy {\n constructor(element, config) {\n this._element = element\n this._scrollElement = element.tagName === 'BODY' ? window : element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${Selector.NAV_LINKS},` +\n `${this._config.target} ${Selector.LIST_ITEMS},` +\n `${this._config.target} ${Selector.DROPDOWN_ITEMS}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n $(this._scrollElement).on(Event.SCROLL, (event) => this._process(event))\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window\n ? OffsetMethod.OFFSET : OffsetMethod.POSITION\n\n const offsetMethod = this._config.method === 'auto'\n ? autoMethod : this._config.method\n\n const offsetBase = offsetMethod === OffsetMethod.POSITION\n ? this._getScrollTop() : 0\n\n this._offsets = []\n this._targets = []\n\n this._scrollHeight = this._getScrollHeight()\n\n const targets = [].slice.call(document.querySelectorAll(this._selector))\n\n targets\n .map((element) => {\n let target\n const targetSelector = Util.getSelectorFromElement(element)\n\n if (targetSelector) {\n target = document.querySelector(targetSelector)\n }\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n // TODO (fat): remove sketch reliance on jQuery position/offset\n return [\n $(target)[offsetMethod]().top + offsetBase,\n targetSelector\n ]\n }\n }\n return null\n })\n .filter((item) => item)\n .sort((a, b) => a[0] - b[0])\n .forEach((item) => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n $(this._scrollElement).off(EVENT_KEY)\n\n this._element = null\n this._scrollElement = null\n this._config = null\n this._selector = null\n this._offsets = null\n this._targets = null\n this._activeTarget = null\n this._scrollHeight = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (typeof config.target !== 'string') {\n let id = $(config.target).attr('id')\n if (!id) {\n id = Util.getUID(NAME)\n $(config.target).attr('id', id)\n }\n config.target = `#${id}`\n }\n\n Util.typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window\n ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window\n ? window.innerHeight : this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset +\n scrollHeight -\n this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n const offsetLength = this._offsets.length\n for (let i = offsetLength; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' ||\n scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n let queries = this._selector.split(',')\n // eslint-disable-next-line arrow-body-style\n queries = queries.map((selector) => {\n return `${selector}[data-target=\"${target}\"],` +\n `${selector}[href=\"${target}\"]`\n })\n\n const $link = $([].slice.call(document.querySelectorAll(queries.join(','))))\n\n if ($link.hasClass(ClassName.DROPDOWN_ITEM)) {\n $link.closest(Selector.DROPDOWN).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE)\n $link.addClass(ClassName.ACTIVE)\n } else {\n // Set triggered link as active\n $link.addClass(ClassName.ACTIVE)\n // Set triggered links parents as active\n // With both
      and
    + + +
    + + + + getVisitInfo($selsite, $approval, "%", "%", "%", $_POST['starttime'], $_POST['endtime'], "%", "%") as $row): + $timein = new DateTime($row['visits_intime'], new DateTimeZone('UTC')); + $timeout = new DateTime($row['visits_outtime'], new DateTimeZone('UTC')); + $timein->setTimezone(new DateTimeZone("$timezone")); + $timeout->setTimezone(new DateTimeZone("$timezone")); + $timein_disp = $timein->format('Y-m-d H:i:s'); + $timeout_disp = $timeout->format('Y-m-d H:i:s'); + ?> + + + + + + + + + + + + + + + + +
    getSiteInfo($row['visits_site_id'])[0]["sites_name"]; ?>getVisitTypeInfo($row['visits_reason'])[0]['visittypes_name']]; ?>
    Signature
    Escort Signature'; } ?>getIDTypeInfo($row['visits_id_type'])[0]['idtypes_name']]; ?>
    +
    + + +
    +
    +

    - - - - - - - - - - -

    +
    +
    + + + + +. + */ + + ini_set('session.gc_maxlifetime', 24*60*60); // MIN SESSION + ini_set('session.gc_probability', 1); // GC RATES + ini_set('session.gc_divisor', 100); // TIMES + session_save_path('.tmp'); // TEMP + session_start(); // START + require_once __DIR__ . '/autoload.php'; // AUTOLOAD + $StaticFunctions = new \App\LobbySIO\Misc\StaticFunctions(); // CLASSES + $SiteInfo = new \App\LobbySIO\Database\SiteInfo(); + $VisitTypeInfo = new \App\LobbySIO\Database\VisitTypeInfo(); + if(!isset($_COOKIE['app_disp_lang'])) { $app_disp_lang = $StaticFunctions->getDefaultLanguage(); } else { $app_disp_lang = $_COOKIE['app_disp_lang']; }; + $Translate = new \App\LobbySIO\Language\Translate($app_disp_lang); + $transLang = $Translate->userLanguage(); // SETUP TRANSLATOR + $app_current_pagename = $transLang['SIGNIN']; // PAGE FUNCTION + $app_current_pageicon = ' ';// PAGE ICON + require_once("inc/header.inc.php"); // SHOW HEADER + if ($StaticFunctions->getSessionStatus() == true) { // CHECK STATUS + header('Location: index.php'); // ELSE HOME + } else { ?> + + +
    + + + + + + +. + */ + + ini_set('session.gc_maxlifetime', 24*60*60); // MIN SESSION + ini_set('session.gc_probability', 1); // GC RATES + ini_set('session.gc_divisor', 100); // TIMES + session_save_path('.tmp'); // TEMP + session_start(); // START + require_once __DIR__ . '/autoload.php'; // AUTOLOAD + $StaticFunctions = new \App\LobbySIO\Misc\StaticFunctions(); // CLASSES + $SiteInfo = new \App\LobbySIO\Database\SiteInfo(); + $VisitTypeInfo = new \App\LobbySIO\Database\VisitTypeInfo(); + $VisitActions = new \App\LobbySIO\Database\VisitActions(); + if(!isset($_COOKIE['app_disp_lang'])) { $app_disp_lang = $StaticFunctions->getDefaultLanguage(); } else { $app_disp_lang = $_COOKIE['app_disp_lang']; }; + $Translate = new \App\LobbySIO\Language\Translate($app_disp_lang); + $transLang = $Translate->userLanguage(); // SETUP TRANSLATOR + $app_current_pagename = $transLang['SIGNIN']; // PAGE FUNCTION + $app_current_pageicon = ' ';// PAGE ICON + require_once("inc/header.inc.php"); // SHOW HEADER + if ($StaticFunctions->getSessionStatus() == true) { // CHECK STATUS + header('Location: index.php'); // ELSE HOME + } else { ?> + + + newVisit($_POST['firstname'], $_POST['lastname'], $_POST['company'], $_POST['visit_type'], $StaticFunctions->getUTC(), $_POST['v_signature'], $_POST['siteid'], "1", $_POST['e_signature'], $_POST['escort']); + ?> +
    +
    +
    +

    +
    +
    +
    + + + + + + + + + + + +

    getVisitTypeInfo($_POST['visit_type'])[0]["visittypes_name"]]; ?>
    ,

    +
    +
    +

    +
    +
    +
    + +
    +

    +
    + +
    +  

     
    +
    + + +. + */ + + ini_set('session.gc_maxlifetime', 24*60*60); // MIN SESSION + ini_set('session.gc_probability', 1); // GC RATES + ini_set('session.gc_divisor', 100); // TIMES + session_save_path('.tmp'); // TEMP + session_start(); // START + require_once __DIR__ . '/autoload.php'; // AUTOLOAD + $StaticFunctions = new \App\LobbySIO\Misc\StaticFunctions(); // CLASSES + $VisitInfo = new \App\LobbySIO\Database\VisitInfo(); + $VisitActions = new \App\LobbySIO\Database\VisitActions(); + if(!isset($_COOKIE['app_disp_lang'])) { $app_disp_lang = $StaticFunctions->getDefaultLanguage(); } else { $app_disp_lang = $_COOKIE['app_disp_lang']; }; + $Translate = new \App\LobbySIO\Language\Translate($app_disp_lang); + $transLang = $Translate->userLanguage(); // SETUP TRANSLATOR + $app_current_pagename = $transLang['SIGNOUT']; // PAGE FUNCTION + $app_current_pageicon = ' ';// PAGE ICON + require_once("inc/header.inc.php"); // SHOW HEADER + if ($StaticFunctions->getSessionStatus() == true) { // CHECK STATUS + header('Location: index.php'); // ELSE HOME + } else { ?> + + + endVisit($_POST['endvisit'], $StaticFunctions->getUTC()); + ?> +
    +
    +
    +

    +
    +
    +
    + getPageRows(); + $row_count = count($VisitInfo->getVisitInfo($siteid, $approval, "empty", "%", "%", "%", "%", "%", "%")); + $page_count = 0; + if (0 === $row_count): else: $page_count = (int)ceil($row_count / $StaticFunctions->getPageRows()); if($page_num > $page_count): $page_num = 1; endif; endif; + ?> +
    +
    +
    +

    +
    +
    + +
    +
    +
    +
  • '.$transLang['PAGE'].'
  • '; for ($i = 1; $i <= $page_count; $i++): echo '
  • ' . $i . '
  • '; endfor; echo ''; ?> + + + + + + getVisitInfo($siteid, $approval, "empty", "%", "%", "%", "%", $StaticFunctions->getPageRows(), $offset) as $row): + $timein = new DateTime($row['visits_intime'], new DateTimeZone('UTC')); + $timein->setTimezone(new DateTimeZone("$timezone")); + $timein_disp = $timein->format('Y-m-d H:i:s'); + ?> + + + +

    '; } ?>
    +
    +
    + + + +. + */ + +namespace App\LobbySIO\Config; + +/** + * Configuration registry for the application + * Customize this file to your environment. Directory paths should + * end in slash and be absolute. + * + * @author josh.north + */ + +class Registry { const + DIRPATH = '/var/www/html/lsio/', // Filesystem base dir + DB_DRVR = 'mysql', // PDO Driver + DB_HOST = 'localhost', // DB Host + DB_USER = 'lsio_user', // DB Username + DB_PASS = 'yoursecret', // DB Password + DB_NAME = 'lsio', // DB Name + DB_PRFX = 'lsio_', // DB table prefix + ORGANIZATION = 'Widgets, Inc', // Organization name + DEFAULTLANGUAGE = 'en', // Default language - make sure a translation file exists + ROWSPERPAGE = '5', // Rows per page on tables (does not include reports) + MINPASS = '8', // Minimum password length + DEFAULTTZ = 'America/New_York' // DEFAULT TIME ZONE +;} diff --git a/src/Config/index.php b/src/Config/index.php new file mode 100644 index 0000000..70bbb31 --- /dev/null +++ b/src/Config/index.php @@ -0,0 +1 @@ +. + */ + +namespace App\LobbySIO\Database; +use App\LobbySIO\Config\Registry; + +/** + * Database connection class + * + * @author josh.north + */ + + +class Connect { + public $dbconn; + + // open conn + public function __construct() { + $this->openPDO(); + } + + // close conn + public function __destruct() { + $this->dbconn = NULL; + } + + // class-internal to open the connection if not already open + private function openPDO() { + if ($this->dbconn == NULL) { + $connstring = "" . Registry::DB_DRVR . ":host=" . Registry::DB_HOST . ";dbname=" . Registry::DB_NAME; + $connoptions = [ + \PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION, + \PDO::ATTR_DEFAULT_FETCH_MODE => \PDO::FETCH_ASSOC, + \PDO::ATTR_EMULATE_PREPARES => false, + ]; + try { + $this->dbconn = new \PDO( $connstring, Registry::DB_USER, Registry::DB_PASS, $connoptions ); + } catch( \PDOException $e ) { + echo __LINE__.$e->getMessage(); + } + } + } + + // insert or update something + public function runQuery( $sql ) { + try { + $count = $this->dbconn->exec($sql) or print_r($this->dbconn->errorInfo()); + } catch(\PDOException $e) { + echo __LINE__.$e->getMessage(); + } + } + + // select something + public function getQuery( $sql ) { + $stmt = $this->dbconn->query( $sql ); + $stmt->setFetchMode(\PDO::FETCH_ASSOC); + return $stmt->fetchAll(); + } + +} diff --git a/src/Database/IDTypeInfo.php b/src/Database/IDTypeInfo.php new file mode 100755 index 0000000..32903f5 --- /dev/null +++ b/src/Database/IDTypeInfo.php @@ -0,0 +1,42 @@ +. + */ + +namespace App\LobbySIO\Database; +use App\LobbySIO\Config\Registry; + +/** + * Get id type info as array by id type id. Pass % for all. + * + * @author josh.north + */ + +class IDTypeInfo { + public function getIDTypeInfo ($idtypeid){ + $query = " + SELECT + " . Registry::DB_PRFX . "idtypes.id as idtypes_id, + " . Registry::DB_PRFX . "idtypes.name as idtypes_name + FROM " . Registry::DB_PRFX . "idtypes + WHERE " . Registry::DB_PRFX . "idtypes.id LIKE \"$idtypeid\""; + $database = new \App\LobbySIO\Database\Connect(); + $rows = $database->getQuery($query); + return $rows; + } + +} diff --git a/src/Database/SiteInfo.php b/src/Database/SiteInfo.php new file mode 100755 index 0000000..bc5c958 --- /dev/null +++ b/src/Database/SiteInfo.php @@ -0,0 +1,55 @@ +. + */ + +namespace App\LobbySIO\Database; +use App\LobbySIO\Config\Registry; + +/** + * Get site info as array by site id. Pass % for all. + * + * @author josh.north + */ + +class SiteInfo { + public function getSiteInfo ($siteid){ + $query = " + SELECT + " . Registry::DB_PRFX . "sites.id as sites_id, + " . Registry::DB_PRFX . "sites.name as sites_name, + " . Registry::DB_PRFX . "sites.timezone as sites_timezone + FROM " . Registry::DB_PRFX . "sites + WHERE " . Registry::DB_PRFX . "sites.id LIKE \"$siteid\""; + $database = new \App\LobbySIO\Database\Connect(); + $rows = $database->getQuery($query); + return $rows; + } + + public function getSiteName ($siteid) { + $query = " + SELECT + " . Registry::DB_PRFX . "sites.id as sites_id, + " . Registry::DB_PRFX . "sites.name as sites_name + FROM " . Registry::DB_PRFX . "sites + WHERE " . Registry::DB_PRFX . "sites.id LIKE $siteid"; + $database = new \App\LobbySIO\Database\Connect(); + $rows = $database->getQuery($query); + return $rows[0]["sites_name"]; + } + +} diff --git a/src/Database/Users.php b/src/Database/Users.php new file mode 100755 index 0000000..92e4ff2 --- /dev/null +++ b/src/Database/Users.php @@ -0,0 +1,140 @@ +. + */ + +namespace App\LobbySIO\Database; +use App\LobbySIO\Config\Registry; + +/** + * User management functions + * + * @author josh.north + */ +class Users { + // Get site info as array by site id. Pass % for all. + public function getUserInfo($userid, $rowsperpage, $offset) { + if ($rowsperpage == "%") { $cond_rowsperpage = NULL; } else { $cond_rowsperpage = " LIMIT " . Registry::ROWSPERPAGE; }; + if ($offset == "%") { $cond_offset = NULL; } else { $cond_offset = " OFFSET " . $offset; }; + $query = " + SELECT + " . Registry::DB_PRFX . "users.id as users_id, + " . Registry::DB_PRFX . "users.username as users_username, + " . Registry::DB_PRFX . "users.email as users_email, + " . Registry::DB_PRFX . "users.created as users_created, + " . Registry::DB_PRFX . "users.firstname as users_firstname, + " . Registry::DB_PRFX . "users.lastname as users_lastname, + " . Registry::DB_PRFX . "users.usertype as users_usertypeid, + " . Registry::DB_PRFX . "usertypes.name as users_usertype, + " . Registry::DB_PRFX . "users.password as users_password + FROM " . Registry::DB_PRFX . "users + INNER JOIN " . Registry::DB_PRFX . "usertypes ON " . Registry::DB_PRFX . "users.usertype = " . Registry::DB_PRFX . "usertypes.id + WHERE " . Registry::DB_PRFX . "users.id LIKE \"$userid\" + ORDER BY " . Registry::DB_PRFX . "users.lastname ASC" . $cond_rowsperpage . $cond_offset; + $database = new \App\LobbySIO\Database\Connect(); + $rows = $database->getQuery($query); + return $rows; + } + + public function loginUser ($username) { + $query = " + SELECT + " . Registry::DB_PRFX . "users.id as users_id, + " . Registry::DB_PRFX . "users.password as users_password, + UNIX_TIMESTAMP(" . Registry::DB_PRFX . "users.created) AS users_salt, + " . Registry::DB_PRFX . "users.firstname as users_firstname, + " . Registry::DB_PRFX . "users.lastname as users_lastname + FROM " . Registry::DB_PRFX . "users + WHERE " . Registry::DB_PRFX . "users.username = \"$username\" + "; + $database = new \App\LobbySIO\Database\Connect(); + $rows = $database->getQuery($query); + return $rows; + } + + public function checkUser ($username, $email) { + $query = " + SELECT + " . Registry::DB_PRFX . "users.username as users_username, + " . Registry::DB_PRFX . "users.email as users_email + FROM " . Registry::DB_PRFX . "users + WHERE " . Registry::DB_PRFX . "users.username = \"$username\" OR " . Registry::DB_PRFX . "users.email = \"$email\" + "; + $database = new \App\LobbySIO\Database\Connect(); + $rows = $database->getQuery($query); + return $rows; + } + + public function addUser ($firstname, $lastname, $username, $timezone, $password, $email, $usertype) { + $query = " + INSERT INTO " . Registry::DB_PRFX . "users (" . Registry::DB_PRFX . "users.firstname, " . Registry::DB_PRFX . "users.lastname, " . Registry::DB_PRFX . "users.username, " . Registry::DB_PRFX . "users.timezone, " . Registry::DB_PRFX . "users.password, " . Registry::DB_PRFX . "users.email, " . Registry::DB_PRFX . "users.created, " . Registry::DB_PRFX . "users.usertype) + VALUES (\"$firstname\", \"$lastname\", \"$username\", \"$timezone\", \"$password\", \"$email\", NOW(), \"$usertype\") + "; + $database = new \App\LobbySIO\Database\Connect(); + $count = $database->runQuery($query); + } + + public function setUserInfo($uid, $firstname, $lastname, $email, $usertypeid, $password) { + $query = " + UPDATE + " . Registry::DB_PRFX . "users + SET + " . Registry::DB_PRFX . "users.firstname = \"$firstname\", + " . Registry::DB_PRFX . "users.lastname = \"$lastname\", + " . Registry::DB_PRFX . "users.email = \"$email\", + " . Registry::DB_PRFX . "users.usertype = \"$usertypeid\", + " . Registry::DB_PRFX . "users.password = \"$password\" + WHERE " . Registry::DB_PRFX . "users.id = \"$uid\" + "; + $database = new \App\LobbySIO\Database\Connect(); + $count = $database->runQuery($query); + } + + public function getUserType ($usertypeid){ + $query = " + SELECT + " . Registry::DB_PRFX . "usertypes.id as usertypes_id, + " . Registry::DB_PRFX . "usertypes.name as usertypes_name + FROM " . Registry::DB_PRFX . "usertypes + WHERE " . Registry::DB_PRFX . "usertypes.id LIKE \"$usertypeid\""; + $database = new \App\LobbySIO\Database\Connect(); + $rows = $database->getQuery($query); + return $rows; + } + + public function deleteUser ($userid) { + $query = " + DELETE FROM " . Registry::DB_PRFX . "users WHERE " . Registry::DB_PRFX . "users.id=\"$userid\" + "; + $database = new \App\LobbySIO\Database\Connect(); + $count = $database->runQuery($query); + } + + public function getUserTypeInfo ($usertypeid) { + $query = " + SELECT + " . Registry::DB_PRFX . "usertypes.id as usertypes_id, + " . Registry::DB_PRFX . "usertypes.name as usertypes_name + FROM " . Registry::DB_PRFX . "usertypes + WHERE " . Registry::DB_PRFX . "usertypes.id LIKE \"$usertypeid\""; + $database = new \App\LobbySIO\Database\Connect(); + $rows = $database->getQuery($query); + return $rows; + } + + +} diff --git a/src/Database/VisitActions.php b/src/Database/VisitActions.php new file mode 100755 index 0000000..50c803f --- /dev/null +++ b/src/Database/VisitActions.php @@ -0,0 +1,78 @@ +. + */ + +namespace App\LobbySIO\Database; +use App\LobbySIO\Config\Registry; + +/** + * Perform visit actions (approve/void/end/new) + * + * @author josh.north + */ + +class VisitActions { + public function endVisit ($visitid, $outtime) { + $query = " + UPDATE " . Registry::DB_PRFX . "visits + SET " . Registry::DB_PRFX . "visits.outtime = \"$outtime\" + WHERE " . Registry::DB_PRFX . "visits.id = \"$visitid\" + "; + $database = new \App\LobbySIO\Database\Connect(); + $count = $database->runQuery($query); + } + + public function voidVisit ($visitid, $approved) { + $query = " + UPDATE " . Registry::DB_PRFX . "visits + SET " . Registry::DB_PRFX . "visits.approved = \"$approved\" + WHERE " . Registry::DB_PRFX . "visits.id = \"$visitid\" + "; + $database = new \App\LobbySIO\Database\Connect(); + $count = $database->runQuery($query); + } + + public function approveVisit ($approvevisit, $id_type, $id_checked, $citizen, $badge, $initials, $approved) { + $query = " + UPDATE " . Registry::DB_PRFX . "visits + SET + " . Registry::DB_PRFX . "visits.initials = \"$initials\", + " . Registry::DB_PRFX . "visits.approved = \"$approved\", + " . Registry::DB_PRFX . "visits.id_type = \"$id_type\", + " . Registry::DB_PRFX . "visits.id_checked = \"$id_checked\", + " . Registry::DB_PRFX . "visits.badge = \"$badge\", + " . Registry::DB_PRFX . "visits.citizen = \"$citizen\" + WHERE " . Registry::DB_PRFX . "visits.id = \"$approvevisit\" + "; + $database = new \App\LobbySIO\Database\Connect(); + $count = $database->runQuery($query); + } + + public function newVisit ($firstname, $lastname, $company, $reason, $intime, $signature, $siteid, $approved, $escort_signature, $escort) { + $query = " + INSERT INTO " . Registry::DB_PRFX . "visits (" . Registry::DB_PRFX . "visits.firstname, " . Registry::DB_PRFX . "visits.lastname, + " . Registry::DB_PRFX . "visits.company, " . Registry::DB_PRFX . "visits.reason, " . Registry::DB_PRFX . "visits.intime, + " . Registry::DB_PRFX . "visits.signature, " . Registry::DB_PRFX . "visits.site_id, " . Registry::DB_PRFX . "visits.approved, + " . Registry::DB_PRFX . "visits.escort_signature, " . Registry::DB_PRFX . "visits.escort) + VALUES (\"$firstname\", \"$lastname\", \"$company\", \"$reason\", \"$intime\", \"$signature\", \"$siteid\", + \"$approved\", \"$escort_signature\", \"$escort\") + "; + $database = new \App\LobbySIO\Database\Connect(); + $count = $database->runQuery($query); + } +} diff --git a/src/Database/VisitInfo.php b/src/Database/VisitInfo.php new file mode 100755 index 0000000..fed43dc --- /dev/null +++ b/src/Database/VisitInfo.php @@ -0,0 +1,74 @@ +. + */ + +namespace App\LobbySIO\Database; +use App\LobbySIO\Config\Registry; + +/** + * Get visit info as array by visit id. Pass % for all. + * TODO - break into select sections for speed by pagination + * Pass NULL for nulls, % for any not null + * + * @author josh.north + */ + +class VisitInfo { + // Pass "empty" to get unset or empty valued rows, pass "%" for all rows, or pass int/string for 1 row. + public function getVisitInfo ($siteid, $approved, $outtime, $visitid, $intime, $starttime, $endtime, $rowsperpage, $offset){ + if ($outtime === "empty") { + $cond_outtime = Registry::DB_PRFX . "visits.outtime IS NULL AND "; + } elseif ($outtime == "%") { + $cond_outtime = NULL; + } else { + $cond_outtime = Registry::DB_PRFX . "visits.outtime LIKE \"$outtime\" AND "; + }; + if ($rowsperpage == "%") { $cond_rowsperpage = NULL; } else { $cond_rowsperpage = " LIMIT " . Registry::ROWSPERPAGE; }; + if ($offset == "%") { $cond_offset = NULL; } else { $cond_offset = " OFFSET " . $offset; }; + if ($intime == "%") { $cond_intime = NULL; } else { $cond_intime = Registry::DB_PRFX . "visits.intime=\"$intime\" AND "; }; + if ($siteid == "%") { $cond_siteid = NULL; } else { $cond_siteid = Registry::DB_PRFX . "visits.site_id=\"$siteid\" AND "; }; + if ($visitid == "%") { $cond_visitid = NULL; } else { $cond_visitid = Registry::DB_PRFX . "visits.id LIKE \"$visitid\" AND "; }; + if ($starttime == "%") { $cond_intime = NULL; } else { $cond_intime = Registry::DB_PRFX . "visits.intime BETWEEN \"$starttime\" and \"$endtime\" AND "; }; + $query = " + SELECT + " . Registry::DB_PRFX . "visits.id as visits_id, + " . Registry::DB_PRFX . "visits.intime as visits_intime, + " . Registry::DB_PRFX . "visits.outtime as visits_outtime, + " . Registry::DB_PRFX . "visits.firstname as visits_firstname, + " . Registry::DB_PRFX . "visits.lastname as visits_lastname, + " . Registry::DB_PRFX . "visits.signature as visits_signature, + " . Registry::DB_PRFX . "visits.escort as visits_escort, + " . Registry::DB_PRFX . "visits.escort_signature as visits_escort_signature, + " . Registry::DB_PRFX . "visits.reason as visits_reason, + " . Registry::DB_PRFX . "visits.citizen as visits_citizen, + " . Registry::DB_PRFX . "visits.id_type as visits_id_type, + " . Registry::DB_PRFX . "visits.id_checked as visits_id_checked, + " . Registry::DB_PRFX . "visits.initials as visits_initials, + " . Registry::DB_PRFX . "visits.badge as visits_badge, + " . Registry::DB_PRFX . "visits.site_id as visits_site_id, + " . Registry::DB_PRFX . "visits.company as visits_company, + " . Registry::DB_PRFX . "visits.approved as visits_approved + FROM " . Registry::DB_PRFX . "visits + WHERE " . $cond_siteid . Registry::DB_PRFX . "visits.approved>=\"$approved\" AND " . $cond_outtime . $cond_intime . Registry::DB_PRFX . "visits.id LIKE \"$visitid\"" . $cond_rowsperpage . $cond_offset; + $database = new \App\LobbySIO\Database\Connect(); + $rows = $database->getQuery($query); + return $rows; + } + + +} diff --git a/src/Database/VisitTypeInfo.php b/src/Database/VisitTypeInfo.php new file mode 100755 index 0000000..02c97a8 --- /dev/null +++ b/src/Database/VisitTypeInfo.php @@ -0,0 +1,42 @@ +. + */ + +namespace App\LobbySIO\Database; +use App\LobbySIO\Config\Registry; + +/** + * Get visit type info as array by visit type id. Pass % for all. + * + * @author josh.north + */ + +class VisitTypeInfo { + public function getVisitTypeInfo ($visittypeid){ + $query = " + SELECT + " . Registry::DB_PRFX . "visittypes.id as visittypes_id, + " . Registry::DB_PRFX . "visittypes.name as visittypes_name + FROM " . Registry::DB_PRFX . "visittypes + WHERE " . Registry::DB_PRFX . "visittypes.id LIKE \"$visittypeid\""; + $database = new \App\LobbySIO\Database\Connect(); + $rows = $database->getQuery($query); + return $rows; + } + +} diff --git a/src/Database/index.php b/src/Database/index.php new file mode 100644 index 0000000..70bbb31 --- /dev/null +++ b/src/Database/index.php @@ -0,0 +1 @@ +. + */ + +namespace App\LobbySIO\Language; +use App\LobbySIO\Config\Registry; + +/** + * Language return + * + * @author josh.north + */ +class Translate { + + private $UserLng; + private $langSelected; + public $lang = array(); + public function __construct($userLanguage){ + $this->UserLng = $userLanguage; + //construct lang file + $langFile = Registry::DIRPATH . 'src/Language/'. $this->UserLng . '.lang.ini'; + if(!file_exists($langFile)){ + throw new \Exception("Language could not be loaded"); //or default to a language + } + $this->lang = parse_ini_file($langFile); + } + public function userLanguage(){ + return $this->lang; + } + + +} diff --git a/src/Language/de.lang.ini.example b/src/Language/de.lang.ini.example new file mode 100644 index 0000000..e30d034 --- /dev/null +++ b/src/Language/de.lang.ini.example @@ -0,0 +1,136 @@ +ACCESS_LEVEL = 'Zugriffsebene' +ACCOUNT = 'Konto' +ACCOUNT_INFO_DESC = 'Sie können Änderungen an Ihrem Benutzerprofil vornehmen. Um Ihr Passwort zu ändern, geben Sie ein neues Passwort zweimal ein und drücken Sie auf Speichern. Minimale Passwortlänge ist ' +ACCOUNT_INFO_HEADER = 'Kontoinformationen' +ACKNOWLEDGEMENT = 'Mit der Anmeldung erkenne ich an, dass ich die Regeln gelesen und verstanden habe und bin einverstanden, die Regeln dieses Dokuments zu befolgen, während ich Arbeiten innerhalb der Einrichtung verrichtet. Wir verfügen über eine bestehende Sicherheitsrichtlinie für Anlagen, die die Staatsangehörigkeit und die Staatsangehörigkeit der Besucher des Rechenzentrums berücksichtigt, um die US-Gesetze wie Exportkontroll- und Wirtschaftssanktionsgesetze einzuhalten. Unser Ziel besteht lediglich darin, diese US-Gesetze einzuhalten und den Zugang zu Personal nicht willkürlich zu verweigern.' +ACKNOWLEDGEMENT_DOC_NAME = 'Unsere Regeln' +ACTIONS = 'Aktionen' +ACTIVEVISITS = 'Aktive Besuche' +ADDEQPT = 'Ausrüstung hinzufügen' +ADD_USER = 'Benutzer hinzufügen' +ADD_USER_DESC = 'Alle Felder sind erforderlich! Benutzername und E-Mail müssen eindeutig sein. Minimale Passwortlänge ist ' +ADMIN = 'Administrator' +ALL = 'Alles' +APPROVE = 'Genehmigen' +APP_NAME = 'Empfangshalle Einloggen / Ausloggen' +BACK = 'Zurückkehren' +BADGE = 'Abzeichen-Nummer' +BADGEINITIALS = 'Abzeichen-Nummer & Initialen' +CHANGE = 'Wechseln' +CHOOSE = 'Wählen' +CITIZEN = 'Bürger?' +CLOSE = 'Schließen' +COMPANY = 'Firma' +CONFIRM = 'Bestätigen' +CREATED = 'Erstellt' +CUSTSIGNIN = 'Kundenanmeldung' +CUSTSIGNOUT = 'Kunde Abmelden' +CUST_BANNER = 'Empfangshalle Einloggen / Ausloggen' +DEFAULT = 'Default' +DELETE = 'Löschen' +DELETE_WARNING = '********* WARNUNG! ********** Sind Sie sicher, dass Sie diesen Benutzer und alle zugehörigen Punches LÖSCHEN möchten!?!? Es gibt KEINE UNDO!' +EDIT_PROFILE = 'Profil bearbeiten' +EMAIL = 'E-Mail-Addresse' +EMAIL_NOTVALID = 'Email adresse nicht gültig' +EMAIL_USED = 'E-Mail wird bereits verwendet' +ENAME = 'Eskorte Name' +END = 'Ende' +END_VISIT_WARNING = 'Sind Sie sicher, dass Sie sich abmelden möchten?' +ESCORT = 'Eskorte' +ESECTION = 'Klicken Sie hier, wenn eine Eskorte erforderlich ist' +ESIGNATURE = 'Eskorte Unterschrift' +ETAG = 'Wer wird diese Person begleiten?' +EXCEL = 'Excel' +EXPORT = 'Export' +FIRST = 'Vorname' +FIRSTNAME = 'Vorname' +FLAG = 'Kennzeichen' +GOTOSIGNIN = 'Gehen Sie zur Kunden-Anmeldeschnittstelle' +GDPR_TEXT = 'GDPR ((Datenschutz-Grundverordnung) – Wir haben ein legitimes Interesse daran, Ihre persönlichen Daten aufzuzeichnen, so dass wir während Ihres Besuchs unsere Sorgfaltspflicht gegenüber Ihnen ausüben können und auch im Falle einer zukünftigen Haftung für Verluste oder Schäden, die auf unserer Website entstehen . Ihre Daten werden für maximal sechs Jahre sicher aufbewahrt.' +HOME = 'Zuhause' +HOURS = 'Std' +IDTYPE_NOTEMPTY = 'Bitte wählen Sie den ID-Typ' +ID_CHECKED = 'ID überprüft?' +ID_TYPE = 'ID-Typ?' +ILLEGAL_CHARACTERS = 'Benutzername enthält unzulässige Zeichen' +IN = 'In' +INITIALS = 'Initialen' +INSTHARD = 'Installation von Hardware' +INSTSOFT = 'Installation der Software' +KIOSK = 'Kiosk' +LANG = 'Sprache' +LAST = 'Nachname' +LASTNAME = 'Nachname' +LOCAL_TIME = 'Ortszeit' +LOGIN = 'Anmeldung' +LOGOUT = 'Ausloggen' +MAINHARD = 'Wartung von Hardware' +MAINSOFT = 'Wartung der Software' +MEETING = 'Treffen' +META_DESC = 'LobbySIO ist eine Touchscreen-kompatible Signatur-Pad / Anmeldeformular-Webapp.' +MIN_PASSWORD_LENGTH = 'Minimale Passwortlänge ist ' +NAME = 'Vollständiger Name' +NEW = 'Neu' +NONEAVA = 'Keiner' +NOSIGNIN = 'Keine Anmeldung' +NOTES = 'Anmerkungen' +NOTES_PLACEHOLDER = 'Geben Sie bei Bedarf Notizen ein' +NOT_AUTHORIZED = 'Nicht berechtigt!' +OPTIONAL = 'Optional' +OR_GO_HERE = 'Oder verwenden Sie die folgenden Optionen, um die Kioskeinstellungen zu ändern.' +OUT = 'Aus' +PAGE = 'Seite' +PASSPORT = 'Reisepass' +PASSWORD = 'Passwort' +PASSWORD_NOTCONFIRMED = 'Das Passwort muss bestätigt werden' +PASSWORD_NOTEMPTY = 'Passwort darf nicht leer sein' +PASSWORD_NOTMATCH = 'Passwörter stimmen nicht überein' +PENDINGAPPROVALS = 'Ausstehende Genehmigungen' +PLEASE_LOG_IN = 'Anmelden für Genehmigungen und Reporting' +PRINT = 'Drucken' +PDF = 'PDF' +REASON = 'Grund für den Zugang zu Einrichtungen' +REASONCOMPANY = 'Firma / Grund' +REFERENCE = 'Referenz' +REFRESH = 'Aktualisieren' +REMEQPT = 'Ausrüstung entfernen' +REPORTS = 'Berichte' +REPORTS_DESC = 'Die Dropdown-Liste kann verwendet werden, um vorkonfigurierte Berichte auszuwählen. Weitere Berichte werden gerade geschrieben.' +REQUIRED = 'Erforderlich' +SAVE = 'Speichern' +SELECTID = 'ID auswählen' +SELECTREASON = 'Grund wählen' +SERVER_TIME = 'Serverzeit' +SIGNATURE = 'Unterschrift' +SIGNIN = 'Anmelden' +SIGNIN_THANKYOU = 'Danke, dass Sie sich angemeldet haben. Wir werden Ihnen in Kürze ein Badge zuweisen.' +SIGNOUT = 'Abmelden' +SIGNOUT_THANKYOU = 'Danke - Sie wurden erfolgreich abgemeldet.' +SINCE = 'seit' +SITE = 'Site' +SOFTWARE_VERSION = 'Version' +START = 'Anfang' +STATEID = 'Staat ID' +TERMSTITLE = 'Unsere Regeln' +TESTING = 'Testen' +TIMEINOUT = 'Zeit ein / aus' +TIMEREASON = 'Zeit und Grund' +TIMEZONE = 'Zeitzone' +TOUR = 'Tour' +UNAVAIL = 'Nicht verfügbar' +USER = 'Nutzer' +USERNAME = 'Nutzername' +USERNAME_NOTEMPTY = 'Der Benutzername darf nicht leer sein' +USERNAME_USED = 'Benutzername bereits vergeben' +USERS = 'Benutzerverwaltung' +USERTYPE = 'Benutzertyp' +USER_INFORMATION = 'Nutzerinformation' +USER_LIST_DESC = 'Bearbeiten oder löschen Sie Benutzer und Gruppen unten.' +USER_LIST_HEADER = 'Benutzerliste' +VALIDATIONS = 'Validierungen' +VISITOR = 'Besucher' +VOID = 'Leere' +VOID_WARNING = 'Sind Sie sicher, dass Sie diesen Besuch aufheben möchten? Es gibt kein Rückgängig.' +VSIGNATURE = 'Unterschrift des Besuchers' +YESYES = 'Ja' +NONO = 'Nein' diff --git a/src/Language/en.lang.ini.example b/src/Language/en.lang.ini.example new file mode 100644 index 0000000..9ff6457 --- /dev/null +++ b/src/Language/en.lang.ini.example @@ -0,0 +1,136 @@ +ACCESS_LEVEL = 'Access' +ACCOUNT = 'Account' +ACCOUNT_INFO_DESC = 'You may make changes to your user profile below. To change your password, enter a new password twice below and press save. Minimum password length is ' +ACCOUNT_INFO_HEADER = 'Account Information' +ACKNOWLEDGEMENT = 'By signing in, I acknowledge I have read and understand the Rules and agree to follow the rules of that document while performing work inside the facility. We have an existing facility security policy that takes into account the nationality and citizenship of visitors to the data center in order to comply with U.S. laws such as export control and economic sanction laws. Our objective is only to comply with such U.S. laws and not to deny entrance to personnel arbitrarily.' +ACKNOWLEDGEMENT_DOC_NAME = 'Our Rules' +ACTIONS = 'Actions' +ACTIVEVISITS = 'Active Visits' +ADDEQPT = 'Add Equipment' +ADD_USER = 'Add User' +ADD_USER_DESC = 'All fields are required! Username and email must be unique. Minimum password length is ' +ADMIN = 'Administrator' +ALL = 'All' +APPROVE = 'Approve' +APP_NAME = 'Lobby Sign-In/Sign-Out' +BACK = 'Back' +BADGE = 'Badge#' +BADGEINITIALS = 'Badge & Initials' +CHANGE = 'Change' +CHOOSE = 'Choose' +CITIZEN = 'Citizen?' +CLOSE = 'Close' +COMPANY = 'Company' +CONFIRM = 'Confirm' +CREATED = 'Created' +CUSTSIGNIN = 'Customer Sign In' +CUSTSIGNOUT = 'Customer Sign Out' +CUST_BANNER = 'Lobby Sign-In/Sign-Out' +DEFAULT = 'Default' +DELETE = 'Delete' +DELETE_WARNING = '********* WARNING! ********** Are you SURE you want to DELETE this user AND ALL ASSOCIATED PUNCHES!?!? There is NO UNDO!' +EDIT_PROFILE = 'Edit Profile' +EMAIL = 'E-Mail Address' +EMAIL_NOTVALID = 'Email address not valid' +EMAIL_USED = 'Email already in use' +ENAME = 'Escort Name' +END = 'End' +END_VISIT_WARNING = 'Are you sure you want to sign out?' +ESCORT = 'Escort' +ESECTION = 'Click here if escort required' +ESIGNATURE = 'Escort Signature' +ETAG = 'Who will escort this person?' +EXCEL = 'Excel' +EXPORT = 'Export' +FIRST = 'First' +FIRSTNAME = 'First Name' +FLAG = 'Flag' +GOTOSIGNIN = 'Go to Customer Sign-In Interface' +GDPR_TEXT = 'GDPR (General Data Protection Regulation) – We have a legitimate interest in recording your personal details so that we can exercise our duty of care towards you during your visit and also in the event of any future liability for loss or harm incurred whilst on our site. Your details will be securely retained for a maximum of six years.' +HOME = 'Home' +HOURS = 'Hours' +IDTYPE_NOTEMPTY = 'Please select ID Type' +ID_CHECKED = 'ID Checked?' +ID_TYPE = 'ID Type?' +ILLEGAL_CHARACTERS = 'Username contains illegal characters' +IN = 'In' +INITIALS = 'Initials' +INSTHARD = 'Installation - Hardware' +INSTSOFT = 'Installation - Software' +KIOSK = 'Kiosk' +LANG = 'Language' +LAST = 'Last' +LASTNAME = 'Last Name' +LOCAL_TIME = 'Local Time' +LOGIN = 'Login' +LOGOUT = 'Logout' +MAINHARD = 'Maintenance - Hardware' +MAINSOFT = 'Maintenance - Software' +MEETING = 'Meeting' +META_DESC = 'LobbySIO is a touchscreen-compatible signature pad/sign-in sheet webapp.' +MIN_PASSWORD_LENGTH = 'Minimum password length is ' +NAME = 'Name' +NEW = 'New' +NONEAVA = 'None' +NOSIGNIN = 'No sign in' +NOTES = 'Notes' +NOTES_PLACEHOLDER = 'Enter notes if needed' +NOT_AUTHORIZED = 'Not Authorized!' +OPTIONAL = 'Optional' +OR_GO_HERE = 'Or use the following items to change kiosk settings.' +OUT = 'Out' +PAGE = 'Page' +PASSPORT = 'Passport' +PASSWORD = 'Password' +PASSWORD_NOTCONFIRMED = 'Password must be confirmed' +PASSWORD_NOTEMPTY = 'Password cannot be empty' +PASSWORD_NOTMATCH = 'Passwords do not match' +PENDINGAPPROVALS = 'Pending Approvals' +PLEASE_LOG_IN = 'Log in for approvals and reporting' +PRINT = 'Print' +PDF = 'PDF' +REASON = 'Reason for Facility Access' +REASONCOMPANY = 'Company / Reason' +REFERENCE = 'Reference' +REFRESH = 'Refresh' +REMEQPT = 'Remove Equipment' +REPORTS = 'Reports' +REPORTS_DESC = 'The drop-down below can be used to select pre-configured reports. Other reports are currently being written.' +REQUIRED = 'Required' +SAVE = 'Save' +SELECTID = 'Select ID' +SELECTREASON = 'Select Reason' +SERVER_TIME = 'Server Time' +SIGNATURE = 'Signature' +SIGNIN = 'Sign In' +SIGNIN_THANKYOU = 'Thank you for signing in. We will assign a badge shortly.' +SIGNOUT = 'Sign Out' +SIGNOUT_THANKYOU = 'Thank you - you have been successfully signed out.' +SINCE = 'since' +SITE = 'Site' +SOFTWARE_VERSION = 'Version' +START = 'Start' +STATEID = 'State ID' +TERMSTITLE = 'Our Rules' +TESTING = 'Testing' +TIMEINOUT = 'Time In / Time Out' +TIMEREASON = 'Time & Reason' +TIMEZONE = 'Timezone' +TOUR = 'Tour' +UNAVAIL = 'Unavailable' +USER = 'User' +USERNAME = 'Username' +USERNAME_NOTEMPTY = 'Username cannot be empty' +USERNAME_USED = 'Username already in use' +USERS = 'User Management' +USERTYPE = 'User Type' +USER_INFORMATION = 'User Information' +USER_LIST_DESC = 'Edit or delete users and groups below.' +USER_LIST_HEADER = 'User List' +VALIDATIONS = 'Validations' +VISITOR = 'Visitor' +VOID = 'Void' +VOID_WARNING = 'Are you sure you want to VOID this visit? There is no undo.' +VSIGNATURE = 'Visitor Signature' +YESYES = 'Yes' +NONO = 'No' diff --git a/src/Language/es.lang.ini.example b/src/Language/es.lang.ini.example new file mode 100644 index 0000000..8e0cb44 --- /dev/null +++ b/src/Language/es.lang.ini.example @@ -0,0 +1,136 @@ +ACCESS_LEVEL = 'Nivel de acceso' +ACCOUNT = 'Cuenta' +ACCOUNT_INFO_DESC = 'Puede realizar cambios en su perfil de usuario a continuación. Para cambiar su contraseña, ingrese una nueva contraseña dos veces abajo y presione guardar. La longitud mínima de la contraseña es ' +ACCOUNT_INFO_HEADER = 'Información de la cuenta' +ACKNOWLEDGEMENT = 'Al iniciar sesión, reconozco que he leído y entiendo las Reglas y acepto seguir las reglas de ese documento mientras realizo el trabajo dentro de la instalación. Tenemos una política de seguridad en las instalaciones que tiene en cuenta la nacionalidad y la ciudadanía de los visitantes del centro de datos para cumplir con las leyes de los EE. UU., Como las leyes de control de exportaciones y sanciones económicas. Nuestro objetivo es solo cumplir con las leyes de los EE. UU. Y no negar la entrada al personal de manera arbitraria.' +ACKNOWLEDGEMENT_DOC_NAME = 'Nuestras reglas' +ACTIONS = 'Acciones por tomar' +ACTIVEVISITS = 'Visitas activas' +ADDEQPT = 'Agregar Equipo' +ADD_USER = 'Agregar usuario' +ADD_USER_DESC = '¡Todos los campos son obligatorios! El nombre de usuario y el correo electrónico deben ser únicos. La longitud mínima de la contraseña es ' +ADMIN = 'Administrador' +ALL = 'Todos' +APPROVE = 'Autorizar' +APP_NAME = 'Lobby de inicio / cierre de sesión' +BACK = 'Inicia' +BADGE = 'Numero de placa' +BADGEINITIALS = 'Numero de placa & Sigla' +CHANGE = 'Cambiar' +CHOOSE = 'Por favor seleccione' +CITIZEN = 'Ciudadano de estados unidos?' +CLOSE = 'Cerrar' +COMPANY = 'Organización' +CONFIRM = 'Confirmar' +CREATED = 'Creado' +CUSTSIGNIN = 'Llegada del cliente' +CUSTSIGNOUT = 'Salida del cliente' +CUST_BANNER = 'Lobby de inicio / cierre de sesión' +DEFAULT = 'Defecto' +DELETE = 'Borrar' +DELETE_WARNING = '********* ¡ADVERTENCIA! ********** ¿Estás seguro de que quieres BORRAR este usuario? No hay UNDO!' +EDIT_PROFILE = 'Editar perfil' +EMAIL = 'Dirección de correo electrónico' +EMAIL_NOTVALID = 'La dirección de correo electrónico no es válida' +EMAIL_USED = 'Email ya en uso' +ENAME = 'Nombre de Escolta' +END = 'Fin' +END_VISIT_WARNING = '¿Estás seguro de que quieres cerrar sesión?' +ESCORT = 'Guía' +ESECTION = 'Haga clic aquí si usa una guía' +ESIGNATURE = 'Firma de Escolta' +ETAG = 'Quien escoltara a esta persona' +EXCEL = 'Excel' +EXPORT = 'Exportar' +FIRST = 'Primero' +FIRSTNAME = 'Nombre de pila' +FLAG = 'Marcar' +GOTOSIGNIN = 'Ir a la interfaz del cliente' +GDPR_TEXT = 'GDPR (Reglamento general de protección de datos): tenemos un interés legítimo en registrar sus datos personales para que podamos ejercer nuestro deber de atención hacia usted durante su visita y también en el caso de cualquier responsabilidad futura por pérdida o daño incurrido mientras esté en nuestro sitio. . Sus datos se conservarán de forma segura durante un máximo de seis años.' +HOME = 'Página de inicio' +HOURS = 'Horas' +IDTYPE_NOTEMPTY = 'Por favor seleccione tipo' +ID_CHECKED = 'Identificación verificada?' +ID_TYPE = 'Tipo de Identificación?' +ILLEGAL_CHARACTERS = 'Nombre de usuario contiene caracteres no válidos' +IN = 'Hora de llegada' +INITIALS = 'La sigla' +INSTHARD = 'Instalación de Hardware' +INSTSOFT = 'Instalación de Software' +KIOSK = 'Quiosco' +LANG = 'Idioma' +LAST = 'Apellido' +LASTNAME = 'Apellido' +LOCAL_TIME = 'Tiempo actual' +LOGIN = 'Iniciar sesión' +LOGOUT = 'Cerrar sesión' +MAINHARD = 'Mantenimiento de Hardware' +MAINSOFT = 'Mantenimiento de Software' +MEETING = 'Cita' +META_DESC = 'LobbySIO es una aplicación web compatible con pantalla táctil compatible con pantalla táctil.' +MIN_PASSWORD_LENGTH = 'La longitud mínima de la contraseña es ' +NAME = 'Nombre' +NEW = 'Nuevo' +NONEAVA = 'Nada' +NOSIGNIN = 'No completó' +NOTES = 'Notas' +NOTES_PLACEHOLDER = 'Introduce notas si es necesario' +NOT_AUTHORIZED = '¡No autorizado!' +OPTIONAL = 'Opcional' +OR_GO_HERE = 'O use los siguientes elementos para cambiar la configuración del quiosco.' +OUT = 'Hora de salida' +PAGE = 'Número de página' +PASSPORT = 'Pasaporte' +PASSWORD = 'Contraseña' +PASSWORD_NOTCONFIRMED = 'La contraseña debe ser confirmada' +PASSWORD_NOTEMPTY = 'La contraseña no puede estar vacía' +PASSWORD_NOTMATCH = 'Las contraseñas no coinciden' +PENDINGAPPROVALS = 'Aprobaciones pendientes' +PLEASE_LOG_IN = 'Inicie sesión para aprobaciones y reportes' +PRINT = 'Impresión' +PDF = 'PDF' +REASON = 'Razón para el acceso a las instalaciones' +REASONCOMPANY = 'Empresa / Razón' +REFERENCE = 'Referencia' +REFRESH = 'Recargar' +REMEQPT = 'Llevar Equipo' +REPORTS = 'Informes' +REPORTS_DESC = 'El menú desplegable a continuación se puede utilizar para seleccionar informes preconfigurados. Otros informes se están escribiendo actualmente.' +REQUIRED = 'Necesario' +SAVE = 'Salvar' +SELECTID = 'Por favor seleccione' +SELECTREASON = 'Por favor seleccione tipo' +SERVER_TIME = 'Tiempo de Servidor' +SIGNATURE = 'Firma' +SIGNIN = 'Llegada del cliente' +SIGNIN_THANKYOU = 'Gracias por iniciar sesión. Le asignaremos una credencial en breve.' +SIGNOUT = 'Salida del cliente' +SIGNOUT_THANKYOU = 'Gracias, te has desconectado.' +SINCE = 'desde' +SITE = 'Sitio' +SOFTWARE_VERSION = 'Versión del software' +START = 'Comienzo' +STATEID = 'Identificación del estado' +TERMSTITLE = 'Nuestras reglas' +TESTING = 'Ensayo' +TIMEINOUT = 'Tiempo de inicio / fin de tiempo' +TIMEREASON = 'Tiempo y razon' +TIMEZONE = 'Zona horaria' +TOUR = 'Visitar' +UNAVAIL = 'Indisponible' +USER = 'Usuario' +USERNAME = 'Usuario' +USERNAME_NOTEMPTY = 'El nombre de usuario no puede estar vacío' +USERNAME_USED = 'Nombre de usuario ya está en uso' +USERS = 'Gestión de usuarios' +USERTYPE = 'Tipo de usuario' +USER_INFORMATION = 'Informacion del usuario' +USER_LIST_DESC = 'Edite o elimine usuarios y grupos a continuación.' +USER_LIST_HEADER = 'Lista de usuarios' +VALIDATIONS = 'Validaciones' +VISITOR = 'Visitante' +VOID = 'Invalidar' +VOID_WARNING = '¿Seguro que quieres anular esta visita? No hay deshacer.' +VSIGNATURE = 'Firma del Visitante' +YESYES = 'Sí' +NONO = 'No' diff --git a/src/Language/fr.lang.ini.example b/src/Language/fr.lang.ini.example new file mode 100644 index 0000000..1c807c7 --- /dev/null +++ b/src/Language/fr.lang.ini.example @@ -0,0 +1,136 @@ +ACCESS_LEVEL = 'Niveau d'accès' +ACCOUNT = 'Compte' +ACCOUNT_INFO_DESC = 'Vous pouvez modifier votre profil d'utilisateur ci-dessous. Pour changer votre mot de passe, entrez un nouveau mot de passe deux fois ci-dessous et appuyez sur enregistrer. La longueur minimale du mot de passe est ' +ACCOUNT_INFO_HEADER = 'Information sur le compte' +ACKNOWLEDGEMENT = 'En me connectant, je reconnais avoir lu et compris les Règles et accepté de suivre les règles de ce document lors de l'exécution de travaux à l'intérieur de l'établissement. Nous avons une politique de sécurité des installations existante qui prend en compte la nationalité et la citoyenneté des visiteurs du centre de données afin de respecter les lois américaines, telles que les lois sur le contrôle des exportations et les sanctions économiques. Notre objectif est uniquement de nous conformer à ces lois américaines et non de refuser l'entrée au personnel de manière arbitraire.' +ACKNOWLEDGEMENT_DOC_NAME = 'Nos règles' +ACTIONS = 'Actions' +ACTIVEVISITS = 'Visites actives' +ADDEQPT = 'Ajouter un équipement' +ADD_USER = 'Ajouter un utilisateur' +ADD_USER_DESC = 'Tous les champs sont requis! Le nom d'utilisateur et l'adresse e-mail doivent être uniques. La longueur minimale du mot de passe est ' +ADMIN = 'Administrateur' +ALL = 'Tout' +APPROVE = 'Approuver' +APP_NAME = 'Vestibule register/se désinscrire' +BACK = 'Retour' +BADGE = 'Numéro de badge' +BADGEINITIALS = 'Numéro de badge & Initiales' +CHANGE = 'Changement' +CHOOSE = 'Choisir' +CITIZEN = 'Citoyen?' +CLOSE = 'Terminer' +COMPANY = 'Organisation' +CONFIRM = 'Confirmer' +CREATED = 'Créé' +CUSTSIGNIN = 'Connexion client' +CUSTSIGNOUT = 'Déconnexion du client' +CUST_BANNER = 'Vestibule register/se désinscrire' +DEFAULT = 'Défaut' +DELETE = 'Effacer' +DELETE_WARNING = '********* ATTENTION! ********** Êtes-vous sûr de vouloir SUPPRIMER cet utilisateur ET TOUS LES POINÇONS ASSOCIÉS!?!? Il n'y a pas d'annulation!' +EDIT_PROFILE = 'Editer le profil' +EMAIL = 'Adresse électronique' +EMAIL_NOTVALID = 'Adresse email non valide' +EMAIL_USED = 'Email déjà utilisé' +ENAME = 'Nom d'escorte' +END = 'Fin' +END_VISIT_WARNING = 'Êtes-vous certain de vouloir vous déconnecter?' +ESCORT = 'Escorte' +ESECTION = 'Cliquez ici si une escorte est requise' +ESIGNATURE = 'Escorte Signature' +ETAG = 'Qui escortera cette personne?' +EXCEL = 'Excel' +EXPORT = 'Exportation' +FIRST = 'Prénom' +FIRSTNAME = 'Prénom' +FLAG = 'Marque' +GOTOSIGNIN = 'Aller à l'interface de connexion client' +GDPR_TEXT = 'GDPR (règlement général sur la protection des données) - Nous avons un intérêt légitime à enregistrer vos données personnelles de manière à pouvoir exercer notre devoir de vigilance à votre égard pendant votre visite et également en cas de responsabilité future pour la perte ou le préjudice subi pendant la visite de notre site. . Vos coordonnées seront conservées de manière sécurisée pendant un maximum de six ans.' +HOME = 'Accueil' +HOURS = 'Heures' +IDTYPE_NOTEMPTY = 'Veuillez sélectionner un type d'identification' +ID_CHECKED = 'ID vérifié?' +ID_TYPE = 'Type d'identification?' +ILLEGAL_CHARACTERS = 'Le nom d'utilisateur contient des caractères illégaux' +IN = 'Dans' +INITIALS = 'Initiales' +INSTHARD = 'Installation de matériel' +INSTSOFT = 'Installation de logiciel' +KIOSK = 'Kiosque' +LANG = 'La langue' +LAST = 'Nom de famille' +LASTNAME = 'Nom de famille' +LOCAL_TIME = 'Heure locale' +LOGIN = 'S'identifier' +LOGOUT = 'Connectez - Out' +MAINHARD = 'Maintenance du Hardware' +MAINSOFT = 'Maintenance du Software' +MEETING = 'Réunion' +META_DESC = 'LobbySIO est une application Web pour tablette de signature / feuille de connexion compatible avec les écrans tactiles.' +MIN_PASSWORD_LENGTH = 'La longueur minimale du mot de passe est ' +NAME = 'Nom complet' +NEW = 'Nouveau' +NONEAVA = 'Aucun' +NOSIGNIN = 'Pas de connexion' +NOTES = 'Notes' +NOTES_PLACEHOLDER = 'Entrez des notes si nécessaire' +NOT_AUTHORIZED = 'Pas autorisé!' +OPTIONAL = 'Optionnel' +OR_GO_HERE = 'Ou utilisez les éléments suivants pour modifier les paramètres du kiosque.' +OUT = 'En dehors' +PAGE = 'Page' +PASSPORT = 'Passeport' +PASSWORD = 'Mot de passe' +PASSWORD_NOTCONFIRMED = 'Le mot de passe doit être confirmé' +PASSWORD_NOTEMPTY = 'Le mot de passe ne peut pas être vide' +PASSWORD_NOTMATCH = 'Les mots de passe ne correspondent pas' +PENDINGAPPROVALS = 'En attente d`approbation' +PLEASE_LOG_IN = 'Connectez-vous pour les approbations et les rapports' +PRINT = 'Impression' +PDF = 'PDF' +REASON = 'Raison de l’accès aux installations' +REASONCOMPANY = 'Organisation / Raison' +REFERENCE = 'Reference' +REFRESH = 'Actualiser' +REMEQPT = 'Remove Equipment' +REPORTS = 'Rapports' +REPORTS_DESC = 'Le menu déroulant ci-dessous peut être utilisé pour sélectionner des rapports préconfigurés. D'autres rapports sont en cours de rédaction.' +REQUIRED = 'Required' +SAVE = 'Save' +SELECTID = 'Select ID' +SELECTREASON = 'Select Reason' +SERVER_TIME = 'Heure du serveur' +SIGNATURE = 'Signature' +SIGNIN = 'Sign In' +SIGNIN_THANKYOU = 'Merci pour votre connexion. Nous attribuerons un badge dans quelques instants.' +SIGNOUT = 'Sign Out' +SIGNOUT_THANKYOU = 'Merci - vous avez été déconnecté avec succès.' +SINCE = 'depuis' +SITE = 'Site' +SOFTWARE_VERSION = 'Version' +START = 'Début' +STATEID = 'State ID' +TERMSTITLE = 'Nos règles' +TESTING = 'Essai' +TIMEINOUT = 'Time In / Time Out' +TIMEREASON = 'Temps et raison' +TIMEZONE = 'Fuseau horaire' +TOUR = 'Tour' +UNAVAIL = 'Indisponible' +USER = 'Utilisateur' +USERNAME = 'Nom d'utilisateur' +USERNAME_NOTEMPTY = 'Le nom d'utilisateur ne peut pas être vide' +USERNAME_USED = 'Nom d'utilisateur déjà utilisé' +USERS = 'Gestion des utilisateurs' +USERTYPE = 'Type d'utilisateur' +USER_INFORMATION = 'Informations de l'utilisateur' +USER_LIST_DESC = 'Modifier ou supprimer des utilisateurs et des groupes ci-dessous.' +USER_LIST_HEADER = 'Liste d'utilisateur' +VALIDATIONS = 'Endossements' +VISITOR = 'Visiteur' +VOID = 'Vide' +VOID_WARNING = 'Êtes-vous sûr de vouloir annuler cette visite? Il n'y a pas d'annuler.' +VSIGNATURE = 'Visiteur Signature' +YESYES = 'Oui' +NONO = 'Non' diff --git a/src/Language/index.php b/src/Language/index.php new file mode 100644 index 0000000..70bbb31 --- /dev/null +++ b/src/Language/index.php @@ -0,0 +1 @@ +. + */ + +namespace App\LobbySIO\Misc; + +/** + * Description of DateFunctions + * + * @author josh.north + */ +class DateFunctions { + //put your code here +} diff --git a/src/Misc/PasswordHash.php b/src/Misc/PasswordHash.php new file mode 100755 index 0000000..336ec8b --- /dev/null +++ b/src/Misc/PasswordHash.php @@ -0,0 +1,193 @@ +. + */ + +class PasswordHash { + var $itoa64; + var $iteration_count_log2; + var $portable_hashes; + var $random_state; + function PasswordHash($iteration_count_log2, $portable_hashes) + { + $this->itoa64 = './0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'; + + if ($iteration_count_log2 < 4 || $iteration_count_log2 > 31) + $iteration_count_log2 = 8; + $this->iteration_count_log2 = $iteration_count_log2; + + $this->portable_hashes = $portable_hashes; + + $this->random_state = microtime(); + if (function_exists('getmypid')) + $this->random_state .= getmypid(); + } + function get_random_bytes($count) + { + $output = ''; + if (is_readable('/dev/urandom') && + ($fh = @fopen('/dev/urandom', 'rb'))) { + $output = fread($fh, $count); + fclose($fh); + } + if (strlen($output) < $count) { + $output = ''; + for ($i = 0; $i < $count; $i += 16) { + $this->random_state = + md5(microtime() . $this->random_state); + $output .= + pack('H*', md5($this->random_state)); + } + $output = substr($output, 0, $count); + } + return $output; + } + function encode64($input, $count) + { + $output = ''; + $i = 0; + do { + $value = ord($input[$i++]); + $output .= $this->itoa64[$value & 0x3f]; + if ($i < $count) + $value |= ord($input[$i]) << 8; + $output .= $this->itoa64[($value >> 6) & 0x3f]; + if ($i++ >= $count) + break; + if ($i < $count) + $value |= ord($input[$i]) << 16; + $output .= $this->itoa64[($value >> 12) & 0x3f]; + if ($i++ >= $count) + break; + $output .= $this->itoa64[($value >> 18) & 0x3f]; + } while ($i < $count); + return $output; + } + function gensalt_private($input) + { + $output = '$P$'; + $output .= $this->itoa64[min($this->iteration_count_log2 + + ((PHP_VERSION >= '5') ? 5 : 3), 30)]; + $output .= $this->encode64($input, 6); + + return $output; + } + function crypt_private($password, $setting) + { + $output = '*0'; + if (substr($setting, 0, 2) == $output) + $output = '*1'; + $id = substr($setting, 0, 3); + # We use "$P$", phpBB3 uses "$H$" for the same thing + if ($id != '$P$' && $id != '$H$') + return $output; + $count_log2 = strpos($this->itoa64, $setting[3]); + if ($count_log2 < 7 || $count_log2 > 30) + return $output; + $count = 1 << $count_log2; + $salt = substr($setting, 4, 8); + if (strlen($salt) != 8) + return $output; + if (PHP_VERSION >= '5') { + $hash = md5($salt . $password, TRUE); + do { + $hash = md5($hash . $password, TRUE); + } while (--$count); + } else { + $hash = pack('H*', md5($salt . $password)); + do { + $hash = pack('H*', md5($hash . $password)); + } while (--$count); + } + $output = substr($setting, 0, 12); + $output .= $this->encode64($hash, 16); + return $output; + } + function gensalt_extended($input) + { + $count_log2 = min($this->iteration_count_log2 + 8, 24); + $count = (1 << $count_log2) - 1; + $output = '_'; + $output .= $this->itoa64[$count & 0x3f]; + $output .= $this->itoa64[($count >> 6) & 0x3f]; + $output .= $this->itoa64[($count >> 12) & 0x3f]; + $output .= $this->itoa64[($count >> 18) & 0x3f]; + $output .= $this->encode64($input, 3); + return $output; + } + function gensalt_blowfish($input) + { + $itoa64 = './ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; + $output = '$2a$'; + $output .= chr(ord('0') + $this->iteration_count_log2 / 10); + $output .= chr(ord('0') + $this->iteration_count_log2 % 10); + $output .= '$'; + $i = 0; + do { + $c1 = ord($input[$i++]); + $output .= $itoa64[$c1 >> 2]; + $c1 = ($c1 & 0x03) << 4; + if ($i >= 16) { + $output .= $itoa64[$c1]; + break; + } + $c2 = ord($input[$i++]); + $c1 |= $c2 >> 4; + $output .= $itoa64[$c1]; + $c1 = ($c2 & 0x0f) << 2; + $c2 = ord($input[$i++]); + $c1 |= $c2 >> 6; + $output .= $itoa64[$c1]; + $output .= $itoa64[$c2 & 0x3f]; + } while (1); + return $output; + } + function HashPassword($password) + { + $random = ''; + if (CRYPT_BLOWFISH == 1 && !$this->portable_hashes) { + $random = $this->get_random_bytes(16); + $hash = + crypt($password, $this->gensalt_blowfish($random)); + if (strlen($hash) == 60) + return $hash; + } + if (CRYPT_EXT_DES == 1 && !$this->portable_hashes) { + if (strlen($random) < 3) + $random = $this->get_random_bytes(3); + $hash = + crypt($password, $this->gensalt_extended($random)); + if (strlen($hash) == 20) + return $hash; + } + if (strlen($random) < 6) + $random = $this->get_random_bytes(6); + $hash = + $this->crypt_private($password, + $this->gensalt_private($random)); + if (strlen($hash) == 34) + return $hash; + return '*'; + } + function CheckPassword($password, $stored_hash) + { + $hash = $this->crypt_private($password, $stored_hash); + if ($hash[0] == '*') + $hash = crypt($password, $stored_hash); + return $hash == $stored_hash; + } +} diff --git a/src/Misc/StaticFunctions.php b/src/Misc/StaticFunctions.php new file mode 100644 index 0000000..ac49425 --- /dev/null +++ b/src/Misc/StaticFunctions.php @@ -0,0 +1,105 @@ +. + */ + +namespace App\LobbySIO\Misc; +use App\LobbySIO\Config\Registry; + +/** + * Miscellaneous junk probably not even deserving of a class but whatever + * + * @author josh.north + */ +class StaticFunctions { + public function getVersion ($app_disp_lang) { + $Translate = new \App\LobbySIO\Language\Translate($app_disp_lang); + $transLang = $Translate->userLanguage(); + echo $transLang['SOFTWARE_VERSION'] . ': lobbysio_v0.14-beta'; + } + + public function getUTC () { + return gmdate('Y-m-d H:i:s'); + } + + public function getTitle ($app_current_pagename, $app_disp_lang) { + $Translate = new \App\LobbySIO\Language\Translate($app_disp_lang); + $transLang = $Translate->userLanguage(); + echo Registry::ORGANIZATION . " > " . $transLang['APP_NAME'] . " > " . $app_current_pagename; + } + + public function getDefaultLanguage () { + return Registry::DEFAULTLANGUAGE; + } + + public function getDefaultTZ () { + return Registry::DEFAULTTZ; + } + + public function getLogo () { + if(file_exists('assets/logo-small.png')) { + return 'assets/logo-small.png'; + } else { + return 'assets/logo-small.example.png'; + } + } + + public function getRules () { + if(file_exists('assets/Rules.pdf')) { + return 'assets/Rules.pdf'; + } else { + return 'assets/Rules.example.pdf'; + } + } + + public function getLogoText () { + if(file_exists('assets/logo-text.png')) { + return 'assets/logo-text.png'; + } else { + return 'assets/logo-text.example.png'; + } + } + + public function getPageRows () { + return Registry::ROWSPERPAGE; + } + + public function getMinPass () { + return Registry::MINPASS; + } + + public function killSession() { + session_unset(); + session_destroy(); + session_write_close(); + header("Location: index.php"); + } + + public function getFooter () { + echo Registry::DEFAULTLANGUAGE; + } + + public function getSessionStatus () { + if (!isset($_SESSION['user_id']) || !isset($_SESSION['signature']) || !isset($_SESSION['loggedIn']) || $_SESSION['loggedIn'] != true || $_SESSION['signature'] != md5($_SESSION['user_id'] . $_SERVER['HTTP_USER_AGENT'])) { + return false; + } else { + return true; + } + } + + +} diff --git a/src/Misc/index.php b/src/Misc/index.php new file mode 100644 index 0000000..70bbb31 --- /dev/null +++ b/src/Misc/index.php @@ -0,0 +1 @@ +. + */ + + ini_set('session.gc_maxlifetime', 24*60*60); // MIN SESSION + ini_set('session.gc_probability', 1); // GC RATES + ini_set('session.gc_divisor', 100); // TIMES + session_save_path('.tmp'); // TEMP + session_start(); // START + require_once __DIR__ . '/autoload.php'; // AUTOLOAD + $StaticFunctions = new \App\LobbySIO\Misc\StaticFunctions(); // CLASSES + $Users = new \App\LobbySIO\Database\Users(); + if(!isset($_COOKIE['app_disp_lang'])) { $app_disp_lang = $StaticFunctions->getDefaultLanguage(); } else { $app_disp_lang = $_COOKIE['app_disp_lang']; }; + $Translate = new \App\LobbySIO\Language\Translate($app_disp_lang); + $transLang = $Translate->userLanguage(); // SETUP TRANSLATOR + $app_current_pagename = $transLang['USERS']; // PAGE FUNCTION + $app_current_pageicon = ' '; // PAGE ICON + require_once("inc/header.inc.php"); // SHOW HEADER + if ($StaticFunctions->getSessionStatus() == false) { // CHECK STATUS + echo $StaticFunctions->killSession(); // ELSE DIE + } else { ?> + + +

    + +deleteUser($deleteid); + echo "user deleted!"; + header('Location: ' . $_SERVER['PHP_SELF']); + } +} + +// Set up pagination +$page_num = 1; +if(!empty($_GET['pnum'])): + $page_num = filter_input(INPUT_GET, 'pnum', FILTER_VALIDATE_INT); + if(false === $page_num): + $page_num = 1; + endif; +endif; +$offset = ($page_num - 1) * $StaticFunctions->getPageRows(); +$row_count = count($Users->getUserInfo("%", "%", "%")); +$page_count = 0; +if (0 === $row_count): else: $page_count = (int)ceil($row_count / $StaticFunctions->getPageRows()); if($page_num > $page_count): $page_num = 1; endif; endif; +?> + + + + +
    +
    +
    +

    +
    +
    + +
    +
    +
  • ' . $transLang['PAGE'] . '
  • '; for ($i = 1; $i <= $page_count; $i++): echo '
  • ' . $i . '
  • '; endfor; echo ''; ?> + + + + + + + + getUserInfo("%", $StaticFunctions->getPageRows(), $offset) as $row): ?> + + + + + +
    +
    + getMinPass(); + ?> + + + + + + +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
    )z>?r^EIOlZN^iOK7*)q5PalZ0V46BT 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/webfonts/fa-brands-400.ttf b/webfonts/fa-brands-400.ttf new file mode 100755 index 0000000000000000000000000000000000000000..ecbc761ef8cbce6bed98c0d4abb01f6dac5c471e GIT binary patch literal 118324 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 literal 0 HcmV?d00001 diff --git a/webfonts/fa-brands-400.woff b/webfonts/fa-brands-400.woff new file mode 100755 index 0000000000000000000000000000000000000000..21c2dd306306138b06705fd6a1d6583ace61bb8c GIT binary patch literal 76344 zcmZ6RQ*t5Y;t*$z1Rd>59 zNlAf#f`EX4((!=6|F53o_&@t!^Zzf>Y8qnyI>7wn{Qsm*5>4r)q{htlk4gNq#s5iD zgij5_)DGbIk41ohz~_U2;8wY%`F>g2dRl;hAku(IP_z(VL1OIH&f1-d80Ivnwxp@3zfB(hY0|9}2TxkB`vUM>1*AH(51O)8! ze-c#5W3mHyID&u@{?C{ApGd&!!0hY+cIN-s{y$%H5D;)WBe?cEM~B}oAfUuDARurz zARwrx(r9kY@a&m0$Ah}P@Vjb4zskm z^uhJimGAV0q5q@P0YnazMzmZ_wqOPh=Lfzt{Z5Vky9Z(l+uyM1(c{|_9!?pL@P7Ed z_`did`9Ab*wyukRp3~V*-*SEU$=P=Yg?k0jU8%Ftz9;){Sx4tJVf#w0%f${-`<8iM z2=giZTh=#&e_#Jd`|XvF*52^TqxdI_@KF2{`X__%9`obP`>|i}&#nWU-7q-7kp?C{ zjCzRuAe4o*2g4!+5+M6Z!T_Hik_yn+!10688>(xd4ryQ}h$uA~_3)`7#2>LSo!+2p ziwnIwJv-{Fk>cXZPEwe+u!L`t++4EtY-9Ui`@Okq>#uTLWGxvRorR(BeS}OR+~Sdj zeqW6|*FX8G2ncZSuCX`i}v;^*p_|6uMbX*9~c&%k^? z%RBwt$8X6yf&F^m7ejn%`Of=|IOm+n{J4iX-=ubiO@tKhm_|PQ8z7cJP!^^GAhmo0 zXcK8Vrd9J!&jM^VW_2ub%$d?6HF&3!zd5EEo%CXK-hN!teqQ=x%H3@4ULoIthks)n zhU_4leRc%^m6H24>ghwGK;q%p-|P3q+!3*r)5sUKqP}hJB&1z@8R>&KXPb!do7R ze-b(rkSR)%ZwG`o&crnyT|)4~_HX&F!P(R@`yKna4rf-xpLl@9Z*gwK*?Gk9JK@ZU zGhYr}bYyhv5&f=ZR2(3wj__VU!Dk(@=Ng9MM=Req6EGF5q2>c{sleSQt_avEnwE`=xq=~!1o{Q)(+}7q5Td!enp^f#IsS3sJ}z(8+Csr z62ABOnOW|Ijw|OQ6Gv5Yos+v&*J`vLE$>Pr1W0c-YHleuzPq*M+MMc%+t{XWBDxi~ zwq##oKna5dLz&kbkkRsV*aSzL6;VQkg&R<}apOyX#x6%p_trI z9mKlo0zy-6Kw0nw(~PI1V8|wNU3p2>_!Anz^oDc|uc;9rE#!i^Vvt9K;p;On$!!1; z%|fkXFo+)~9EP1iKaga!aHs~JTc0KKPPUOBS2|*6m`61u_dp8vhOMJ~1dk;Svpd(R zM_YF|(!@%T3f7HH5mnyizG+`_tkNVEw>(nAB!?;O**ff2Ga#F`hj`xt)&Z_VE5sdY z+xFlJlv_ICgh$Jxcz_XOm(ejALYlRYF>P*+-{h2q32Rr>Q67Suoe8sgyhDs3H+DY6 z9dlc5&^x9&Fr-kCLcwQkD+vw-QipFP;NFK-h&+k ze-sC+SGl1NyuPU0ldyWap5cRP*fds6Z2qvuunnh}@TlAYZ8eXJVQ!SqIghjr-RfJcJz{d2j&{C{TnoaIgj=R zu)uz4?dSn_6iv$87dRr*9;F!1DR+!DhTGhbRd^pu03rCEr1s)~JLVeK?GB`sq9BE< zd0%?bls!=qk!5im2`>nCSbTLK7>8aM-1sF!-e|A-bB9ePZ;Io0krpJ?5Vf zZLd6PNPHY=7#rqS)*(6sznTW3U}9>Iusg^`j{Z9nD?fAyt62*;dY)IEpi`XFh*pan zdN=%|Y7-yqPk~04Fe7wL|J#R9SCUVBuoK^(GMwMNMkF<82YYC1(YNrSspOyCK}xvk zvQ;vl(m^e|)1jDDK7}N;^L&6+*nY!==N}tUuU&_cCH^kan9fCi>a@Anm!T+3zvKot zNg#cV2`V4#g-*y^65r2)2^RP5OVdi0M{6kJd z3_yl}0O0@@sSR9`7|drFn0fea$PlNYKF|Y5(LeLBLxy00qK0ab32jOFl4@3Sb+R4~mDR(|y`OU?6GC8xRMG7lN_GV|Y6B!V9TqF!n1A-zaL zKB8WA>yYQ2yC^03KV>9eIgmk*Us!NUmeCOBHhWkl^Sh}3g!!xn15N7toYyce=3%s9 zN6LWpYycx4LWna2J!FV*AP&$9YxuR1Ps)JpW(`9O@68pW6taUq1P34vzs+nY7T2b| zyh720?G^}G9r8m4#5O#LYtvtXqQZslkPPtwj3OEgH%Q5R7%wqV`%v9tVemt~$cNg8 z6wv_11rc}9vOg?1T+yXI_r=;%)WVUCL`Zrgs)`$QY0g7jtZNW}ZtW>p{t;`|Z?b2jxG9CZ`RN8atkn~!LNk2jgjfH&sg?A>V_#t4cDNW|Q@){u;Ok!fO>BBEAD zu`-Wao6Iyfc5R5qaEA2q9~K5ZzHo+q379a7zP}HL2nrn@4A~Rk!GNxF6VaySebI=% z6G_8+%#WImEWPk(#(2^aQ5zGZ#$%V%S27ysVkn`ptdA!{&a>r_8Sh5Aj$~Au8nCVf z-Kn#lTzO>S{B{;FNXYBVBl+_61-(1kK{vs;I_khj2*gx+5~rqJJKF82e~}E!EG3g7zEMd_+xUIZ!;R# zqP@V>nasdzcS}(l_v7{k^xDOMt#z=Xv%HLwf&NzBrcaxDaxgj9zd}D^w>*aIxoH-M z=&@;r1KVxYkp#W@Q?Y) zoLBzGdp$E;a259*L6ADvrMx@YB}tJl*M$m()FJ>SEQAWySeb+dwGM%cCb(jrqym5x zgm!~2dFPog;dkeXH-fOeoV7*$^+IR5dd-0(OpG1=L z!}gByu5i%c*nEq3AQ+V3x~_sDedkE{RK(Jt{D&~+(2xrcsf$sLrm`5AQd>MoU_Y1` zs~yS7fm2&#$P#;~!WFbN9MJS26xoETj`g&50P`)1D6~E525kVQWla;zf1->h(tBs( z06sXm3nXex=IXA5R4Vz4gbOX9O3>otQri3{MZ=SdMv?KYjD~Ebv+v&;VF~Cs+k}XW zvPM1krgpFcent2(MjyBQVlv*#Z;zb;Bi;C;gz7>75k5iux z2hjo0v49A+rWKLJ=S)O%~DPAZzlKzZXzJfq2dP5qO7qZ(^Z*4D}6K2(-Vk zCxHVO0rCa;DeB&K2dc`QEI{c>yQ&BKg^J2~ljEqMNtoCmnbX1s`>?163E3ZdVOk|C zVw7NZ>SxMTTd}#nx$MbGr*hN!scTlttXq-GGKmy8qC?4-o3C0PXP|wS zAB@8Bb9J%Go{EokY3*pJqkfkya;(Fo#nU31GK&r>HD#Au>k(fPT9>FT*vM+3Rio#T z{3DuwKPE8tmaDZAOLMwZX`u$xyY=z!R6#OAq&LNM%flNq3}ux71JPO ztXK(SxNcE=rG2id)yXQujq0`Z9;tcXd}N;H;Ug3%g1LS}N}Y)-9~mB4AAlaPj}hd|5bfxIi1= zj-}lhgK>ad!r5wruN47CI+)06ws@k;4EBW$N$@8@WtXVz0%0OP1kWxf+=ELbmv~o# zh|Kl3%#RD2NLz^ELSlAb!82xH{$hD=JAzOeQxwrf!Mx9{RoR>oz1z*RwDke0ILXkW z2;g$?t8KFDVh_wwh9o%9bdpl0cEwai0KnI=9&6GVeYwB2TJkAmVt@DE2r~l+67+e} zBpQ2&Ffm(Yatk(qrmLE@fq(3)okS}+IpOVmlkZ|Ht?cQOBv&L)5!^3a^Xfj%Sm$4R zPIxiM8PMRh8x4z&C#*43)gKs&rf$^_0b8}wm5LIH#*rTWH3P=cNVXI%9vAbBz|Ocv z1^CfS!+BN%hEQlmMDh;@)A8pI!Sxl}euE3sNZl@2y?qN=hBh3#{fEG&?k|{~P7*Z5SnQu*ZnPwGa59F{MG?IK#pTL;Fk{>-w79I|f;UzjW$^OcsWxakC znIteih^?EmsTz|2<=k7;K3z&Am4=E<4Aan_&ekRC+Dl9P5;4qMohtGcEr~$#Z$H%z z?b+2R01cNioG8tTna*GaUloiikN=+TW_y-a^G>^eph)u|{*5Q9gNs@Ma&1n^M=uTx zC+>6j0PR_HGB5(vbsX5WH=O}PdFHCuua%oqQzYtoe=;q1HK|rAk`i<{wasc! z+V3{J7oe)jVHz?Lfxelp!|#^L6CNxvr?H0;~b$N zT%LkGe#hMS<3RcAyL88Dg^b0EC1TU@14=UhsUr$W#6yf5p*hsb5FP_E50X|zGA2@| z^iq_(EYXuNxaXV4I9-H-#b62Ed|{`iA+$&coh<|2bnN>Vl;a%&V&zc;w+m70KJP;9 zLLQ<(mW8uq$&-P1_S0La*ztelO>}5Ma)(BvH~d zJq_i08O{qcOv&gdhDwD!X(Q=^I6*P^KpWshD>%I}ES9e~)EQFXg7J2BmRC%VNGV=n zqejTX1S@#|en0}Ye4r#j368Szm<+056fwC4tURlLE2gQ&T4m8hl$1ObDsm7B3{0M< zU}8>|JSAMal>&_J`X1%4ESeYaS* zWvx*N&X~I*QQ7ZGURU5v5`Iw$GL}o4YZx668h%kS_rn9s2+%^|LeQUVpgf0c2UPpG zIE+ZJQaTuxwr8Ts4f$9It`o+F{*BnIu|ow!6FwyM8ObK}~YYzf2Swsr5rs8 zSzvB&|E%QEZ0P?6y6Y@P6yd5IdldiSDH-h=TMeqD9<^Tibowt9f4Tg$yEcg&T^6s^ zt=7N~Gf}T%&~VhxPDwXn#YEPDSw(?;Hot9W!jZtcQ04-Pm620G zt(6hO8&O`mzdS1s0PV(mYfg4prXvCbV==3cEvngCaKizgM3F2-(9M}#RuU6N6io^u zIMzqAAKnnUNT4Ir7jx!21v5(t98 zK;L0dD728sJt{#cL~taEIai2(9*vXDV1ZsjOT~r=N4CQqWxN%au}xRG8PSCiJFI7U zE^v9+-C33psm|^Cun0GAr$3yP?-@k}E&2#3qkgSVutjLE+wvH4n9jQHI~xz*=Nc># zW7RI>Zyo1#o@K{%gKLj#`VVTlzCdaa7&HSV2^G0ZfT&43Sm$j%<#>m`&&z9WzNj!_ zho>%1Kv;+BEA2sV09$6_aETy#et@?ai`@MlPm4D6?SUB|E)0PbKg78ZvLHrq-$bHY z`m>4scSB-sa8NPMvvbG_em+#9On|Xham(HXxI?V-2`CIyQj+8A%Bd7O3$|>bb%6Z( zJZ6x|C~Reh>!F7nmwJ0$3jFewi=U^PwISzAXdDvFm6HMIWt#0oRft97xo()E8KYfOL#_G@W zftU8Ab+^y^qP4#NKnl7NEQ_5M-^Xx;K40rL;`ECH-!8u7eREXdR&qP&V&S?^4UW3J zF-z!okksWo)0|RR+?72r>6bZoTTy{wqb93Hwj7EVRbwj3q&4gcqXuJuW9=lnwnU03 zuBhb2Pp+g&`GI3#OIWn*{E}09=Cs_jL6{gQUDBx!5o=&9l<*@tAXA zU21m;omH0BC6BU>Y&yP$etueYQ?Onsk~f*AMmdX>>?qS4Rz_2ncf5&eblV7`I&`Si zqs*tX=v#5rS)>NRev-@0*DI*c;}mxh^y1MKQr#a=u~_FpWY!95@byM*I$6xigC?Aa zgX+8Z+yTtap!#&%%NkQebu;D1#_%qYB217yn{I*CGerV7N#uT{y>GUjMrb86rQeAg zB8aH?P*mC$vau}h>sfC;^K4Lv4qyu> zfvgYU?%ptY4|0#Zx=Nq%I4WO^dy&<{f)goXtw-4(CVXZ@Q=e=#d&@!uPFSiBD?@vO z>9pye2QW8dH^b-SHZ6bd=%2HJi~PDOTKxDs#aQ3x8tSkh8a`E3+*1ywJKND;%VS*Z z+devvdCrkzbEg&$m00fgw}|!YbE+dKRSzN+AKJ1|2N9sU0ixip>%qG*?|>}?*8*DH zGSQUMixU6Im@hA(l4l{Yh+Mh3us>Ttp|up&->@c z?+M{dLINOx&rk<$2cjY-GpUVnAE-9|(UH0-+04I8#kGE8a7|%lx))_Xb?d;K5aG{- z*eA2&bMZ`f=erBWAjiPPaAouvPX*kEu^BU}q7bs;*K=I|sH?#QFs9f-Z^4Oi^!dxAB)n9Uv}2pVD5i78%b&7FXG@ZVuc_5-70OkVJT5bW5Ur~Ma-F{u&VR_5f9W{p2xo(Oa~(ZPYLsYGjICSzNSLY{vQb=rGRh_*osBj#_kkeqbKw zYa3h}SZh0N=eOEcok7n(5`HkZ_n9)+tYnQUH)C6?C6`)N?}@2eRsf-Io;9h%A#%M1 z$60?}f8#IQ>KV_YP6dcq?%RoVvZrv141qndI^Z3TNsPrUv)Tg$k+h`Qgu0(**4Tj$ z2XFs9xf>d3SQvVaTTVY6*07&GYI?;x5D7X@7D~48bb9a2_j$5O?D_dUUN#q7&aahu z_0ldml|8?XcHpJU)t}i|_jV$$a{bAb=PsgIcijtU6NH4(L1!2Qk0oJ)HWv;4n0|%#CMS?3_?JAqy`FRg6)IQSB2TVO7{0Y*}AG2{yR{&q}=E)cl4i0?fxCm zVGX+Qc|z)>^v0r!ba^j|4(+sT6EfMkI?F!!6QssHEM0Zqt16yGsKlf~CE-kXOT__t zQz6#vgA<(Bp!8aFtFZuzfNAC=_u=#>{vcPB%MviOElx_qg+S(YxowumQouKLBFaFp z;^;t#e4bz`cug}{v!3D3{jv~ZMOZ!)V~j@pckcGk5AH*D;!Ek4WWSkE`cj7<`Awm~ z@}P`i=8Aq}{*a=y{ua8gyRYxMynJnEQ)j*1e>%J8i7`v70z*JS&0LLxE({o8)`U5Y zEGVzS!2HPQb>#XJv2eXpz-<<=3t3@4{9p=f`*nLlCHCWyE0IBx91mu{E>f=!n+SVO z*Tpa>EO%VTFdRvTu}qs7*L0ZTBX}zqBFx77c2;az<}T>Atl;2tgn!fj<2QV!S0n1D zPg}tz+JrE#0iSl=3Mxr3fOyW@&A+J1X1{?fW4JB+j4T>vBYSUC5w+2#2 zlXfBrtiXaE3P%P}hiibLOm#*PQ$iCaZ&a?5qW|H~`8jMs(8G`4w}2mnAl(e?#gM`f z^g!0DT>%7&r}1v0Sz-yv1*|)c8z}h5uu3`=iN{jOD59rD&1M9B1}6*lfgD0m_zXCE zeGzK$c}M@(@ChSY2ZZ}LAEZ?#t zWt7TWzFjygN`|d7tn@)z6?duIn+@QjWi@ zmYw_%b<&ygp`zZ`vC?CGD{ho-`~>Uk0EGBo3I<$n5?GwgT21PU{wi2fMQ? zId4?*?jA6zw>a$uv4?O8%fh0d@+iT{BJH&abFdW~)g`E6kXG%My3t~dNzrMHWhT$` z-yl0SZWU^G8JB$7F)p8t=BBf&zmG)!+5uFhrzc z8R+UlKR-D?%*OD-@Htx`(!6embc<93ITj?qf0=1;rpPDIxYi-*>qx{c*XCEc6G97esJZ8O{)b{-q_Z82fFj#?E4+K(wYD$oCaI&oLh=s=d}QVBh4R5GHZxVW_WEmDdhh8qZzV8P zuWQ(5?K>@I(->D{46GPWxF5F~VNvFzx5Uq!I+*=-leUI>Y%{xN3ga>*R2AWKb<>tt ziuooWv!!v3?hj~Sr9ce;yAQT^K%_ierON68F%)>&0VGV)E+4m zUG0HTICJ!Gn#jye$?O>U0_JVdczU31a5~F`C5qnfPH5lm_KA+>ds&Q*)8Qm6Y)X|v zZ6-|#$v^xDXajUp#-irvrq6$k_T^~C_2x0n$T=j}M9qz)(v!+!_hE8DI34hc$gsX- z>^b4QwCAWr`AB_5YQvCvUVi9F89do83|@54_~bTg`oL?RWV9{I6M=7G1jF)^ez1xQ zbOT7OpA+H2lR+Q}zf!#>i!V3j$jRv8F*&Vo-})vZ&l|U2UJ>LL*@KYq7BE8)Q^HJH zVGn=fj6GJD`~4^JRoDF=^@uz3i&yXb-d*6H@M6bB-B{$F=lzR!`?p_x`<4GE+P{Y^ zHkMR|ln^E$RaTcy79_UC)&_)F9G;ci9ccx7tVNkHUifnEy3!1`ocsg#^?!2`chL17 zXUcCYmG`8dQW%Q)8}IAq=bd`#;Z7(c!>M|C+Qd?!wohp`d+(F-^2+}$DdiCMPwRN3 z^8#>zpfwIce!~xSsM=iz(GAyPK8X@Fm2i9$X66&Cl=Nd^z3h*nVEoSh!8a^^1C?yN~ zz2HGpRCDm7bHNRcPRM(){`2SPQ|CC(n~KS{jmb08)aCke6Z%Gl$#(YxEgbvn&%9%Q z8#Ts5M-euu7$K!`*Z90bzR0^`M*GL(=JNWUnn?2Lw^#Ykn<>!xLa7eAwY;H=b;5Q3 zgYR)lV<5w(f&iXAWvqAfpQ?TJs9G>GUEW)Ir7}c159Ybbp$KU zJj;A==MynBMTw`tFy0h(TKK;@6bRkP&lT@MX@GZPSpB|1-O>@)wHfLd8W2j)@(a8j zdg~4jnbaX^DoM4G@KLCUhfAywH6XML#9(8;_eo#*4SZ!-J8>Y60xcsyktw=b-(z19 zTfXnL0jNiaAGqBrGNo+{f}3VPIr74wA(?iL!$j$jE&waN3YLK$WvK454uuQZ3V1{> z>iI~5ndsBky-qb#!Mn1dFfNsJDi+$KV#^axJK+PB5n_FG!FB1V0L>D`*n;?pKAbT% ziwN9ZkkcMlhHHalAUouB*k%38PUe@(;7yn84F|*am;O;OiDJjIoMPv?(s-FvBdIPu zvRWo%R6O8#=F=7DT#n*?0P3sC2$RwZ{7r(12QX;rjAqj$HqtNNQNtEWhFT4bG`3{I zKp29c&QNw!Ny0=acLYJiro>V=$9F?;BcITjtY#sOoj)pe11IdmqPg7}`Uoixt%uvQ zK*OS~2;&2yUP-4HTrA+a;CI2BsnUb`vYEv>Q>AppP>H>&qVNsCd;yRfq|v7bdV-3Z_h4;j(f4 zVXFwACztl6LH~P-V+LY@OHq*hF`ObzI=Y}4=a#X^t}TgeZ`wR=72T_k^S2h?`357x zP$+dZXvm3JoBFbR>o?Rb&RPslJk+e-keM6NbqWIQMAhAur|$y)fD#+DwPRi{M9#$> zk(pry!lRra;%1c~49Vh|dREe$ZLvU;Dpk7;DV=Jx*-$xihBXvim zI`rVoUh{;5t?>g#v(lW#*{NTeBbhI*)QT!)7_D&??UoFldfS0?nvLpmB84?AvbLG5 zNWu?kS9`fh&>IWu85ydr*T2Z*(jfv4A*2lBCAvwGW3iA+zp)?)^&|L8(EH@{MT