Get to know the friendly face of ProgTest ๐. This style is inspired by the website of FIT CTU.
ProgTest FIT Style (FIXED after ProgTest update) by 316filip
Details
Author316filip
LicenseNo License
Categoryprogtest.fit.cvut.cz
Created
Updated
Size19 kB
Statistics
Learn how we calculate statistics in the FAQ.
Failed to fetch stats.
Description
Notes
Userstyle doesn't have notes.Source code
Source code has over 10K characters, so we truncated it. You can inspect the full source code on install link./* ==UserStyle==
@name ProgTest FIT Style (FIXED after ProgTest update)
@namespace github.com/openstyles/stylus
@version 2.1.2
@description Get to know the friendly face of ProgTest ๐. This style is inspired by the website of FIT CTU.
@author 316filip
==/UserStyle== */
@-moz-document domain("progtest.fit.cvut.cz") {
/* The code may seem a bit unorganized. This is because ProgTest is very unorganized. I'll never be able to unsee the frontend source code... */
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');
html {
min-height: 100vh;
background-color: white;
}
body {
min-height: calc(100vh - 2rem);
background-color: white;
padding-bottom: 2rem;
font-size: .9rem;
font-family: "Roboto",sans-serif !important;
}
table {
border-collapse: collapse;
}
tr, input {
font-family: "Roboto",sans-serif !important;
font-size: inherit !important;
}
center {
padding: 0 2rem 0 2rem;
}
center > * {
width: 100% !important;
}
center > img {
width: auto !important;
}
br {
display: none;
}
a:hover {
color: #f0ab00;
}
/* Login page */
.insBox.newBox {
width: auto !important;
padding: 1.5rem;
background-color: #e8f5fc;
position: fixed;
top: 50%;
left: 50%;
translate: -50% -50%;
}
.insBox.newBox:after {
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-width: 20px 0 0 20px;
border-color: #fff #fff #fff #bdd9ed;
position: absolute;
right: 0;
top: 0;
}
.bLink, .bUpd {
width: max-content !important;
background-color: #fceecc !important;
border: 2px solid #f0ab00;
margin: 0;
padding: 0 !important;
transition-duration: .1s;
}
.bLink > div {
display: flex !important;
}
.bLink > div > a, .bUpd > input {
padding: .5rem 1rem !important;
}
.bLink:hover, .bUpd:hover {
background-color: #0070ba !important;
border: 2px solid #0070ba;
color: white !important;
cursor: pointer !important;
}
.bLink > div, .bUpd > input {
background-color: transparent !important;
border: none !important;
cursor: pointer !important;
}
.bLink > div > a {
color: inherit !important;
}
input, select {
padding: .25rem .5rem !important;
}
input[type=submit] {
color: inherit !important;
}
input.err {
border: 1px solid #f0ab00 !important;
background-color: #F03A47 !important;
}
input.stdDis {
border: 2px solid lightgray !important;
background-color: white !important;
}
input[type=file].std {
border: 2px solid #bdd9ed !important;
background-color: transparent !important;
}
input[type=file].std::file-selector-button {
border: none;
background-color: #fceecc;
padding: .25rem;
}
input[type=file].std:hover {
cursor: pointer !important;
}
select.std {
border: 2px solid #bdd9ed !important;
border-radius: 0;
width: 100%;
}
#shib1 > td {
padding: .5rem 0 !important;
}
#shib2 > td {
padding: 0 0 .5rem 0 !important;
}
/* Index page */
.newBox {
border: none;
box-shadow: none;
}
div.navLink {
position: static;
width: 100%;
background-image: none;
padding: 1rem 0;
background-color: #fceecc;
border: none;
}
div.navLink > div:first-child {
padding: 0 0 0 2rem;
}
div.navLink > div:last-child {
padding: 0 2rem 0 0;
}
div.navLink a, div.navLink b {
font-weight: normal;
font-size: 14px;
line-height: 20px;
}
div.navLink a:hover {
color: #0070ba;
}
details.menuList {
margin: 2rem 2rem 0 2rem;
}
@import url('https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@0,200..900;1,200..900&display=swap');
details > summary {
position: relative;
padding-left: 1.5rem;
cursor: pointer;
user-select: none;
}
details > summary > b {
font-weight: 500;
}
summary::before {
content: "";
background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"/></svg>');
width: 1rem;
height: 1rem;
transform: translateY(-50%);
position: absolute;
top: 50%;
left: 0;
}
details[open] > summary::before {
transform: translateY(-50%) rotate(180deg);
}
.bigButLink, .bigButDis {
margin: 0;
padding: .25rem 0 !important;
transition-duration: .1s;
}
.bigButLink {
background-color: #e8f5fc !important;
border: 2px solid #bfdbee;
}
.bigButLink > div, .bigButLink > div > a {
height: 100%;
}
.bigButDis {
background-color: white !important;
border: 2px solid #e8f5fc;
}
.bigButLink:hover {
background-color: #f0ab00 !important;
border: 2px solid #f0ab00;
color: white;
}
.bigButLink > div, .bigButDis > div {
background-color: transparent !important;
border: none !important;
}
.bigButLink > div > a {
color: inherit !important;
}
.bigButLink > div > a span {
font-weight: 500;
}
div.bigButDis > div > b > div > span {
color: #bfdbee;
}
details.menuList > div > div > div:last-child {
display: grid;
align-items: center;
gap: .25rem;
}
details.menuList > div > div > div:first-child {
padding: 0;
display: flex;
position: relative;
}
details.menuList > div div:first-child > .bigButLink > div > a:after {
content: "โ";
font-family: monospace;
font-size: xx-large;
position: absolute;
bottom: 0;
right: .5rem;
}
details.menuList > div > div {
height: 100%;
}
details.menuList > div {
margin: 0;
}
.menuList {
font-weight: 500;
}
/* Course page */
.topLayout, table.newBox.listLayout {
margin-top: 2rem;
width: 100%;
}
table.topLayout, .topLayout table, .newBox table#maintable, table.newBox.listLayout {
position: relative;
border: none;
}
table.topLayout::after, .topLayout table::after, .newBox table#maintable::after, table.newBox.listLayout::after {
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-width: 20px 0 0 20px;
border-color: #fff #fff #fff #bdd9ed;
position: absolute;
right: 0;
top: 0;
}
table.topLayout tr, .topLayout table tr, .newBox table#maintable tr, table.newBox.listLayout tr {
border: none !important;
padding: 0;
background-color: #e8f5fc;
}
table.topLayout td, .topLayout table td, .newBox table#maintable td, table.newBox.listLayout td {
border: none !important;
padding: 0;
background-color: #e8f5fc;
}
table.topLayout tbody td, .topLayout table tbody td, table.newBox.listLayout tbody td {
padding: 1rem;
}
table.topLayout .lBox .but1 {
display: none !important;
}
table.topLayout .mBox * {
display: block !important;
}
table.topLayout .rBox .but1, .topLayout table .rBox .but1 {
margin-top: -.25rem;
}
table.topLayout thead tr:first-child td .hdrDis, .topLayout table thead tr:first-child td .hdrDis {
padding-top: 2rem !important;
}
table.topLayout thead tr td:first-child .hdrDis {
padding-left: 2rem !important;
}
table.topLayout thead tr td:last-child .hdrDis {
padding-right: 2rem !important;
}
table.topLayout thead tr:last-child td .hdrDis {
padding-bottom: 0 !important;
}
.topLayout tbody > tr:first-child > td, #maintable tbody > tr:first-child > td, table.newBox.listLayout tbody > tr:first-child > td, table.newBox.listLayout thead > tr:first-child > td {
padding-top: 2rem !important;
}
.topLayout tbody > tr > td:first-child, #maintable tbody > tr > td:first-child, table.newBox.listLayout tbody > tr > td:first-child, table.newBox.listLayout thead > tr > td:first-child {
padding-left: 2rem !important;
}
.topLayout tbody > tr > td:last-child, #maintable tbody > tr > td:last-child, table.newBox.listLayout tbody > tr > td:last-child, table.newBox.listLayout thead > tr > td:last-child {
padding-right: 2rem !important;
}
.topLayout tbody > tr:last-child > td, #maintable tbody > tr:last-child > td, table.newBox.listLayout tbody > tr:last-child > td {
padding-bottom: 2rem !important;
}
table.newBox.listLayout thead > tr:last-child > td {
margin-bottom: 0;
}
table.newBox.listLayout thead > tr:last-child > td > .but1 > .hdrDis {
padding: 0;
}
.menuListDis {
color: #5B5B66;
}
.menuListEarly {
color: #00A676;
}
.menuListLate {
color: #F03A47;
}
body > table:not(.topLayout):not(#main):not(.header):not(#maintable) tr {
background-color: #fceecc;
box-shadow: 0px 7px 8px 0px rgba(29,29,27,.18);
}
.topLayout table tr {
background-image: none !important;
}
body > table:not(.topLayout):not(#main):not(.header):not(#maintable) tr td {
background-color: transparent;
padding: 2rem 4rem;
color: black !important;
}
body > table:not(.topLayout):not(#main):not(.header):not(#maintable) tr td a {
color: black !important;
}
body > ta...