diff --git a/.gitignore b/.gitignore index df563f4..3e6c6c0 100644 --- a/.gitignore +++ b/.gitignore @@ -15,9 +15,6 @@ go.work go.work.sum -# Dependency directories -vendor/ - # Build output bin /bin diff --git a/web/static/vendor/tuicss/fonts/Perfect DOS VGA 437 Win.ttf b/web/static/vendor/tuicss/fonts/Perfect DOS VGA 437 Win.ttf new file mode 100644 index 0000000..d03b1c5 Binary files /dev/null and b/web/static/vendor/tuicss/fonts/Perfect DOS VGA 437 Win.ttf differ diff --git a/web/static/vendor/tuicss/fonts/Perfect DOS VGA 437.ttf b/web/static/vendor/tuicss/fonts/Perfect DOS VGA 437.ttf new file mode 100644 index 0000000..f5cbfc0 Binary files /dev/null and b/web/static/vendor/tuicss/fonts/Perfect DOS VGA 437.ttf differ diff --git a/web/static/vendor/tuicss/fonts/dos437.txt b/web/static/vendor/tuicss/fonts/dos437.txt new file mode 100644 index 0000000..d4860e2 --- /dev/null +++ b/web/static/vendor/tuicss/fonts/dos437.txt @@ -0,0 +1,72 @@ + / +/(_____________ ____ +\ /______)\ | | +:\ | / \:| |:::::::::: : .. . : .. . . :. . + \_____| / | \| |______ +___ / ________ \... . . . +\______________ \ | | /.. . . . . . + \ |__| / +--x--x-----x----\______ |-/_____/-x--x-xx--x-- - -x -- - - -- - - - +. . . . . . . . . . . .\____|. . . . . . +------------------------------------------------------------------------------- +>> perfect dos vga 437 - general information >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> +------------------------------------------------------------------------------- + + "Perfect DOS VGA 437" and "Perfect DOS VGA 437 Win" are truetype fonts + designed to emulate the MS-DOS/Text mode standard font, used on VGA monitors, + with the 437 Codepage (standard US/International). This is a "bitmap" font, + meaning it emulates a bitmap font and can only be used at a given size (8 or + multiples of it like 16, 24, 32, etc). It's optimized for Flash too, so it + won't produce antialias if used at round positions. + + There are two fonts available. "Perfect DOS VGA 437" uses the original DOS + codepage 437. It should be used, for example, if you're opening DOS ASCII + files on notepad or another windows-based editor. Since it's faithful to the + original DOS codes, it won't accent correctly in windows ("é" would produce + something different, not an "e" with an acute). + + There's also "Perfect DOS VGA 437 Win" which is the exactly same font adapted + to a windows codepage. This should use accented characters correctly but won't + work if you're opening a DOS-based text file. + + UPDATE: this is a new version, updated in august/2008. It has fixed leading + metrics for Mac systems. + +------------------------------------------------------------------------------- +>> perfect dos vga 437 - creation process >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> +------------------------------------------------------------------------------- + + This font was created to be used on a Flash-based ANSi viewer I'm working. To + create it, I created a small Quick Basic program to write all characters on + screen, + + CLS + FOR l = 0 TO 255 + charWrite 1 + (l MOD 20), 1 + (l \ 20) * 6 + (l MOD 2), LTRIM$(RTRIM$(STR$(l))) + CHR$(l) + NEXT + SUB charWrite (lin, col, char$) + DEF SEG = &HB800 + FOR i = 1 TO LEN(char$) + POKE ((lin - 1) * 160) + ((col - 2 + i) * 2), ASC(MID$(char$, i, 1)) + IF (i = LEN(char$)) THEN POKE ((lin - 1) * 160) + ((col - 2 + i) * 2) + 1, 113 + NEXT + END SUB + + Then captured the text screen using SCREEN THIEF (a very, very old screen + capture TSR program which converts text screens to images accurately). I then + recreated the font polygon by polygon on Fontlab, while looking at the image + on Photoshop. No conversion took place. + +------------------------------------------------------------------------------- +>> author >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> +------------------------------------------------------------------------------- + + zeh fernando remembers the old days. SMASH DAH FUCKING ENTAH. + + http://www.fatorcaos.com.br + + rorshack ^ maiden brazil + +------------------------------------------------------------------------------- +^zehPULLSdahTRICK^kudosOUTtoWHOkeepsITreal^smashDAHfuckingENTAH!!!^lowres4ever^ +------------------------------------------------------------------------------- diff --git a/web/static/vendor/tuicss/images/bg-blue-black.png b/web/static/vendor/tuicss/images/bg-blue-black.png new file mode 100644 index 0000000..aa55706 Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-blue-black.png differ diff --git a/web/static/vendor/tuicss/images/bg-blue-white.png b/web/static/vendor/tuicss/images/bg-blue-white.png new file mode 100644 index 0000000..45409ed Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-blue-white.png differ diff --git a/web/static/vendor/tuicss/images/bg-cyan-black.png b/web/static/vendor/tuicss/images/bg-cyan-black.png new file mode 100644 index 0000000..12db210 Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-cyan-black.png differ diff --git a/web/static/vendor/tuicss/images/bg-cyan-white.png b/web/static/vendor/tuicss/images/bg-cyan-white.png new file mode 100644 index 0000000..41ce181 Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-cyan-white.png differ diff --git a/web/static/vendor/tuicss/images/bg-green-black.png b/web/static/vendor/tuicss/images/bg-green-black.png new file mode 100644 index 0000000..2f83f3c Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-green-black.png differ diff --git a/web/static/vendor/tuicss/images/bg-green-white.png b/web/static/vendor/tuicss/images/bg-green-white.png new file mode 100644 index 0000000..85cd3f9 Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-green-white.png differ diff --git a/web/static/vendor/tuicss/images/bg-orange-black.png b/web/static/vendor/tuicss/images/bg-orange-black.png new file mode 100644 index 0000000..05e8662 Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-orange-black.png differ diff --git a/web/static/vendor/tuicss/images/bg-orange-white.png b/web/static/vendor/tuicss/images/bg-orange-white.png new file mode 100644 index 0000000..8c82141 Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-orange-white.png differ diff --git a/web/static/vendor/tuicss/images/bg-purple-black.png b/web/static/vendor/tuicss/images/bg-purple-black.png new file mode 100644 index 0000000..240217f Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-purple-black.png differ diff --git a/web/static/vendor/tuicss/images/bg-purple-white.png b/web/static/vendor/tuicss/images/bg-purple-white.png new file mode 100644 index 0000000..5ae0ca2 Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-purple-white.png differ diff --git a/web/static/vendor/tuicss/images/bg-red-black.png b/web/static/vendor/tuicss/images/bg-red-black.png new file mode 100644 index 0000000..dc2c0be Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-red-black.png differ diff --git a/web/static/vendor/tuicss/images/bg-red-white.png b/web/static/vendor/tuicss/images/bg-red-white.png new file mode 100644 index 0000000..4470d9b Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-red-white.png differ diff --git a/web/static/vendor/tuicss/images/bg-yellow-black.png b/web/static/vendor/tuicss/images/bg-yellow-black.png new file mode 100644 index 0000000..ace85f9 Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-yellow-black.png differ diff --git a/web/static/vendor/tuicss/images/bg-yellow-white.png b/web/static/vendor/tuicss/images/bg-yellow-white.png new file mode 100644 index 0000000..457edd3 Binary files /dev/null and b/web/static/vendor/tuicss/images/bg-yellow-white.png differ diff --git a/web/static/vendor/tuicss/images/scroll-blue.png b/web/static/vendor/tuicss/images/scroll-blue.png new file mode 100644 index 0000000..4ac322b Binary files /dev/null and b/web/static/vendor/tuicss/images/scroll-blue.png differ diff --git a/web/static/vendor/tuicss/images/scroll-cyan.png b/web/static/vendor/tuicss/images/scroll-cyan.png new file mode 100644 index 0000000..ca62812 Binary files /dev/null and b/web/static/vendor/tuicss/images/scroll-cyan.png differ diff --git a/web/static/vendor/tuicss/images/scroll-green.png b/web/static/vendor/tuicss/images/scroll-green.png new file mode 100644 index 0000000..d09971f Binary files /dev/null and b/web/static/vendor/tuicss/images/scroll-green.png differ diff --git a/web/static/vendor/tuicss/images/scroll-orange.png b/web/static/vendor/tuicss/images/scroll-orange.png new file mode 100644 index 0000000..ec20219 Binary files /dev/null and b/web/static/vendor/tuicss/images/scroll-orange.png differ diff --git a/web/static/vendor/tuicss/images/scroll-purple.png b/web/static/vendor/tuicss/images/scroll-purple.png new file mode 100644 index 0000000..67a0550 Binary files /dev/null and b/web/static/vendor/tuicss/images/scroll-purple.png differ diff --git a/web/static/vendor/tuicss/images/scroll-red.png b/web/static/vendor/tuicss/images/scroll-red.png new file mode 100644 index 0000000..1dccb6a Binary files /dev/null and b/web/static/vendor/tuicss/images/scroll-red.png differ diff --git a/web/static/vendor/tuicss/images/scroll-white.png b/web/static/vendor/tuicss/images/scroll-white.png new file mode 100644 index 0000000..c972a5e Binary files /dev/null and b/web/static/vendor/tuicss/images/scroll-white.png differ diff --git a/web/static/vendor/tuicss/images/scroll-yellow.png b/web/static/vendor/tuicss/images/scroll-yellow.png new file mode 100644 index 0000000..e1a915c Binary files /dev/null and b/web/static/vendor/tuicss/images/scroll-yellow.png differ diff --git a/web/static/vendor/tuicss/tuicss.css b/web/static/vendor/tuicss/tuicss.css new file mode 100644 index 0000000..bde8521 --- /dev/null +++ b/web/static/vendor/tuicss/tuicss.css @@ -0,0 +1,2704 @@ +@charset "UTF-8"; +/* Styles */ /* Font (Options: 'Lucida Console' or 'DOS') */ +/* Characters */ +/* Theme */ +/* Responsive */ +/* Scrool */ +/* Grid */ +@font-face { + font-family: "DOS"; + src: url("./fonts/Perfect DOS VGA 437 Win.ttf"); +} +/* Global Definitions */ +html { + font-family: "Lucida Console", "monospace"; + font-size: 18px; + box-sizing: border-box; +} + +body { + margin: 0px; +} + +*, *:before, *:after { + font-family: inherit; + font-size: inherit; + box-sizing: inherit; +} + +ul { + margin: 0px; + padding: 0px; + list-style-type: none; +} + +ul li { + list-style-type: none; +} + +ul li a { + display: block; +} + +a { + color: inherit; + text-decoration: none; +} + +span { + margin: 0px; +} + +hr { + border: none; + border-bottom: 2px solid rgb(255, 255, 255); +} + +input, select, textarea { + width: 200px; +} + +/* Font (Options: 'Lucida Console' or 'DOS') */ +/* Characters */ +/* Theme */ +/* Responsive */ +/* Scrool */ +/* Grid */ +@media only screen and (max-width : 600px) { + .hide-on-small-only, .hide-on-small-and-down { + display: none !important; + } +} + +@media only screen and (max-width : 992px) { + .hide-on-med-and-down { + display: none !important; + } +} + +@media only screen and (min-width : 601px) { + .hide-on-med-and-up { + display: none !important; + } +} + +@media only screen and (min-width: 600px) and (max-width: 992px) { + .hide-on-med-only { + display: none !important; + } +} + +@media only screen and (min-width : 993px) { + .hide-on-large-only { + display: none !important; + } +} + +@media only screen and (min-width : 1201px) { + .hide-on-extra-large-only { + display: none !important; + } +} + +@media only screen and (min-width : 1201px) { + .show-on-extra-large { + display: block !important; + } +} + +@media only screen and (min-width : 993px) { + .show-on-large { + display: block !important; + } +} + +@media only screen and (min-width: 600px) and (max-width: 992px) { + .show-on-medium { + display: block !important; + } +} + +@media only screen and (max-width : 600px) { + .show-on-small { + display: block !important; + } +} + +@media only screen and (min-width : 601px) { + .show-on-medium-and-up { + display: block !important; + } +} + +@media only screen and (max-width : 992px) { + .show-on-medium-and-down { + display: block !important; + } +} + +/* Font (Options: 'Lucida Console' or 'DOS') */ +/* Characters */ +/* Theme */ +/* Responsive */ +/* Scrool */ +/* Grid */ +/* Theme */ +.primary { + background-color: rgb(0, 0, 168); +} + +.primary-text { + color: rgb(0, 0, 168); +} + +.primary-border { + border-color: rgb(0, 0, 168); +} + +.primary-hover:hover { + background-color: rgb(0, 0, 168); +} + +.primary-text-hover:hover { + color: rgb(0, 0, 168); +} + +.primary-border-hover:hover { + border-color: rgb(0, 0, 168); +} + +.secondary { + background-color: rgb(168, 168, 168); +} + +.secondary-text { + color: rgb(168, 168, 168); +} + +.secondary-border { + border-color: rgb(168, 168, 168); +} + +.secondary-hover:hover { + background-color: rgb(168, 168, 168); +} + +.secondary-text-hover:hover { + color: rgb(168, 168, 168); +} + +.secondary-border-hover:hover { + border-color: rgb(168, 168, 168); +} + +.success { + background-color: rgb(0, 168, 0); +} + +.success-text { + color: rgb(0, 168, 0); +} + +.success-border { + border-color: rgb(0, 168, 0); +} + +.success-hover:hover { + background-color: rgb(0, 168, 0); +} + +.success-text-hover:hover { + color: rgb(0, 168, 0); +} + +.success-border-hover:hover { + border-color: rgb(0, 168, 0); +} + +.danger { + background-color: rgb(168, 0, 0); +} + +.danger-text { + color: rgb(168, 0, 0); +} + +.danger-border { + border-color: rgb(168, 0, 0); +} + +.danger-hover:hover { + background-color: rgb(168, 0, 0); +} + +.danger-text-hover:hover { + color: rgb(168, 0, 0); +} + +.danger-border-hover:hover { + border-color: rgb(168, 0, 0); +} + +.warning { + background-color: rgb(168, 168, 0); +} + +.warning-text { + color: rgb(168, 168, 0); +} + +.warning-border { + border-color: rgb(168, 168, 0); +} + +.warning-hover:hover { + background-color: rgb(168, 168, 0); +} + +.warning-text-hover:hover { + color: rgb(168, 168, 0); +} + +.warning-border-hover:hover { + border-color: rgb(168, 168, 0); +} + +.info { + background-color: rgb(0, 168, 168); +} + +.info-text { + color: rgb(0, 168, 168); +} + +.info-border { + border-color: rgb(0, 168, 168); +} + +.info-hover:hover { + background-color: rgb(0, 168, 168); +} + +.info-text-hover:hover { + color: rgb(0, 168, 168); +} + +.info-border-hover:hover { + border-color: rgb(0, 168, 168); +} + +/* 168 */ +.black-168 { + background-color: rgb(0, 0, 0) !important; +} + +.blue-168 { + background-color: rgb(0, 0, 168) !important; +} + +.green-168 { + background-color: rgb(0, 168, 0) !important; +} + +.cyan-168 { + background-color: rgb(0, 168, 168) !important; +} + +.red-168 { + background-color: rgb(168, 0, 0) !important; +} + +.purple-168 { + background-color: rgb(168, 0, 168) !important; +} + +.yellow-168 { + background-color: rgb(168, 168, 0) !important; +} + +.white-168 { + background-color: rgb(168, 168, 168) !important; +} + +.orange-168 { + background-color: rgb(168, 86, 0) !important; +} + +.black-168-text { + color: rgb(0, 0, 0) !important; +} + +.blue-168-text { + color: rgb(0, 0, 168) !important; +} + +.green-168-text { + color: rgb(0, 168, 0) !important; +} + +.cyan-168-text { + color: rgb(0, 168, 168) !important; +} + +.red-168-text { + color: rgb(168, 0, 0) !important; +} + +.purple-168-text { + color: rgb(168, 0, 168) !important; +} + +.yellow-168-text { + color: rgb(168, 168, 0) !important; +} + +.white-168-text { + color: rgb(168, 168, 168) !important; +} + +.orange-168-text { + color: rgb(168, 86, 0) !important; +} + +.black-168-border { + border-color: rgb(0, 0, 0) !important; +} + +.blue-168-border { + border-color: rgb(0, 0, 168) !important; +} + +.green-168-border { + border-color: rgb(0, 168, 0) !important; +} + +.cyan-168-border { + border-color: rgb(0, 168, 168) !important; +} + +.red-168-border { + border-color: rgb(168, 0, 0) !important; +} + +.purple-168-border { + border-color: rgb(168, 0, 168) !important; +} + +.yellow-168-border { + border-color: rgb(168, 168, 0) !important; +} + +.white-168-border { + border-color: rgb(168, 168, 168) !important; +} + +.orange-168-border { + border-color: rgb(168, 86, 0) !important; +} + +.black-168-hover:hover { + background-color: rgb(0, 0, 0) !important; +} + +.blue-168-hover:hover { + background-color: rgb(0, 0, 168) !important; +} + +.green-168-hover:hover { + background-color: rgb(0, 168, 0) !important; +} + +.cyan-168-hover:hover { + background-color: rgb(0, 168, 168) !important; +} + +.red-168-hover:hover { + background-color: rgb(168, 0, 0) !important; +} + +.purple-168-hover:hover { + background-color: rgb(168, 0, 168) !important; +} + +.yellow-168-hover:hover { + background-color: rgb(168, 168, 0) !important; +} + +.white-168-hover:hover { + background-color: rgb(168, 168, 168) !important; +} + +.orange-168-hover:hover { + background-color: rgb(168, 86, 0) !important; +} + +.black-168-text-hover:hover { + color: rgb(0, 0, 0) !important; +} + +.blue-168-text-hover:hover { + color: rgb(0, 0, 168) !important; +} + +.green-168-text-hover:hover { + color: rgb(0, 168, 0) !important; +} + +.cyan-168-text-hover:hover { + color: rgb(0, 168, 168) !important; +} + +.red-168-text-hover:hover { + color: rgb(168, 0, 0) !important; +} + +.purple-168-text-hover:hover { + color: rgb(168, 0, 168) !important; +} + +.yellow-168-text-hover:hover { + color: rgb(168, 168, 0) !important; +} + +.white-168-text-hover:hover { + color: rgb(168, 168, 168) !important; +} + +.orange-168-text-hover:hover { + color: rgb(168, 86, 0) !important; +} + +.black-168-border-hover:hover { + border-color: rgb(0, 0, 0) !important; +} + +.blue-168-border-hover:hover { + border-color: rgb(0, 0, 168) !important; +} + +.green-168-border-hover:hover { + border-color: rgb(0, 168, 0) !important; +} + +.cyan-168-border-hover:hover { + border-color: rgb(0, 168, 168) !important; +} + +.red-168-border-hover:hover { + border-color: rgb(168, 0, 0) !important; +} + +.purple-168-border-hover:hover { + border-color: rgb(168, 0, 168) !important; +} + +.yellow-168-border-hover:hover { + border-color: rgb(168, 168, 0) !important; +} + +.white-168-border-hover:hover { + border-color: rgb(168, 168, 168) !important; +} + +.orange-168-border-hover:hover { + border-color: rgb(168, 86, 0) !important; +} + +/* 255 */ +.black-255 { + background-color: rgb(0, 0, 0) !important; +} + +.blue-255 { + background-color: rgb(0, 0, 255) !important; +} + +.green-255 { + background-color: rgb(0, 255, 0) !important; +} + +.cyan-255 { + background-color: rgb(0, 255, 255) !important; +} + +.red-255 { + background-color: rgb(255, 0, 0) !important; +} + +.purple-255 { + background-color: rgb(255, 0, 255) !important; +} + +.yellow-255 { + background-color: rgb(255, 255, 0) !important; +} + +.white-255 { + background-color: rgb(255, 255, 255) !important; +} + +.orange-255 { + background-color: rgb(255, 168, 0) !important; +} + +.black-255-text { + color: rgb(0, 0, 0) !important; +} + +.blue-255-text { + color: rgb(0, 0, 255) !important; +} + +.green-255-text { + color: rgb(0, 255, 0) !important; +} + +.cyan-255-text { + color: rgb(0, 255, 255) !important; +} + +.red-255-text { + color: rgb(255, 0, 0) !important; +} + +.purple-255-text { + color: rgb(255, 0, 255) !important; +} + +.yellow-255-text { + color: rgb(255, 255, 0) !important; +} + +.white-255-text { + color: rgb(255, 255, 255) !important; +} + +.orange-255-text { + color: rgb(255, 168, 0) !important; +} + +.black-255-border { + border-color: rgb(0, 0, 0) !important; +} + +.blue-255-border { + border-color: rgb(0, 0, 255) !important; +} + +.green-255-border { + border-color: rgb(0, 255, 0) !important; +} + +.cyan-255-border { + border-color: rgb(0, 255, 255) !important; +} + +.red-255-border { + border-color: rgb(255, 0, 0) !important; +} + +.purple-255-border { + border-color: rgb(255, 0, 255) !important; +} + +.yellow-255-border { + border-color: rgb(255, 255, 0) !important; +} + +.white-255-border { + border-color: rgb(255, 255, 255) !important; +} + +.orange-255-border { + border-color: rgb(255, 168, 0) !important; +} + +.black-255-hover:hover { + background-color: rgb(0, 0, 0) !important; +} + +.blue-255-hover:hover { + background-color: rgb(0, 0, 255) !important; +} + +.green-255-hover:hover { + background-color: rgb(0, 255, 0) !important; +} + +.cyan-255-hover:hover { + background-color: rgb(0, 255, 255) !important; +} + +.red-255-hover:hover { + background-color: rgb(255, 0, 0) !important; +} + +.purple-255-hover:hover { + background-color: rgb(255, 0, 255) !important; +} + +.yellow-255-hover:hover { + background-color: rgb(255, 255, 0) !important; +} + +.white-255-hover:hover { + background-color: rgb(255, 255, 255) !important; +} + +.orange-255-hover:hover { + background-color: rgb(255, 168, 0) !important; +} + +.black-255-text-hover:hover { + color: rgb(0, 0, 0) !important; +} + +.blue-255-text-hover:hover { + color: rgb(0, 0, 255) !important; +} + +.green-255-text-hover:hover { + color: rgb(0, 255, 0) !important; +} + +.cyan-255-text-hover:hover { + color: rgb(0, 255, 255) !important; +} + +.red-255-text-hover:hover { + color: rgb(255, 0, 0) !important; +} + +.purple-255-text-hover:hover { + color: rgb(255, 0, 255) !important; +} + +.yellow-255-text-hover:hover { + color: rgb(255, 255, 0) !important; +} + +.white-255-text-hover:hover { + color: rgb(255, 255, 255) !important; +} + +.orange-255-text-hover:hover { + color: rgb(255, 168, 0) !important; +} + +.black-255-border-hover:hover { + border-color: rgb(0, 0, 0) !important; +} + +.blue-255-border-hover:hover { + border-color: rgb(0, 0, 255) !important; +} + +.green-255-border-hover:hover { + border-color: rgb(0, 255, 0) !important; +} + +.cyan-255-border-hover:hover { + border-color: rgb(0, 255, 255) !important; +} + +.red-255-border-hover:hover { + border-color: rgb(255, 0, 0) !important; +} + +.purple-255-border-hover:hover { + border-color: rgb(255, 0, 255) !important; +} + +.yellow-255-border-hover:hover { + border-color: rgb(255, 255, 0) !important; +} + +.white-255-border-hover:hover { + border-color: rgb(255, 255, 255) !important; +} + +.orange-255-border-hover:hover { + border-color: rgb(255, 168, 0) !important; +} + +/* Misc */ +.black { + background-color: black !important; +} + +.black-text { + color: black !important; +} + +.black-border { + border-color: black !important; +} + +.black-hover:hover { + background-color: black !important; +} + +.black-text-hover:hover { + color: black !important; +} + +.black-border-hover:hover { + border-color: black !important; +} + +.white { + background-color: white !important; +} + +.white-text { + color: white !important; +} + +.white-border { + border-color: white !important; +} + +.white-hover:hover { + background-color: white !important; +} + +.white-text-hover:hover { + color: white !important; +} + +.white-border-hover:hover { + border-color: white !important; +} + +.left { + float: left !important; +} + +.right { + float: right !important; +} + +.center { + text-align: center; +} + +.left-align { + text-align: left; +} + +.right-align { + text-align: right; +} + +.center-align { + text-align: center; +} + +.full-width { + width: 100% !important; +} + +.full-height { + height: 100% !important; +} + +.inline { + display: inline !important; +} + +.inline-block { + display: inline-block !important; +} + +.block { + display: block !important; +} + +.valign-top { + vertical-align: top !important; +} + +.valign-middle { + vertical-align: middle !important; +} + +.valign-bottom { + vertical-align: bottom !important; +} + +.fixed { + position: fixed !important; +} + +.absolute { + position: absolute !important; +} + +.relative { + position: relative !important; +} + +.static { + position: static !important; +} + +.no-shadow { + box-shadow: none !important; +} + +.no-padding { + padding: 0px !important; +} + +.no-border { + border: none !important; +} + +.content { + padding: 12px; +} + +.disable-select { + user-select: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} + +.cursor-pointer { + cursor: pointer !important; +} + +.cursor-default { + cursor: default !important; +} + +.disabled { + cursor: not-allowed !important; +} + +/* Components */ +.tui-button { + display: inline-block; + outline: 0; + padding: 1px 10px; + background-color: rgb(0, 168, 0); + color: black; + border: none; + cursor: pointer; + text-align: center; + box-shadow: 10px 10px black; + border-radius: 0px; + user-select: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} +.tui-button.disabled { + text-decoration: line-through; +} + +.tui-button:active { + background-color: rgb(0, 168, 168) !important; + color: black !important; + box-shadow: none !important; +} + +.tui-button:focus { + color: rgb(0, 255, 255) !important; +} + +input[type=button] { + width: initial; +} + +/* Font (Options: 'Lucida Console' or 'DOS') */ +/* Characters */ +/* Theme */ +/* Responsive */ +/* Scrool */ +/* Grid */ +.tui-checkbox { + display: block; + position: relative; + cursor: pointer; + color: white; + padding-left: 30px; + user-select: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} +.tui-checkbox.disabled { + color: rgb(168, 168, 168); +} + +.tui-checkbox input { + position: absolute; + opacity: 0; + cursor: pointer; + top: 0px; + left: 0px; + pointer-events: none; +} + +.tui-checkbox span { + position: absolute; + width: 10px; + height: 10px; + cursor: pointer; + top: 0px; + left: 0px; +} + +.tui-checkbox input:checked ~ span::after { + content: "[√]"; + color: rgb(0, 255, 255); +} + +.tui-checkbox input:not(checked) ~ span::after { + content: "[ ]"; +} + +.tui-divider { + border-bottom: 2px solid rgb(255, 255, 255); + display: block; +} + +.tui-black-divider { + border-bottom: 2px solid rgb(0, 0, 0); + display: block; +} + +.tui-dropdown { + position: relative; + display: inline-block; + cursor: pointer; + user-select: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} + +.tui-dropdown-content { + display: none; + position: absolute; + background-color: rgb(168, 168, 168); + min-width: 200px; + padding: 6px; + z-index: 9; +} + +.tui-dropdown-content ul { + border: 2px black solid; +} + +.tui-dropdown-content ul li { + display: block !important; + margin: 6px; +} + +.tui-dropdown-content ul li a:hover { + background-color: rgb(0, 168, 0); +} + +.tui-dropdown:hover > .tui-dropdown-content:first-of-type { + display: block; +} + +.tui-fieldset { + border: 6px white double; + padding: 12px; + background-color: inherit; + margin-bottom: 6px; +} +.tui-fieldset.no-legend { + margin-top: 6px; +} + +.tui-input-fieldset { + border-top: 6px white double; + border-bottom: 6px white double; + border-left: 2px white solid; + border-right: 2px white solid; + padding: 5px; + background-color: inherit; +} + +.tui-input-fieldset legend { + color: white; +} + +.tui-input-fieldset:hover { + border-color: yellow; +} + +.tui-input-fieldset:hover legend { + color: yellow; +} + +.tui-fieldset-button { + position: absolute; + top: 0px; + right: 16px; + color: white; + background-color: inherit; + z-index: 2; + border: none; + cursor: pointer; + outline: 0; + padding: 2px; + user-select: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} +.tui-fieldset-button.left { + right: initial; + left: 16px !important; +} +.tui-fieldset-button.bottom { + bottom: 0px; + top: initial; +} + +.tui-fieldset-text { + position: absolute; + bottom: 0px; + left: 16px; + color: white; + background-color: inherit; + z-index: 2; + padding: 2px; +} +.tui-fieldset-text.right { + left: initial; + right: 16px; +} +.tui-fieldset-text.top { + top: 0px; + bottom: initial; +} + +.tui-fieldset-button::before { + content: "["; +} + +.tui-fieldset-button::after { + content: "]"; +} + +.tui-fieldset-button:active { + color: rgb(0, 255, 255) !important; +} + +.tui-input { + background-color: rgb(0, 0, 0); + color: white; + outline: 0; + border: none; + border-radius: 0px; +} +.tui-input.disabled { + background-color: rgb(168, 168, 168); + color: black; +} + +.tui-input:focus { + background-color: rgb(255, 255, 0) !important; + color: black !important; +} + +.tui-nav { + width: 100%; + background-color: rgb(168, 168, 168); + padding: 0px 2px; + z-index: 9; + display: block; + position: fixed; +} + +.tui-nav ul li { + display: inline-block; + margin-left: 10px; + padding: 1px 3px; +} + +.tui-nav ul li a { + display: block; + user-select: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} + +.tui-nav ul li:hover { + background-color: rgb(0, 168, 0); +} + +.tui-panel { + background-color: rgb(0, 0, 168); + display: inline-block; + color: white; + box-shadow: 10px 10px black; +} + +.tui-panel-content { + padding: 12px; +} + +.tui-panel-header { + padding-top: 2px; + display: block; + background: white; + text-align: center; +} + +.tui-progress-bar { + display: block; + position: relative; + height: 20px; + width: 200px; + background-color: rgb(0, 168, 168); + overflow: hidden; +} + +.tui-progress { + position: absolute; + left: 0px; + background-color: rgb(0, 255, 255); + height: 100%; + display: inline-block; +} + +.tui-progress-bar .tui-indeterminate { + position: absolute; + left: 0px; + background-color: rgb(0, 255, 255); + height: 20px; + width: 20px; + display: inline-block; + animation: indeterminate 1s backwards; + animation-iteration-count: infinite; + animation-timing-function: linear; +} + +.tui-progress-label { + position: absolute; + top: 50%; + left: 50%; + transform: translateX(-50%) translateY(-50%); + z-index: 1; +} + +@keyframes indeterminate { + from { + margin-left: -10%; + } + to { + margin-left: 100%; + } +} +/* Font (Options: 'Lucida Console' or 'DOS') */ +/* Characters */ +/* Theme */ +/* Responsive */ +/* Scrool */ +/* Grid */ +.tui-radio { + display: block; + position: relative; + cursor: pointer; + color: white; + padding-left: 30px; + user-select: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} +.tui-radio.disabled { + color: rgb(168, 168, 168); +} + +.tui-radio input { + position: absolute; + opacity: 0; + cursor: pointer; + top: 0px; + left: 0px; + pointer-events: none; +} + +.tui-radio span { + position: absolute; + width: 10px; + height: 10px; + cursor: pointer; + top: 0px; + left: 0px; +} + +.tui-radio input:checked ~ span:after { + content: "(•)"; + color: rgb(0, 255, 255) !important; +} + +.tui-radio input:not(checked) ~ span:after { + content: "( )"; +} + +/* Font (Options: 'Lucida Console' or 'DOS') */ +/* Characters */ +/* Theme */ +/* Responsive */ +/* Scrool */ +/* Grid */ +/* Default */ +::-webkit-scrollbar { + width: 10px; +} + +::-webkit-scrollbar-track { + background-image: url(images/scroll-cyan.png); + background-repeat: repeat; +} + +::-webkit-scrollbar-thumb { + background-color: rgb(0, 168, 168); +} + +::-webkit-scrollbar-thumb:hover { + background-color: rgb(0, 168, 168); +} + +/* Styles */ +.tui-scroll-blue ::-webkit-scrollbar-track { + background-image: url(images/scroll-blue.png); +} +.tui-scroll-blue ::-webkit-scrollbar-thumb { + background-color: rgb(0, 0, 168); +} +.tui-scroll-blue ::-webkit-scrollbar-thumb:hover { + background-color: rgb(0, 0, 168); +} + +.tui-scroll-green ::-webkit-scrollbar-track { + background-image: url(images/scroll-green.png); +} +.tui-scroll-green ::-webkit-scrollbar-thumb { + background-color: rgb(0, 168, 0); +} +.tui-scroll-green ::-webkit-scrollbar-thumb:hover { + background-color: rgb(0, 168, 0); +} + +.tui-scroll-cyan ::-webkit-scrollbar-track { + background-image: url(images/scroll-cyan.png); +} +.tui-scroll-cyan ::-webkit-scrollbar-thumb { + background-color: rgb(0, 168, 168); +} +.tui-scroll-cyan ::-webkit-scrollbar-thumb:hover { + background-color: rgb(0, 168, 168); +} + +.tui-scroll-red ::-webkit-scrollbar-track { + background-image: url(images/scroll-red.png); +} +.tui-scroll-red ::-webkit-scrollbar-thumb { + background-color: rgb(168, 0, 0); +} +.tui-scroll-red ::-webkit-scrollbar-thumb:hover { + background-color: rgb(168, 0, 0); +} + +.tui-scroll-purple ::-webkit-scrollbar-track { + background-image: url(images/scroll-purple.png); +} +.tui-scroll-purple ::-webkit-scrollbar-thumb { + background-color: rgb(168, 0, 168); +} +.tui-scroll-purple ::-webkit-scrollbar-thumb:hover { + background-color: rgb(168, 0, 168); +} + +.tui-scroll-yellow ::-webkit-scrollbar-track { + background-image: url(images/scroll-yellow.png); +} +.tui-scroll-yellow ::-webkit-scrollbar-thumb { + background-color: rgb(168, 168, 0); +} +.tui-scroll-yellow ::-webkit-scrollbar-thumb:hover { + background-color: rgb(168, 168, 0); +} + +.tui-scroll-white ::-webkit-scrollbar-track { + background-image: url(images/scroll-white.png); +} +.tui-scroll-white ::-webkit-scrollbar-thumb { + background-color: rgb(168, 168, 168); +} +.tui-scroll-white ::-webkit-scrollbar-thumb:hover { + background-color: rgb(168, 168, 168); +} + +.tui-sidenav { + position: fixed; + top: 0px; + left: 0px; + background-color: rgb(0, 168, 168); + min-width: 200px; + box-shadow: 10px 10px black !important; + padding: 6px; + z-index: 10; + height: 100%; + z-index: 8; + display: none; +} +.tui-sidenav.right { + left: initial; + right: 0px; +} +.tui-sidenav.active { + display: block !important; +} + +.tui-sidenav ul { + margin-top: 20px; + border: 2px black solid; +} + +.tui-sidenav ul li { + display: block; + margin: 6px; +} + +.tui-sidenav ul li a { + display: block; + user-select: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} + +.tui-sidenav ul li:hover { + background-color: rgb(255, 255, 0); +} + +.tui-sidenav-button { + cursor: pointer; + user-select: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} + +.tui-statusbar { + width: 100%; + background-color: rgb(168, 168, 168); + padding: 0px 1px; + left: 0px; + bottom: 0px; + z-index: 9; + position: fixed; +} + +.tui-statusbar ul li { + display: inline-block; + margin-left: 10px; + padding: 2px 3px; +} + +.tui-statusbar ul li:active { + background-color: rgb(0, 0, 168); + color: white; +} + +.tui-statusbar ul li a { + user-select: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} + +.tui-statusbar-divider { + border-right: 2px black solid; + display: inline; + margin: 0px 3px; +} + +.tui-table { + border: 2px solid rgb(168, 168, 168); + padding: 5px; + border-collapse: collapse; +} +.tui-table.hovered-blue tbody tr:hover { + background-color: rgb(0, 0, 255) !important; + color: black; +} +.tui-table.hovered-green tbody tr:hover { + background-color: rgb(0, 255, 0) !important; + color: black; +} +.tui-table.hovered-cyan tbody tr:hover { + background-color: rgb(0, 255, 255) !important; + color: black; +} +.tui-table.hovered-red tbody tr:hover { + background-color: rgb(255, 0, 0) !important; + color: white; +} +.tui-table.hovered-purple tbody tr:hover { + background-color: rgb(255, 0, 255) !important; + color: white; +} +.tui-table.hovered-yellow tbody tr:hover { + background-color: rgb(255, 255, 0) !important; + color: black; +} +.tui-table.hovered-white tbody tr:hover { + background-color: rgb(255, 255, 255) !important; + color: black; +} +.tui-table.hovered-orange tbody tr:hover { + background-color: rgb(255, 168, 0) !important; + color: black; +} +.tui-table.hovered tbody tr:hover { + background-color: rgb(0, 255, 255) !important; + color: black; +} +.tui-table.striped-blue tbody tr:nth-child(even) { + background-color: rgb(0, 0, 168); +} +.tui-table.striped-green tbody tr:nth-child(even) { + background-color: rgb(0, 168, 0); +} +.tui-table.striped-cyan tbody tr:nth-child(even) { + background-color: rgb(0, 168, 168); +} +.tui-table.striped-red tbody tr:nth-child(even) { + background-color: rgb(168, 0, 0); +} +.tui-table.striped-purple tbody tr:nth-child(even) { + background-color: rgb(168, 0, 168); +} +.tui-table.striped-yellow tbody tr:nth-child(even) { + background-color: rgb(168, 168, 0); +} +.tui-table.striped-white tbody tr:nth-child(even) { + background-color: rgb(168, 168, 168); + color: black; +} +.tui-table.striped-orange tbody tr:nth-child(even) { + background-color: rgb(168, 86, 0); +} + +.tui-table tbody { + background-color: inherit; + color: white; +} + +.tui-table tbody tr td { + border-right: 2px solid rgb(168, 168, 168); + padding: 0px 2px; +} + +.tui-table thead { + background-color: inherit; + color: rgb(255, 255, 0); + text-align: center; +} + +.tui-table tfoot { + background-color: inherit; + color: rgb(255, 255, 0); + text-align: center; +} + +.tui-table-grid { + border-collapse: collapse; + width: 100%; +} + +.tui-table-grid thead tr td, +.tui-table-grid tbody tr td, +.tui-table-grid thead tr th, +.tui-table-grid tbody tr th { + border: 2px solid black; + padding: 10px; + vertical-align: top; +} + +.tui-tabs { + background-color: rgb(0, 0, 168); + width: 100%; + padding: 0px 10px 0px 10px; +} + +.tui-tabs ul li { + display: inline-block; +} + +.tui-tabs ul li a { + display: block; + user-select: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} + +.tui-tab { + padding: 2px 10px 0px 10px; + color: rgb(168, 168, 168); + cursor: pointer; +} +.tui-tab.active { + background-color: rgb(168, 168, 168); + color: rgb(0, 0, 168); +} +.tui-tab.disabled { + text-decoration: line-through; +} + +.tui-tab-content { + display: none; +} + +.tui-textarea { + background-color: inherit; + border: none; + padding: 0px; + color: rgb(255, 255, 0); + outline: none; +} +.tui-textarea.disabled { + background-color: rgb(168, 168, 168); + color: black; +} + +.tui-window { + background-color: rgb(0, 0, 168); + padding: 1px; + display: inline-block; + position: relative; + box-shadow: 10px 10px black; + color: white; +} + +.tui-screen-640-480 { + width: 640px; + height: 480px; +} + +.tui-screen-800-600 { + width: 800px; + height: 600px; +} + +.tui-screen-1024-768 { + width: 1024px; + height: 768px; +} + +.tui-screen-640-480, +.tui-screen-800-600, +.tui-screen-1024-768 { + position: relative; + overflow: hidden; +} +.tui-screen-640-480.bordered, +.tui-screen-800-600.bordered, +.tui-screen-1024-768.bordered { + border: 2px solid black; +} +.tui-screen-640-480.centered, +.tui-screen-800-600.centered, +.tui-screen-1024-768.centered { + margin: auto; + margin-top: 20px; +} + +.tui-datetime { + padding: 1px 0px 1px 0px; + margin-right: 10px; + float: right; +} + +.tui-shortcut { + float: right; +} + +.tui-shadow, .tui-shadow-1 { + box-shadow: 10px 10px black !important; +} + +.tui-shadow-2 { + box-shadow: 15px 15px black; +} + +.tui-shadow-3 { + box-shadow: 20px 20px black; +} + +.tui-shadow-4 { + box-shadow: 25px 25px black; +} + +.tui-shadow-5 { + box-shadow: 30px 30px black; +} + +.tui-shadow-left, .tui-shadow-left-1 { + box-shadow: -10px 10px black !important; +} + +.tui-shadow-left-2 { + box-shadow: -15px 15px black !important; +} + +.tui-shadow-left-3 { + box-shadow: -20px 20px black !important; +} + +.tui-shadow-left-4 { + box-shadow: -25px 25px black !important; +} + +.tui-shadow-left-5 { + box-shadow: -30px 30px black !important; +} + +.tui-no-shadow { + box-shadow: none !important; +} + +.tui-bg-blue-white { + background-image: url("./images/bg-blue-white.png"); + background-repeat: repeat; +} + +.tui-bg-blue-black { + background-image: url("./images/bg-blue-black.png"); + background-repeat: repeat; +} + +.tui-bg-green-white { + background-image: url("./images/bg-green-white.png"); + background-repeat: repeat; +} + +.tui-bg-green-black { + background-image: url("./images/bg-green-black.png"); + background-repeat: repeat; +} + +.tui-bg-cyan-white { + background-image: url("./images/bg-cyan-white.png"); + background-repeat: repeat; +} + +.tui-bg-cyan-black { + background-image: url("./images/bg-cyan-black.png"); + background-repeat: repeat; +} + +.tui-bg-red-white { + background-image: url("./images/bg-red-white.png"); + background-repeat: repeat; +} + +.tui-bg-red-black { + background-image: url("./images/bg-red-black.png"); + background-repeat: repeat; +} + +.tui-bg-purple-white { + background-image: url("./images/bg-purple-white.png"); + background-repeat: repeat; +} + +.tui-bg-purple-black { + background-image: url("./images/bg-purple-black.png"); + background-repeat: repeat; +} + +.tui-bg-yellow-white { + background-image: url("./images/bg-yellow-white.png"); + background-repeat: repeat; +} + +.tui-bg-yellow-black { + background-image: url("./images/bg-yellow-black.png"); + background-repeat: repeat; +} + +.tui-bg-orange-white { + background-image: url("./images/bg-orange-white.png"); + background-repeat: repeat; +} + +.tui-bg-orange-black { + background-image: url("./images/bg-orange-black.png"); + background-repeat: repeat; +} + +.tui-border-solid { + border-style: solid !important; + border-width: 2px !important; +} + +.tui-border-dashed { + border-style: dashed !important; + border-width: 2px !important; +} + +.tui-border-dotted { + border-style: dotted !important; + border-width: 2px !important; +} + +.tui-border-double { + border-style: double !important; + border-width: 6px !important; +} + +/* Font (Options: 'Lucida Console' or 'DOS') */ +/* Characters */ +/* Theme */ +/* Responsive */ +/* Scrool */ +/* Grid */ +.container { + margin: 0 auto; + max-width: 1280px; + width: 90%; +} + +@media only screen and (min-width : 601px) { + .container { + width: 85%; + } +} +@media only screen and (min-width : 993px) { + .container { + width: 70%; + } +} +.col .row { + margin-left: -0.75rem; + margin-right: -0.75rem; +} + +.section { + padding-top: 1rem; + padding-bottom: 1rem; +} +.section.no-pad { + padding: 0; +} +.section.no-pad-bot { + padding-bottom: 0; +} +.section.no-pad-top { + padding-top: 0; +} + +.row { + margin-left: auto; + margin-right: auto; + margin-bottom: 20px; +} +.row:after { + content: ""; + display: table; + clear: both; +} +.row .col { + float: left; + box-sizing: border-box; + padding: 0 0.75rem; + min-height: 1px; +} +.row .col[class*=push-], .row .col[class*=pull-] { + position: relative; +} +.row .col.s1 { + width: 8.3333333333%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.s2 { + width: 16.6666666667%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.s3 { + width: 25%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.s4 { + width: 33.3333333333%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.s5 { + width: 41.6666666667%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.s6 { + width: 50%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.s7 { + width: 58.3333333333%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.s8 { + width: 66.6666666667%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.s9 { + width: 75%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.s10 { + width: 83.3333333333%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.s11 { + width: 91.6666666667%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.s12 { + width: 100%; + margin-left: auto; + left: auto; + right: auto; +} +.row .col.offset-s1 { + margin-left: 8.3333333333%; +} +.row .col.pull-s1 { + right: 8.3333333333%; +} +.row .col.push-s1 { + left: 8.3333333333%; +} +.row .col.offset-s2 { + margin-left: 16.6666666667%; +} +.row .col.pull-s2 { + right: 16.6666666667%; +} +.row .col.push-s2 { + left: 16.6666666667%; +} +.row .col.offset-s3 { + margin-left: 25%; +} +.row .col.pull-s3 { + right: 25%; +} +.row .col.push-s3 { + left: 25%; +} +.row .col.offset-s4 { + margin-left: 33.3333333333%; +} +.row .col.pull-s4 { + right: 33.3333333333%; +} +.row .col.push-s4 { + left: 33.3333333333%; +} +.row .col.offset-s5 { + margin-left: 41.6666666667%; +} +.row .col.pull-s5 { + right: 41.6666666667%; +} +.row .col.push-s5 { + left: 41.6666666667%; +} +.row .col.offset-s6 { + margin-left: 50%; +} +.row .col.pull-s6 { + right: 50%; +} +.row .col.push-s6 { + left: 50%; +} +.row .col.offset-s7 { + margin-left: 58.3333333333%; +} +.row .col.pull-s7 { + right: 58.3333333333%; +} +.row .col.push-s7 { + left: 58.3333333333%; +} +.row .col.offset-s8 { + margin-left: 66.6666666667%; +} +.row .col.pull-s8 { + right: 66.6666666667%; +} +.row .col.push-s8 { + left: 66.6666666667%; +} +.row .col.offset-s9 { + margin-left: 75%; +} +.row .col.pull-s9 { + right: 75%; +} +.row .col.push-s9 { + left: 75%; +} +.row .col.offset-s10 { + margin-left: 83.3333333333%; +} +.row .col.pull-s10 { + right: 83.3333333333%; +} +.row .col.push-s10 { + left: 83.3333333333%; +} +.row .col.offset-s11 { + margin-left: 91.6666666667%; +} +.row .col.pull-s11 { + right: 91.6666666667%; +} +.row .col.push-s11 { + left: 91.6666666667%; +} +.row .col.offset-s12 { + margin-left: 100%; +} +.row .col.pull-s12 { + right: 100%; +} +.row .col.push-s12 { + left: 100%; +} +@media only screen and (min-width : 601px) { + .row .col.m1 { + width: 8.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.m2 { + width: 16.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.m3 { + width: 25%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.m4 { + width: 33.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.m5 { + width: 41.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.m6 { + width: 50%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.m7 { + width: 58.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.m8 { + width: 66.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.m9 { + width: 75%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.m10 { + width: 83.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.m11 { + width: 91.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.m12 { + width: 100%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.offset-m1 { + margin-left: 8.3333333333%; + } + .row .col.pull-m1 { + right: 8.3333333333%; + } + .row .col.push-m1 { + left: 8.3333333333%; + } + .row .col.offset-m2 { + margin-left: 16.6666666667%; + } + .row .col.pull-m2 { + right: 16.6666666667%; + } + .row .col.push-m2 { + left: 16.6666666667%; + } + .row .col.offset-m3 { + margin-left: 25%; + } + .row .col.pull-m3 { + right: 25%; + } + .row .col.push-m3 { + left: 25%; + } + .row .col.offset-m4 { + margin-left: 33.3333333333%; + } + .row .col.pull-m4 { + right: 33.3333333333%; + } + .row .col.push-m4 { + left: 33.3333333333%; + } + .row .col.offset-m5 { + margin-left: 41.6666666667%; + } + .row .col.pull-m5 { + right: 41.6666666667%; + } + .row .col.push-m5 { + left: 41.6666666667%; + } + .row .col.offset-m6 { + margin-left: 50%; + } + .row .col.pull-m6 { + right: 50%; + } + .row .col.push-m6 { + left: 50%; + } + .row .col.offset-m7 { + margin-left: 58.3333333333%; + } + .row .col.pull-m7 { + right: 58.3333333333%; + } + .row .col.push-m7 { + left: 58.3333333333%; + } + .row .col.offset-m8 { + margin-left: 66.6666666667%; + } + .row .col.pull-m8 { + right: 66.6666666667%; + } + .row .col.push-m8 { + left: 66.6666666667%; + } + .row .col.offset-m9 { + margin-left: 75%; + } + .row .col.pull-m9 { + right: 75%; + } + .row .col.push-m9 { + left: 75%; + } + .row .col.offset-m10 { + margin-left: 83.3333333333%; + } + .row .col.pull-m10 { + right: 83.3333333333%; + } + .row .col.push-m10 { + left: 83.3333333333%; + } + .row .col.offset-m11 { + margin-left: 91.6666666667%; + } + .row .col.pull-m11 { + right: 91.6666666667%; + } + .row .col.push-m11 { + left: 91.6666666667%; + } + .row .col.offset-m12 { + margin-left: 100%; + } + .row .col.pull-m12 { + right: 100%; + } + .row .col.push-m12 { + left: 100%; + } +} +@media only screen and (min-width : 993px) { + .row .col.l1 { + width: 8.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.l2 { + width: 16.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.l3 { + width: 25%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.l4 { + width: 33.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.l5 { + width: 41.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.l6 { + width: 50%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.l7 { + width: 58.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.l8 { + width: 66.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.l9 { + width: 75%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.l10 { + width: 83.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.l11 { + width: 91.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.l12 { + width: 100%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.offset-l1 { + margin-left: 8.3333333333%; + } + .row .col.pull-l1 { + right: 8.3333333333%; + } + .row .col.push-l1 { + left: 8.3333333333%; + } + .row .col.offset-l2 { + margin-left: 16.6666666667%; + } + .row .col.pull-l2 { + right: 16.6666666667%; + } + .row .col.push-l2 { + left: 16.6666666667%; + } + .row .col.offset-l3 { + margin-left: 25%; + } + .row .col.pull-l3 { + right: 25%; + } + .row .col.push-l3 { + left: 25%; + } + .row .col.offset-l4 { + margin-left: 33.3333333333%; + } + .row .col.pull-l4 { + right: 33.3333333333%; + } + .row .col.push-l4 { + left: 33.3333333333%; + } + .row .col.offset-l5 { + margin-left: 41.6666666667%; + } + .row .col.pull-l5 { + right: 41.6666666667%; + } + .row .col.push-l5 { + left: 41.6666666667%; + } + .row .col.offset-l6 { + margin-left: 50%; + } + .row .col.pull-l6 { + right: 50%; + } + .row .col.push-l6 { + left: 50%; + } + .row .col.offset-l7 { + margin-left: 58.3333333333%; + } + .row .col.pull-l7 { + right: 58.3333333333%; + } + .row .col.push-l7 { + left: 58.3333333333%; + } + .row .col.offset-l8 { + margin-left: 66.6666666667%; + } + .row .col.pull-l8 { + right: 66.6666666667%; + } + .row .col.push-l8 { + left: 66.6666666667%; + } + .row .col.offset-l9 { + margin-left: 75%; + } + .row .col.pull-l9 { + right: 75%; + } + .row .col.push-l9 { + left: 75%; + } + .row .col.offset-l10 { + margin-left: 83.3333333333%; + } + .row .col.pull-l10 { + right: 83.3333333333%; + } + .row .col.push-l10 { + left: 83.3333333333%; + } + .row .col.offset-l11 { + margin-left: 91.6666666667%; + } + .row .col.pull-l11 { + right: 91.6666666667%; + } + .row .col.push-l11 { + left: 91.6666666667%; + } + .row .col.offset-l12 { + margin-left: 100%; + } + .row .col.pull-l12 { + right: 100%; + } + .row .col.push-l12 { + left: 100%; + } +} +@media only screen and (min-width : 1201px) { + .row .col.xl1 { + width: 8.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.xl2 { + width: 16.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.xl3 { + width: 25%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.xl4 { + width: 33.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.xl5 { + width: 41.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.xl6 { + width: 50%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.xl7 { + width: 58.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.xl8 { + width: 66.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.xl9 { + width: 75%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.xl10 { + width: 83.3333333333%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.xl11 { + width: 91.6666666667%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.xl12 { + width: 100%; + margin-left: auto; + left: auto; + right: auto; + } + .row .col.offset-xl1 { + margin-left: 8.3333333333%; + } + .row .col.pull-xl1 { + right: 8.3333333333%; + } + .row .col.push-xl1 { + left: 8.3333333333%; + } + .row .col.offset-xl2 { + margin-left: 16.6666666667%; + } + .row .col.pull-xl2 { + right: 16.6666666667%; + } + .row .col.push-xl2 { + left: 16.6666666667%; + } + .row .col.offset-xl3 { + margin-left: 25%; + } + .row .col.pull-xl3 { + right: 25%; + } + .row .col.push-xl3 { + left: 25%; + } + .row .col.offset-xl4 { + margin-left: 33.3333333333%; + } + .row .col.pull-xl4 { + right: 33.3333333333%; + } + .row .col.push-xl4 { + left: 33.3333333333%; + } + .row .col.offset-xl5 { + margin-left: 41.6666666667%; + } + .row .col.pull-xl5 { + right: 41.6666666667%; + } + .row .col.push-xl5 { + left: 41.6666666667%; + } + .row .col.offset-xl6 { + margin-left: 50%; + } + .row .col.pull-xl6 { + right: 50%; + } + .row .col.push-xl6 { + left: 50%; + } + .row .col.offset-xl7 { + margin-left: 58.3333333333%; + } + .row .col.pull-xl7 { + right: 58.3333333333%; + } + .row .col.push-xl7 { + left: 58.3333333333%; + } + .row .col.offset-xl8 { + margin-left: 66.6666666667%; + } + .row .col.pull-xl8 { + right: 66.6666666667%; + } + .row .col.push-xl8 { + left: 66.6666666667%; + } + .row .col.offset-xl9 { + margin-left: 75%; + } + .row .col.pull-xl9 { + right: 75%; + } + .row .col.push-xl9 { + left: 75%; + } + .row .col.offset-xl10 { + margin-left: 83.3333333333%; + } + .row .col.pull-xl10 { + right: 83.3333333333%; + } + .row .col.push-xl10 { + left: 83.3333333333%; + } + .row .col.offset-xl11 { + margin-left: 91.6666666667%; + } + .row .col.pull-xl11 { + right: 91.6666666667%; + } + .row .col.push-xl11 { + left: 91.6666666667%; + } + .row .col.offset-xl12 { + margin-left: 100%; + } + .row .col.pull-xl12 { + right: 100%; + } + .row .col.push-xl12 { + left: 100%; + } +} + +.tui-modal { + position: absolute; + left: 0px; + right: 0px; + top: 100px; + z-index: 101; + display: none; +} +.tui-modal.active { + display: block !important; +} + +.tui-overlap { + position: absolute; + top: 0px; + left: 0px; + right: 0px; + bottom: 0px; + z-index: 100; + display: none; +} +.tui-overlap.active { + display: block !important; +} + +/* Chart container */ +.tui-chart-vertical { + position: relative; + background-color: black; +} + +.tui-chart-horizontal { + position: relative; + background-color: black; +} + +/* Chart display */ +.tui-chart-vertical .tui-chart-display { + display: flex; + position: absolute; + top: 0px; + left: 50px; + right: 0px; + bottom: 30px; + align-items: flex-end; + border-bottom: 2px solid white; + border-left: 2px solid white; +} +.tui-chart-vertical .tui-chart-display.no-x-axis { + bottom: 0px; +} +.tui-chart-vertical .tui-chart-display.no-y-axis { + left: 0px; +} + +.tui-chart-horizontal .tui-chart-display { + display: flex; + position: absolute; + flex-direction: column; + top: 0px; + left: 50px; + right: 0px; + bottom: 30px; + align-items: stretch; + border-bottom: 2px solid white; + border-left: 2px solid white; +} +.tui-chart-horizontal .tui-chart-display.no-x-axis { + bottom: 0px; +} +.tui-chart-horizontal .tui-chart-display.no-y-axis { + left: 0px; +} + +/* Chart X axis */ +.tui-chart-x-axis { + display: flex; + position: absolute; + height: 30px; + left: 50px; + right: 0px; + bottom: 0px; + line-height: 30px; +} + +/* Chart Y axis */ +.tui-chart-y-axis { + display: flex; + flex-direction: column; + position: absolute; + top: 0px; + left: 0px; + bottom: 30px; + width: 50px; +} + +/* Chart legends */ +.tui-chart-vertical .tui-chart-x-axis .tui-chart-legend { + flex: 0 1 100%; + text-align: center; +} + +.tui-chart-vertical .tui-chart-y-axis .tui-chart-legend { + flex: 1; + text-align: right; + padding-right: 2px; + display: flex; + align-items: flex-start; + justify-content: flex-end; +} + +.tui-chart-horizontal .tui-chart-x-axis .tui-chart-legend { + flex: 0 1 100%; + text-align: right; +} + +.tui-chart-horizontal .tui-chart-y-axis .tui-chart-legend { + flex: 1; + text-align: right; + padding-right: 2px; + display: flex; + align-items: center; + justify-content: flex-end; +} + +/* Chart value */ +.tui-chart-vertical .tui-chart-display .tui-chart-value { + flex: 0 1 100%; + text-align: center; + overflow: hidden; +} + +.tui-chart-horizontal .tui-chart-display .tui-chart-value { + flex: 1; + text-align: right; + display: flex; + align-items: center; + align-content: flex-start; + justify-content: flex-end; + overflow: hidden; +} \ No newline at end of file diff --git a/web/static/vendor/tuicss/tuicss.js b/web/static/vendor/tuicss/tuicss.js new file mode 100644 index 0000000..21c3b6d --- /dev/null +++ b/web/static/vendor/tuicss/tuicss.js @@ -0,0 +1,256 @@ +/** + * Replacement for jQuery's $(document).ready() function. + * This is handy in making sure stuff fires after the DOM is ready to be touched. + * Stolen from:https://stackoverflow.com/a/53601942/344028 + * + * @param fn Callback. + */ +function domReady(fn) { + // If we're early to the party + document.addEventListener('DOMContentLoaded', fn); + + // If late; I mean on time. + if (document.readyState === 'interactive' || document.readyState === 'complete') { + fn(); + } +} + +/** + * TuiTabs controller + */ +function tabsController() { + // Get all the tab elements (typically li tags). + const tabs = document.getElementsByClassName('tui-tab'); + + if (!tabs.length) { + // No tabs found, return early and save a couple CPU cycles. + return; + } + + for (const tab of tabs) { + // Add click listeners to them. + tab.addEventListener('click', function (e) { + + // Check if the clicked tab is disabled + if(e.target.classList.contains("disabled")) { + return; + } + + // Remove the 'active' class from any and all tabs. + for (const otherTab of tabs) { + otherTab.classList.remove('active'); + } + + // Get the content element. + const tabContents = document.getElementsByClassName('tui-tab-content'); + + if (tabContents) { + for (const tabContent of tabContents) { + // Hide all tab contents. + tabContent.style.display = 'none'; + } + } else { + throw 'No tab content elements found.' + } + + // Get the id of the tab contents we want to show. + const tabContentId = e.target.getAttribute('data-tab-content'); + + if (tabContentId) { + const tabContent = document.getElementById(tabContentId); + if (tabContent) { + // Show the tab contents. + tabContent.style.display = 'block'; + } else { + throw 'No tab content element with id "' + tabContentId + '" found.'; + } + } + // We are not going to throw an error here, since we could make the tab do something else that a tab + // normally wouldn't do. + + // Set the clicked tab to have the 'active' class so we can use it in the next part. + e.target.classList.add('active'); + + }); + } + + // Grab the first tab with the active class. + const activeTab = document.querySelector('.tui-tab.active'); + if (activeTab) { + // Now click it 'click' it. + activeTab.click(); + } else { + // Nothing found, just click the first tab foud. + tabs[0].click() + } +} + +/** + * Date/time field controller + */ +function datetimeController() { + // Get date/time elements. + const clocks = document.getElementsByClassName('tui-datetime'); + + if (!clocks.length) { + // No date time elements found, return early and save a couple CPU cycles. + return; + } + + // Kick off our clock interval stuff. + datetimeInterval(); + + // Synchronize time and set interval to control the clocks + setTimeout(() => { + setInterval(datetimeInterval, 1000); + }, 1000 - new Date().getMilliseconds()); + + function datetimeInterval() { + for (const clock of clocks) { + if (clock === null) { + continue; + } + + // Get the format we want to display in the element. + let format = clock.getAttribute('data-format'); + + // parse out the date and time into constants. + const today = new Date(); + const month = (today.getMonth() + 1).toString().padStart(2, '0'); + const day = today.getDate().toString().padStart(2, '0'); + const dayOfWeek = (today.getDay() + 1).toString().padStart(2, '0'); + const year = today.getFullYear().toString(); + const hour = today.getHours().toString().padStart(2, '0'); + const hour12 = (parseInt(hour) + 24) % '12' || '12'; + const minute = today.getMinutes().toString().padStart(2, '0'); + const second = today.getSeconds().toString().padStart(2, '0'); + const ampm = parseInt(hour) >= 12 ? 'PM' : 'AM'; + + // Replace based on the format. + format = format.replace('M', month); + format = format.replace('d', day); + format = format.replace('e', dayOfWeek); + format = format.replace('y', year); + format = format.replace('H', hour); + format = format.replace('h', hour12); + format = format.replace('m', minute); + format = format.replace('s', second); + format = format.replace('a', ampm); + + // Show it in the element. + clock.innerHTML = format; + } + } +} + +/** + * Sidenav Controller + * There should only side navigation element at the moment. + */ +function sidenavController() { + // Get the side navigation button (there should be only one, but if not, we are getting the first one). + const sideNavButton = document.querySelector('.tui-sidenav-button'); + + if (!sideNavButton) { + // No side navigation button found, return early and save a couple CPU cycles. + return; + } + + // Add the click event listener to the buttons. + sideNavButton.addEventListener('click', () => { + // Get the side navigation element (there should be only one, but if not, we are getting the first one). + const sideNav = document.querySelector('.tui-sidenav'); + + if (sideNav) { + if (sideNav.classList.contains('active')) { + sideNav.classList.remove('active'); + } else { + sideNav.classList.add('active'); + } + } else { + throw 'No sidenav element found.' + } + }); +} + +/** + * Modal controller + */ +function modalController() { + // Get the overlap (overlay) element (there should be only one, but if not, we are getting the first one). + const tuiOverlap = document.querySelector('.tui-overlap'); + + if (!tuiOverlap) { + // No overlap found element, return early and save a couple CPU cycles. + return; + } + + // Find modal buttons. + const modalButtons = document.getElementsByClassName('tui-modal-button'); + for (const modalButton of modalButtons) { + // Add the click event listener to the buttons. + modalButton.addEventListener('click', (e) => { + // Show the overlap. + tuiOverlap.classList.add('active'); + + // Get the display element for the modal. + const modalId = e.target.getAttribute('data-modal'); + + if (modalId) { + const modal = document.getElementById(modalId); + + if (modal) { + // Show it. + modal.classList.add('active'); + } else { + throw 'No modal element with id of "' + modalId + '" found.'; + } + } else { + throw 'Modal close button data-modal attribute is empty or not set.' + } + }); + } + + // Find the close modal buttons. + const modalCloseButtons = document.getElementsByClassName('tui-modal-close-button'); + + if (modalButtons.length > 0 && !modalCloseButtons.length) { + // A modal without a close button, is a bad modal. + throw 'No modal close buttons found.' + } + + for (const modalCloseButton of modalCloseButtons) { + // Add the click event listener to the buttons. + modalCloseButton.addEventListener('click', (e) => { + // Hide the the overlap. + tuiOverlap.classList.remove('active'); + + // Get the display element id for the modal. + const modalId = e.target.getAttribute('data-modal'); + + if (modalId) { + // Get the modal element. + const modal = document.getElementById(modalId); + + if (modal) { + // Hide it. + modal.classList.remove('active'); + } else { + throw 'No modal element with id of "' + modalId + '" found.'; + } + } else { + throw 'Modal close button data-modal attribute is empty or not set.' + } + }); + } +} + +/** + * Init: This is at the bottom to make sure it is fired correctly. + */ +domReady(function () { + tabsController(); + datetimeController(); + sidenavController(); + modalController(); +}); diff --git a/web/static/vendor/tuicss/tuicss.min.css b/web/static/vendor/tuicss/tuicss.min.css new file mode 100644 index 0000000..a99923f --- /dev/null +++ b/web/static/vendor/tuicss/tuicss.min.css @@ -0,0 +1 @@ +@charset "UTF-8";@font-face{font-family:DOS;src:url("fonts/Perfect DOS VGA 437 Win.ttf")}html{font-family:"Lucida Console",monospace;font-size:18px;box-sizing:border-box}body{margin:0}*,:after,:before{font-family:inherit;font-size:inherit;box-sizing:inherit}ul{margin:0;padding:0;list-style-type:none}ul li{list-style-type:none}ul li a{display:block}a{color:inherit;text-decoration:none}span{margin:0}hr{border:none;border-bottom:2px solid #fff}input,select,textarea{width:200px}@media only screen and (max-width :600px){.hide-on-small-and-down,.hide-on-small-only{display:none!important}}@media only screen and (max-width :992px){.hide-on-med-and-down{display:none!important}}@media only screen and (min-width :601px){.hide-on-med-and-up{display:none!important}}@media only screen and (min-width:600px) and (max-width:992px){.hide-on-med-only{display:none!important}}@media only screen and (min-width :993px){.hide-on-large-only{display:none!important}}@media only screen and (min-width :1201px){.hide-on-extra-large-only{display:none!important}}@media only screen and (min-width :1201px){.show-on-extra-large{display:block!important}}@media only screen and (min-width :993px){.show-on-large{display:block!important}}@media only screen and (min-width:600px) and (max-width:992px){.show-on-medium{display:block!important}}@media only screen and (max-width :600px){.show-on-small{display:block!important}}@media only screen and (min-width :601px){.show-on-medium-and-up{display:block!important}}@media only screen and (max-width :992px){.show-on-medium-and-down{display:block!important}}.primary{background-color:#0000a8}.primary-text{color:#0000a8}.primary-border{border-color:#0000a8}.primary-hover:hover{background-color:#0000a8}.primary-text-hover:hover{color:#0000a8}.primary-border-hover:hover{border-color:#0000a8}.secondary{background-color:#a8a8a8}.secondary-text{color:#a8a8a8}.secondary-border{border-color:#a8a8a8}.secondary-hover:hover{background-color:#a8a8a8}.secondary-text-hover:hover{color:#a8a8a8}.secondary-border-hover:hover{border-color:#a8a8a8}.success{background-color:#00a800}.success-text{color:#00a800}.success-border{border-color:#00a800}.success-hover:hover{background-color:#00a800}.success-text-hover:hover{color:#00a800}.success-border-hover:hover{border-color:#00a800}.danger{background-color:#a80000}.danger-text{color:#a80000}.danger-border{border-color:#a80000}.danger-hover:hover{background-color:#a80000}.danger-text-hover:hover{color:#a80000}.danger-border-hover:hover{border-color:#a80000}.warning{background-color:#a8a800}.warning-text{color:#a8a800}.warning-border{border-color:#a8a800}.warning-hover:hover{background-color:#a8a800}.warning-text-hover:hover{color:#a8a800}.warning-border-hover:hover{border-color:#a8a800}.info{background-color:#00a8a8}.info-text{color:#00a8a8}.info-border{border-color:#00a8a8}.info-hover:hover{background-color:#00a8a8}.info-text-hover:hover{color:#00a8a8}.info-border-hover:hover{border-color:#00a8a8}.black-168{background-color:#000!important}.blue-168{background-color:#0000a8!important}.green-168{background-color:#00a800!important}.cyan-168{background-color:#00a8a8!important}.red-168{background-color:#a80000!important}.purple-168{background-color:#a800a8!important}.yellow-168{background-color:#a8a800!important}.white-168{background-color:#a8a8a8!important}.orange-168{background-color:#a85600!important}.black-168-text{color:#000!important}.blue-168-text{color:#0000a8!important}.green-168-text{color:#00a800!important}.cyan-168-text{color:#00a8a8!important}.red-168-text{color:#a80000!important}.purple-168-text{color:#a800a8!important}.yellow-168-text{color:#a8a800!important}.white-168-text{color:#a8a8a8!important}.orange-168-text{color:#a85600!important}.black-168-border{border-color:#000!important}.blue-168-border{border-color:#0000a8!important}.green-168-border{border-color:#00a800!important}.cyan-168-border{border-color:#00a8a8!important}.red-168-border{border-color:#a80000!important}.purple-168-border{border-color:#a800a8!important}.yellow-168-border{border-color:#a8a800!important}.white-168-border{border-color:#a8a8a8!important}.orange-168-border{border-color:#a85600!important}.black-168-hover:hover{background-color:#000!important}.blue-168-hover:hover{background-color:#0000a8!important}.green-168-hover:hover{background-color:#00a800!important}.cyan-168-hover:hover{background-color:#00a8a8!important}.red-168-hover:hover{background-color:#a80000!important}.purple-168-hover:hover{background-color:#a800a8!important}.yellow-168-hover:hover{background-color:#a8a800!important}.white-168-hover:hover{background-color:#a8a8a8!important}.orange-168-hover:hover{background-color:#a85600!important}.black-168-text-hover:hover{color:#000!important}.blue-168-text-hover:hover{color:#0000a8!important}.green-168-text-hover:hover{color:#00a800!important}.cyan-168-text-hover:hover{color:#00a8a8!important}.red-168-text-hover:hover{color:#a80000!important}.purple-168-text-hover:hover{color:#a800a8!important}.yellow-168-text-hover:hover{color:#a8a800!important}.white-168-text-hover:hover{color:#a8a8a8!important}.orange-168-text-hover:hover{color:#a85600!important}.black-168-border-hover:hover{border-color:#000!important}.blue-168-border-hover:hover{border-color:#0000a8!important}.green-168-border-hover:hover{border-color:#00a800!important}.cyan-168-border-hover:hover{border-color:#00a8a8!important}.red-168-border-hover:hover{border-color:#a80000!important}.purple-168-border-hover:hover{border-color:#a800a8!important}.yellow-168-border-hover:hover{border-color:#a8a800!important}.white-168-border-hover:hover{border-color:#a8a8a8!important}.orange-168-border-hover:hover{border-color:#a85600!important}.black-255{background-color:#000!important}.blue-255{background-color:#00f!important}.green-255{background-color:#0f0!important}.cyan-255{background-color:#0ff!important}.red-255{background-color:red!important}.purple-255{background-color:#f0f!important}.yellow-255{background-color:#ff0!important}.white-255{background-color:#fff!important}.orange-255{background-color:#ffa800!important}.black-255-text{color:#000!important}.blue-255-text{color:#00f!important}.green-255-text{color:#0f0!important}.cyan-255-text{color:#0ff!important}.red-255-text{color:red!important}.purple-255-text{color:#f0f!important}.yellow-255-text{color:#ff0!important}.white-255-text{color:#fff!important}.orange-255-text{color:#ffa800!important}.black-255-border{border-color:#000!important}.blue-255-border{border-color:#00f!important}.green-255-border{border-color:#0f0!important}.cyan-255-border{border-color:#0ff!important}.red-255-border{border-color:red!important}.purple-255-border{border-color:#f0f!important}.yellow-255-border{border-color:#ff0!important}.white-255-border{border-color:#fff!important}.orange-255-border{border-color:#ffa800!important}.black-255-hover:hover{background-color:#000!important}.blue-255-hover:hover{background-color:#00f!important}.green-255-hover:hover{background-color:#0f0!important}.cyan-255-hover:hover{background-color:#0ff!important}.red-255-hover:hover{background-color:red!important}.purple-255-hover:hover{background-color:#f0f!important}.yellow-255-hover:hover{background-color:#ff0!important}.white-255-hover:hover{background-color:#fff!important}.orange-255-hover:hover{background-color:#ffa800!important}.black-255-text-hover:hover{color:#000!important}.blue-255-text-hover:hover{color:#00f!important}.green-255-text-hover:hover{color:#0f0!important}.cyan-255-text-hover:hover{color:#0ff!important}.red-255-text-hover:hover{color:red!important}.purple-255-text-hover:hover{color:#f0f!important}.yellow-255-text-hover:hover{color:#ff0!important}.white-255-text-hover:hover{color:#fff!important}.orange-255-text-hover:hover{color:#ffa800!important}.black-255-border-hover:hover{border-color:#000!important}.blue-255-border-hover:hover{border-color:#00f!important}.green-255-border-hover:hover{border-color:#0f0!important}.cyan-255-border-hover:hover{border-color:#0ff!important}.red-255-border-hover:hover{border-color:red!important}.purple-255-border-hover:hover{border-color:#f0f!important}.yellow-255-border-hover:hover{border-color:#ff0!important}.white-255-border-hover:hover{border-color:#fff!important}.orange-255-border-hover:hover{border-color:#ffa800!important}.black{background-color:#000!important}.black-text{color:#000!important}.black-border{border-color:#000!important}.black-hover:hover{background-color:#000!important}.black-text-hover:hover{color:#000!important}.black-border-hover:hover{border-color:#000!important}.white{background-color:#fff!important}.white-text{color:#fff!important}.white-border{border-color:#fff!important}.white-hover:hover{background-color:#fff!important}.white-text-hover:hover{color:#fff!important}.white-border-hover:hover{border-color:#fff!important}.left{float:left!important}.right{float:right!important}.center{text-align:center}.left-align{text-align:left}.right-align{text-align:right}.center-align{text-align:center}.full-width{width:100%!important}.full-height{height:100%!important}.inline{display:inline!important}.inline-block{display:inline-block!important}.block{display:block!important}.valign-top{vertical-align:top!important}.valign-middle{vertical-align:middle!important}.valign-bottom{vertical-align:bottom!important}.fixed{position:fixed!important}.absolute{position:absolute!important}.relative{position:relative!important}.static{position:static!important}.no-shadow{box-shadow:none!important}.no-padding{padding:0!important}.no-border{border:none!important}.content{padding:12px}.disable-select{user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none}.cursor-pointer{cursor:pointer!important}.cursor-default{cursor:default!important}.disabled{cursor:not-allowed!important}.tui-button{display:inline-block;outline:0;padding:1px 10px;background-color:#00a800;color:#000;border:none;cursor:pointer;text-align:center;box-shadow:10px 10px #000;border-radius:0;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-button.disabled{text-decoration:line-through}.tui-button:active{background-color:#00a8a8!important;color:#000!important;box-shadow:none!important}.tui-button:focus{color:#0ff!important}input[type=button]{width:initial}.tui-checkbox{display:block;position:relative;cursor:pointer;color:#fff;padding-left:30px;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-checkbox.disabled{color:#a8a8a8}.tui-checkbox input{position:absolute;opacity:0;cursor:pointer;top:0;left:0;pointer-events:none}.tui-checkbox span{position:absolute;width:10px;height:10px;cursor:pointer;top:0;left:0}.tui-checkbox input:checked~span::after{content:"[√]";color:#0ff}.tui-checkbox input:not(checked)~span::after{content:"[ ]"}.tui-divider{border-bottom:2px solid #fff;display:block}.tui-black-divider{border-bottom:2px solid #000;display:block}.tui-dropdown{position:relative;display:inline-block;cursor:pointer;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-dropdown-content{display:none;position:absolute;background-color:#a8a8a8;min-width:200px;padding:6px;z-index:9}.tui-dropdown-content ul{border:2px #000 solid}.tui-dropdown-content ul li{display:block!important;margin:6px}.tui-dropdown-content ul li a:hover{background-color:#00a800}.tui-dropdown:hover>.tui-dropdown-content:first-of-type{display:block}.tui-fieldset{border:6px #fff double;padding:12px;background-color:inherit;margin-bottom:6px}.tui-fieldset.no-legend{margin-top:6px}.tui-input-fieldset{border-top:6px #fff double;border-bottom:6px #fff double;border-left:2px #fff solid;border-right:2px #fff solid;padding:5px;background-color:inherit}.tui-input-fieldset legend{color:#fff}.tui-input-fieldset:hover{border-color:#ff0}.tui-input-fieldset:hover legend{color:#ff0}.tui-fieldset-button{position:absolute;top:0;right:16px;color:#fff;background-color:inherit;z-index:2;border:none;cursor:pointer;outline:0;padding:2px;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-fieldset-button.left{right:initial;left:16px!important}.tui-fieldset-button.bottom{bottom:0;top:initial}.tui-fieldset-text{position:absolute;bottom:0;left:16px;color:#fff;background-color:inherit;z-index:2;padding:2px}.tui-fieldset-text.right{left:initial;right:16px}.tui-fieldset-text.top{top:0;bottom:initial}.tui-fieldset-button::before{content:"["}.tui-fieldset-button::after{content:"]"}.tui-fieldset-button:active{color:#0ff!important}.tui-input{background-color:#000;color:#fff;outline:0;border:none;border-radius:0}.tui-input.disabled{background-color:#a8a8a8;color:#000}.tui-input:focus{background-color:#ff0!important;color:#000!important}.tui-nav{width:100%;background-color:#a8a8a8;padding:0 2px;z-index:9;display:block;position:fixed}.tui-nav ul li{display:inline-block;margin-left:10px;padding:1px 3px}.tui-nav ul li a{display:block;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-nav ul li:hover{background-color:#00a800}.tui-panel{background-color:#0000a8;display:inline-block;color:#fff;box-shadow:10px 10px #000}.tui-panel-content{padding:12px}.tui-panel-header{padding-top:2px;display:block;background:#fff;text-align:center}.tui-progress-bar{display:block;position:relative;height:20px;width:200px;background-color:#00a8a8;overflow:hidden}.tui-progress{position:absolute;left:0;background-color:#0ff;height:100%;display:inline-block}.tui-progress-bar .tui-indeterminate{position:absolute;left:0;background-color:#0ff;height:20px;width:20px;display:inline-block;animation:indeterminate 1s backwards;animation-iteration-count:infinite;animation-timing-function:linear}.tui-progress-label{position:absolute;top:50%;left:50%;transform:translateX(-50%) translateY(-50%);z-index:1}@keyframes indeterminate{from{margin-left:-10%}to{margin-left:100%}}.tui-radio{display:block;position:relative;cursor:pointer;color:#fff;padding-left:30px;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-radio.disabled{color:#a8a8a8}.tui-radio input{position:absolute;opacity:0;cursor:pointer;top:0;left:0;pointer-events:none}.tui-radio span{position:absolute;width:10px;height:10px;cursor:pointer;top:0;left:0}.tui-radio input:checked~span:after{content:"(•)";color:#0ff!important}.tui-radio input:not(checked)~span:after{content:"( )"}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background-image:url(images/scroll-cyan.png);background-repeat:repeat}::-webkit-scrollbar-thumb{background-color:#00a8a8}::-webkit-scrollbar-thumb:hover{background-color:#00a8a8}.tui-scroll-blue ::-webkit-scrollbar-track{background-image:url(images/scroll-blue.png)}.tui-scroll-blue ::-webkit-scrollbar-thumb{background-color:#0000a8}.tui-scroll-blue ::-webkit-scrollbar-thumb:hover{background-color:#0000a8}.tui-scroll-green ::-webkit-scrollbar-track{background-image:url(images/scroll-green.png)}.tui-scroll-green ::-webkit-scrollbar-thumb{background-color:#00a800}.tui-scroll-green ::-webkit-scrollbar-thumb:hover{background-color:#00a800}.tui-scroll-cyan ::-webkit-scrollbar-track{background-image:url(images/scroll-cyan.png)}.tui-scroll-cyan ::-webkit-scrollbar-thumb{background-color:#00a8a8}.tui-scroll-cyan ::-webkit-scrollbar-thumb:hover{background-color:#00a8a8}.tui-scroll-red ::-webkit-scrollbar-track{background-image:url(images/scroll-red.png)}.tui-scroll-red ::-webkit-scrollbar-thumb{background-color:#a80000}.tui-scroll-red ::-webkit-scrollbar-thumb:hover{background-color:#a80000}.tui-scroll-purple ::-webkit-scrollbar-track{background-image:url(images/scroll-purple.png)}.tui-scroll-purple ::-webkit-scrollbar-thumb{background-color:#a800a8}.tui-scroll-purple ::-webkit-scrollbar-thumb:hover{background-color:#a800a8}.tui-scroll-yellow ::-webkit-scrollbar-track{background-image:url(images/scroll-yellow.png)}.tui-scroll-yellow ::-webkit-scrollbar-thumb{background-color:#a8a800}.tui-scroll-yellow ::-webkit-scrollbar-thumb:hover{background-color:#a8a800}.tui-scroll-white ::-webkit-scrollbar-track{background-image:url(images/scroll-white.png)}.tui-scroll-white ::-webkit-scrollbar-thumb{background-color:#a8a8a8}.tui-scroll-white ::-webkit-scrollbar-thumb:hover{background-color:#a8a8a8}.tui-sidenav{position:fixed;top:0;left:0;background-color:#00a8a8;min-width:200px;box-shadow:10px 10px #000!important;padding:6px;z-index:10;height:100%;z-index:8;display:none}.tui-sidenav.right{left:initial;right:0}.tui-sidenav.active{display:block!important}.tui-sidenav ul{margin-top:20px;border:2px #000 solid}.tui-sidenav ul li{display:block;margin:6px}.tui-sidenav ul li a{display:block;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-sidenav ul li:hover{background-color:#ff0}.tui-sidenav-button{cursor:pointer;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-statusbar{width:100%;background-color:#a8a8a8;padding:0 1px;left:0;bottom:0;z-index:9;position:fixed}.tui-statusbar ul li{display:inline-block;margin-left:10px;padding:2px 3px}.tui-statusbar ul li:active{background-color:#0000a8;color:#fff}.tui-statusbar ul li a{user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-statusbar-divider{border-right:2px #000 solid;display:inline;margin:0 3px}.tui-table{border:2px solid #a8a8a8;padding:5px;border-collapse:collapse}.tui-table.hovered-blue tbody tr:hover{background-color:#00f!important;color:#000}.tui-table.hovered-green tbody tr:hover{background-color:#0f0!important;color:#000}.tui-table.hovered-cyan tbody tr:hover{background-color:#0ff!important;color:#000}.tui-table.hovered-red tbody tr:hover{background-color:red!important;color:#fff}.tui-table.hovered-purple tbody tr:hover{background-color:#f0f!important;color:#fff}.tui-table.hovered-yellow tbody tr:hover{background-color:#ff0!important;color:#000}.tui-table.hovered-white tbody tr:hover{background-color:#fff!important;color:#000}.tui-table.hovered-orange tbody tr:hover{background-color:#ffa800!important;color:#000}.tui-table.hovered tbody tr:hover{background-color:#0ff!important;color:#000}.tui-table.striped-blue tbody tr:nth-child(even){background-color:#0000a8}.tui-table.striped-green tbody tr:nth-child(even){background-color:#00a800}.tui-table.striped-cyan tbody tr:nth-child(even){background-color:#00a8a8}.tui-table.striped-red tbody tr:nth-child(even){background-color:#a80000}.tui-table.striped-purple tbody tr:nth-child(even){background-color:#a800a8}.tui-table.striped-yellow tbody tr:nth-child(even){background-color:#a8a800}.tui-table.striped-white tbody tr:nth-child(even){background-color:#a8a8a8;color:#000}.tui-table.striped-orange tbody tr:nth-child(even){background-color:#a85600}.tui-table tbody{background-color:inherit;color:#fff}.tui-table tbody tr td{border-right:2px solid #a8a8a8;padding:0 2px}.tui-table thead{background-color:inherit;color:#ff0;text-align:center}.tui-table tfoot{background-color:inherit;color:#ff0;text-align:center}.tui-table-grid{border-collapse:collapse;width:100%}.tui-table-grid tbody tr td,.tui-table-grid tbody tr th,.tui-table-grid thead tr td,.tui-table-grid thead tr th{border:2px solid #000;padding:10px;vertical-align:top}.tui-tabs{background-color:#0000a8;width:100%;padding:0 10px 0 10px}.tui-tabs ul li{display:inline-block}.tui-tabs ul li a{display:block;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-tab{padding:2px 10px 0 10px;color:#a8a8a8;cursor:pointer}.tui-tab.active{background-color:#a8a8a8;color:#0000a8}.tui-tab.disabled{text-decoration:line-through}.tui-tab-content{display:none}.tui-textarea{background-color:inherit;border:none;padding:0;color:#ff0;outline:0}.tui-textarea.disabled{background-color:#a8a8a8;color:#000}.tui-window{background-color:#0000a8;padding:1px;display:inline-block;position:relative;box-shadow:10px 10px #000;color:#fff}.tui-screen-640-480{width:640px;height:480px}.tui-screen-800-600{width:800px;height:600px}.tui-screen-1024-768{width:1024px;height:768px}.tui-screen-1024-768,.tui-screen-640-480,.tui-screen-800-600{position:relative;overflow:hidden}.tui-screen-1024-768.bordered,.tui-screen-640-480.bordered,.tui-screen-800-600.bordered{border:2px solid #000}.tui-screen-1024-768.centered,.tui-screen-640-480.centered,.tui-screen-800-600.centered{margin:auto;margin-top:20px}.tui-datetime{padding:1px 0 1px 0;margin-right:10px;float:right}.tui-shortcut{float:right}.tui-shadow,.tui-shadow-1{box-shadow:10px 10px #000!important}.tui-shadow-2{box-shadow:15px 15px #000}.tui-shadow-3{box-shadow:20px 20px #000}.tui-shadow-4{box-shadow:25px 25px #000}.tui-shadow-5{box-shadow:30px 30px #000}.tui-shadow-left,.tui-shadow-left-1{box-shadow:-10px 10px #000!important}.tui-shadow-left-2{box-shadow:-15px 15px #000!important}.tui-shadow-left-3{box-shadow:-20px 20px #000!important}.tui-shadow-left-4{box-shadow:-25px 25px #000!important}.tui-shadow-left-5{box-shadow:-30px 30px #000!important}.tui-no-shadow{box-shadow:none!important}.tui-bg-blue-white{background-image:url(images/bg-blue-white.png);background-repeat:repeat}.tui-bg-blue-black{background-image:url(images/bg-blue-black.png);background-repeat:repeat}.tui-bg-green-white{background-image:url(images/bg-green-white.png);background-repeat:repeat}.tui-bg-green-black{background-image:url(images/bg-green-black.png);background-repeat:repeat}.tui-bg-cyan-white{background-image:url(images/bg-cyan-white.png);background-repeat:repeat}.tui-bg-cyan-black{background-image:url(images/bg-cyan-black.png);background-repeat:repeat}.tui-bg-red-white{background-image:url(images/bg-red-white.png);background-repeat:repeat}.tui-bg-red-black{background-image:url(images/bg-red-black.png);background-repeat:repeat}.tui-bg-purple-white{background-image:url(images/bg-purple-white.png);background-repeat:repeat}.tui-bg-purple-black{background-image:url(images/bg-purple-black.png);background-repeat:repeat}.tui-bg-yellow-white{background-image:url(images/bg-yellow-white.png);background-repeat:repeat}.tui-bg-yellow-black{background-image:url(images/bg-yellow-black.png);background-repeat:repeat}.tui-bg-orange-white{background-image:url(images/bg-orange-white.png);background-repeat:repeat}.tui-bg-orange-black{background-image:url(images/bg-orange-black.png);background-repeat:repeat}.tui-border-solid{border-style:solid!important;border-width:2px!important}.tui-border-dashed{border-style:dashed!important;border-width:2px!important}.tui-border-dotted{border-style:dotted!important;border-width:2px!important}.tui-border-double{border-style:double!important;border-width:6px!important}.container{margin:0 auto;max-width:1280px;width:90%}@media only screen and (min-width :601px){.container{width:85%}}@media only screen and (min-width :993px){.container{width:70%}}.col .row{margin-left:-.75rem;margin-right:-.75rem}.section{padding-top:1rem;padding-bottom:1rem}.section.no-pad{padding:0}.section.no-pad-bot{padding-bottom:0}.section.no-pad-top{padding-top:0}.row{margin-left:auto;margin-right:auto;margin-bottom:20px}.row:after{content:"";display:table;clear:both}.row .col{float:left;box-sizing:border-box;padding:0 .75rem;min-height:1px}.row .col[class*=pull-],.row .col[class*=push-]{position:relative}.row .col.s1{width:8.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.s2{width:16.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.s3{width:25%;margin-left:auto;left:auto;right:auto}.row .col.s4{width:33.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.s5{width:41.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.s6{width:50%;margin-left:auto;left:auto;right:auto}.row .col.s7{width:58.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.s8{width:66.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.s9{width:75%;margin-left:auto;left:auto;right:auto}.row .col.s10{width:83.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.s11{width:91.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.s12{width:100%;margin-left:auto;left:auto;right:auto}.row .col.offset-s1{margin-left:8.3333333333%}.row .col.pull-s1{right:8.3333333333%}.row .col.push-s1{left:8.3333333333%}.row .col.offset-s2{margin-left:16.6666666667%}.row .col.pull-s2{right:16.6666666667%}.row .col.push-s2{left:16.6666666667%}.row .col.offset-s3{margin-left:25%}.row .col.pull-s3{right:25%}.row .col.push-s3{left:25%}.row .col.offset-s4{margin-left:33.3333333333%}.row .col.pull-s4{right:33.3333333333%}.row .col.push-s4{left:33.3333333333%}.row .col.offset-s5{margin-left:41.6666666667%}.row .col.pull-s5{right:41.6666666667%}.row .col.push-s5{left:41.6666666667%}.row .col.offset-s6{margin-left:50%}.row .col.pull-s6{right:50%}.row .col.push-s6{left:50%}.row .col.offset-s7{margin-left:58.3333333333%}.row .col.pull-s7{right:58.3333333333%}.row .col.push-s7{left:58.3333333333%}.row .col.offset-s8{margin-left:66.6666666667%}.row .col.pull-s8{right:66.6666666667%}.row .col.push-s8{left:66.6666666667%}.row .col.offset-s9{margin-left:75%}.row .col.pull-s9{right:75%}.row .col.push-s9{left:75%}.row .col.offset-s10{margin-left:83.3333333333%}.row .col.pull-s10{right:83.3333333333%}.row .col.push-s10{left:83.3333333333%}.row .col.offset-s11{margin-left:91.6666666667%}.row .col.pull-s11{right:91.6666666667%}.row .col.push-s11{left:91.6666666667%}.row .col.offset-s12{margin-left:100%}.row .col.pull-s12{right:100%}.row .col.push-s12{left:100%}@media only screen and (min-width :601px){.row .col.m1{width:8.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.m2{width:16.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.m3{width:25%;margin-left:auto;left:auto;right:auto}.row .col.m4{width:33.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.m5{width:41.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.m6{width:50%;margin-left:auto;left:auto;right:auto}.row .col.m7{width:58.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.m8{width:66.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.m9{width:75%;margin-left:auto;left:auto;right:auto}.row .col.m10{width:83.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.m11{width:91.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.m12{width:100%;margin-left:auto;left:auto;right:auto}.row .col.offset-m1{margin-left:8.3333333333%}.row .col.pull-m1{right:8.3333333333%}.row .col.push-m1{left:8.3333333333%}.row .col.offset-m2{margin-left:16.6666666667%}.row .col.pull-m2{right:16.6666666667%}.row .col.push-m2{left:16.6666666667%}.row .col.offset-m3{margin-left:25%}.row .col.pull-m3{right:25%}.row .col.push-m3{left:25%}.row .col.offset-m4{margin-left:33.3333333333%}.row .col.pull-m4{right:33.3333333333%}.row .col.push-m4{left:33.3333333333%}.row .col.offset-m5{margin-left:41.6666666667%}.row .col.pull-m5{right:41.6666666667%}.row .col.push-m5{left:41.6666666667%}.row .col.offset-m6{margin-left:50%}.row .col.pull-m6{right:50%}.row .col.push-m6{left:50%}.row .col.offset-m7{margin-left:58.3333333333%}.row .col.pull-m7{right:58.3333333333%}.row .col.push-m7{left:58.3333333333%}.row .col.offset-m8{margin-left:66.6666666667%}.row .col.pull-m8{right:66.6666666667%}.row .col.push-m8{left:66.6666666667%}.row .col.offset-m9{margin-left:75%}.row .col.pull-m9{right:75%}.row .col.push-m9{left:75%}.row .col.offset-m10{margin-left:83.3333333333%}.row .col.pull-m10{right:83.3333333333%}.row .col.push-m10{left:83.3333333333%}.row .col.offset-m11{margin-left:91.6666666667%}.row .col.pull-m11{right:91.6666666667%}.row .col.push-m11{left:91.6666666667%}.row .col.offset-m12{margin-left:100%}.row .col.pull-m12{right:100%}.row .col.push-m12{left:100%}}@media only screen and (min-width :993px){.row .col.l1{width:8.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.l2{width:16.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.l3{width:25%;margin-left:auto;left:auto;right:auto}.row .col.l4{width:33.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.l5{width:41.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.l6{width:50%;margin-left:auto;left:auto;right:auto}.row .col.l7{width:58.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.l8{width:66.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.l9{width:75%;margin-left:auto;left:auto;right:auto}.row .col.l10{width:83.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.l11{width:91.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.l12{width:100%;margin-left:auto;left:auto;right:auto}.row .col.offset-l1{margin-left:8.3333333333%}.row .col.pull-l1{right:8.3333333333%}.row .col.push-l1{left:8.3333333333%}.row .col.offset-l2{margin-left:16.6666666667%}.row .col.pull-l2{right:16.6666666667%}.row .col.push-l2{left:16.6666666667%}.row .col.offset-l3{margin-left:25%}.row .col.pull-l3{right:25%}.row .col.push-l3{left:25%}.row .col.offset-l4{margin-left:33.3333333333%}.row .col.pull-l4{right:33.3333333333%}.row .col.push-l4{left:33.3333333333%}.row .col.offset-l5{margin-left:41.6666666667%}.row .col.pull-l5{right:41.6666666667%}.row .col.push-l5{left:41.6666666667%}.row .col.offset-l6{margin-left:50%}.row .col.pull-l6{right:50%}.row .col.push-l6{left:50%}.row .col.offset-l7{margin-left:58.3333333333%}.row .col.pull-l7{right:58.3333333333%}.row .col.push-l7{left:58.3333333333%}.row .col.offset-l8{margin-left:66.6666666667%}.row .col.pull-l8{right:66.6666666667%}.row .col.push-l8{left:66.6666666667%}.row .col.offset-l9{margin-left:75%}.row .col.pull-l9{right:75%}.row .col.push-l9{left:75%}.row .col.offset-l10{margin-left:83.3333333333%}.row .col.pull-l10{right:83.3333333333%}.row .col.push-l10{left:83.3333333333%}.row .col.offset-l11{margin-left:91.6666666667%}.row .col.pull-l11{right:91.6666666667%}.row .col.push-l11{left:91.6666666667%}.row .col.offset-l12{margin-left:100%}.row .col.pull-l12{right:100%}.row .col.push-l12{left:100%}}@media only screen and (min-width :1201px){.row .col.xl1{width:8.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.xl2{width:16.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.xl3{width:25%;margin-left:auto;left:auto;right:auto}.row .col.xl4{width:33.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.xl5{width:41.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.xl6{width:50%;margin-left:auto;left:auto;right:auto}.row .col.xl7{width:58.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.xl8{width:66.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.xl9{width:75%;margin-left:auto;left:auto;right:auto}.row .col.xl10{width:83.3333333333%;margin-left:auto;left:auto;right:auto}.row .col.xl11{width:91.6666666667%;margin-left:auto;left:auto;right:auto}.row .col.xl12{width:100%;margin-left:auto;left:auto;right:auto}.row .col.offset-xl1{margin-left:8.3333333333%}.row .col.pull-xl1{right:8.3333333333%}.row .col.push-xl1{left:8.3333333333%}.row .col.offset-xl2{margin-left:16.6666666667%}.row .col.pull-xl2{right:16.6666666667%}.row .col.push-xl2{left:16.6666666667%}.row .col.offset-xl3{margin-left:25%}.row .col.pull-xl3{right:25%}.row .col.push-xl3{left:25%}.row .col.offset-xl4{margin-left:33.3333333333%}.row .col.pull-xl4{right:33.3333333333%}.row .col.push-xl4{left:33.3333333333%}.row .col.offset-xl5{margin-left:41.6666666667%}.row .col.pull-xl5{right:41.6666666667%}.row .col.push-xl5{left:41.6666666667%}.row .col.offset-xl6{margin-left:50%}.row .col.pull-xl6{right:50%}.row .col.push-xl6{left:50%}.row .col.offset-xl7{margin-left:58.3333333333%}.row .col.pull-xl7{right:58.3333333333%}.row .col.push-xl7{left:58.3333333333%}.row .col.offset-xl8{margin-left:66.6666666667%}.row .col.pull-xl8{right:66.6666666667%}.row .col.push-xl8{left:66.6666666667%}.row .col.offset-xl9{margin-left:75%}.row .col.pull-xl9{right:75%}.row .col.push-xl9{left:75%}.row .col.offset-xl10{margin-left:83.3333333333%}.row .col.pull-xl10{right:83.3333333333%}.row .col.push-xl10{left:83.3333333333%}.row .col.offset-xl11{margin-left:91.6666666667%}.row .col.pull-xl11{right:91.6666666667%}.row .col.push-xl11{left:91.6666666667%}.row .col.offset-xl12{margin-left:100%}.row .col.pull-xl12{right:100%}.row .col.push-xl12{left:100%}}.tui-modal{position:absolute;left:0;right:0;top:100px;z-index:101;display:none}.tui-modal.active{display:block!important}.tui-overlap{position:absolute;top:0;left:0;right:0;bottom:0;z-index:100;display:none}.tui-overlap.active{display:block!important}.tui-chart-vertical{position:relative;background-color:#000}.tui-chart-horizontal{position:relative;background-color:#000}.tui-chart-vertical .tui-chart-display{display:flex;position:absolute;top:0;left:50px;right:0;bottom:30px;align-items:flex-end;border-bottom:2px solid #fff;border-left:2px solid #fff}.tui-chart-vertical .tui-chart-display.no-x-axis{bottom:0}.tui-chart-vertical .tui-chart-display.no-y-axis{left:0}.tui-chart-horizontal .tui-chart-display{display:flex;position:absolute;flex-direction:column;top:0;left:50px;right:0;bottom:30px;align-items:stretch;border-bottom:2px solid #fff;border-left:2px solid #fff}.tui-chart-horizontal .tui-chart-display.no-x-axis{bottom:0}.tui-chart-horizontal .tui-chart-display.no-y-axis{left:0}.tui-chart-x-axis{display:flex;position:absolute;height:30px;left:50px;right:0;bottom:0;line-height:30px}.tui-chart-y-axis{display:flex;flex-direction:column;position:absolute;top:0;left:0;bottom:30px;width:50px}.tui-chart-vertical .tui-chart-x-axis .tui-chart-legend{flex:0 1 100%;text-align:center}.tui-chart-vertical .tui-chart-y-axis .tui-chart-legend{flex:1;text-align:right;padding-right:2px;display:flex;align-items:flex-start;justify-content:flex-end}.tui-chart-horizontal .tui-chart-x-axis .tui-chart-legend{flex:0 1 100%;text-align:right}.tui-chart-horizontal .tui-chart-y-axis .tui-chart-legend{flex:1;text-align:right;padding-right:2px;display:flex;align-items:center;justify-content:flex-end}.tui-chart-vertical .tui-chart-display .tui-chart-value{flex:0 1 100%;text-align:center;overflow:hidden}.tui-chart-horizontal .tui-chart-display .tui-chart-value{flex:1;text-align:right;display:flex;align-items:center;align-content:flex-start;justify-content:flex-end;overflow:hidden} \ No newline at end of file diff --git a/web/static/vendor/tuicss/tuicss.min.js b/web/static/vendor/tuicss/tuicss.min.js new file mode 100644 index 0000000..84c6325 --- /dev/null +++ b/web/static/vendor/tuicss/tuicss.min.js @@ -0,0 +1 @@ +function domReady(t){document.addEventListener("DOMContentLoaded",t),"interactive"!==document.readyState&&"complete"!==document.readyState||t()}function tabsController(){const t=document.getElementsByClassName("tui-tab");if(!t.length)return;for(const e of t)e.addEventListener("click",function(e){if(e.target.classList.contains("disabled"))return;for(const e of t)e.classList.remove("active");const o=document.getElementsByClassName("tui-tab-content");if(!o)throw"No tab content elements found.";for(const t of o)t.style.display="none";const n=e.target.getAttribute("data-tab-content");if(n){const t=document.getElementById(n);if(!t)throw'No tab content element with id "'+n+'" found.';t.style.display="block"}e.target.classList.add("active")});const e=document.querySelector(".tui-tab.active");e?e.click():t[0].click()}function datetimeController(){const t=document.getElementsByClassName("tui-datetime");function e(){for(const e of t){if(null===e)continue;let t=e.getAttribute("data-format");const o=new Date,n=(o.getMonth()+1).toString().padStart(2,"0"),a=o.getDate().toString().padStart(2,"0"),c=(o.getDay()+1).toString().padStart(2,"0"),s=o.getFullYear().toString(),i=o.getHours().toString().padStart(2,"0"),l=(parseInt(i)+24)%"12"||"12",r=o.getMinutes().toString().padStart(2,"0"),d=o.getSeconds().toString().padStart(2,"0"),u=parseInt(i)>=12?"PM":"AM";t=(t=(t=(t=(t=(t=(t=(t=(t=t.replace("M",n)).replace("d",a)).replace("e",c)).replace("y",s)).replace("H",i)).replace("h",l)).replace("m",r)).replace("s",d)).replace("a",u),e.innerHTML=t}}t.length&&(e(),setTimeout(()=>{setInterval(e,1e3)},1e3-(new Date).getMilliseconds()))}function sidenavController(){const t=document.querySelector(".tui-sidenav-button");t&&t.addEventListener("click",()=>{const t=document.querySelector(".tui-sidenav");if(!t)throw"No sidenav element found.";t.classList.contains("active")?t.classList.remove("active"):t.classList.add("active")})}function modalController(){const t=document.querySelector(".tui-overlap");if(!t)return;const e=document.getElementsByClassName("tui-modal-button");for(const o of e)o.addEventListener("click",e=>{t.classList.add("active");const o=e.target.getAttribute("data-modal");if(!o)throw"Modal close button data-modal attribute is empty or not set.";{const t=document.getElementById(o);if(!t)throw'No modal element with id of "'+o+'" found.';t.classList.add("active")}});const o=document.getElementsByClassName("tui-modal-close-button");if(e.length>0&&!o.length)throw"No modal close buttons found.";for(const e of o)e.addEventListener("click",e=>{t.classList.remove("active");const o=e.target.getAttribute("data-modal");if(!o)throw"Modal close button data-modal attribute is empty or not set.";{const t=document.getElementById(o);if(!t)throw'No modal element with id of "'+o+'" found.';t.classList.remove("active")}})}domReady(function(){tabsController(),datetimeController(),sidenavController(),modalController()}); \ No newline at end of file