--- --- /* ################################################################ Author: Carlos Alvarez URL: http://alvarez.is Project Name: SOLID - Bootstrap 3 Theme Version: 1.0 URL: http://alvarez.is ################################################################# */ $color_bg_dark: #222; $color_thu_purple: #82318E; $color_thu_purple_dark: #C353D3; $color_light_grey: #888; $color_grey: #555; $color_grey_dark: #aaa; $color_primary: $color_thu_purple; $color_primary_dark: $color_thu_purple_dark; $color_primary_light: #d8aff6; $color_primary_rgb: 92,48,125; $color_secondary: #384452; $color_secondary_dark: #ddd; $color_link: #088acb; $color_link_dark: #6793cf; $color_link_hover: #62bbe7; $color_footer_heading: #ffffff; $color_footer_content: #bfc9d3; $color_navbar_bg: #d3d3d3; $font_local: 'Hiragino Sans GB', 'Source Han Sans SC', 'Source Han Sans CN', 'Noto Sans CJK SC', 'WenQuanYi Zen Hei', 'WenQuanYi Micro Hei', '微软雅黑', sans-serif; $font_default: 'Lato', #{$font_local}; $color_row_hover: #e0f3fc; $color_row_hover_dark: #325475; @mixin dark { @media (prefers-color-scheme: dark) { @content } } @import "Lato", "structure", "bootstrap-mod", "syntax-highlighting"; :root { color-scheme: light dark; } #thu-alert { padding-left: 50px; position: relative; .glyphicon { font-size: 30px; left: 10px; top: 20px; position: absolute; } } html { height: 100%; box-sizing: border-box; } body { position: relative; min-height: 100%; @include dark{ background: $color_bg_dark; } } #headerwrap { padding-top: 40px; padding-bottom: 0px; h1 { color: $color_primary ; margin-bottom: 15px; } h3, h5 { color: $color_primary ; font-weight: 400; margin-top: 10px; } .img-responsive { margin: 0 auto; } } .status-fail, .status-failed, .status-paused { background-color: #fff4e3; @include dark{ background-color: #524841; } } .status-syncing { background-color: #e3fffd; @include dark{ background-color: #254059; } } .sk-wave .sk-rect { @include dark{ background-color: $color_secondary_dark; } } #mirrors { tbody { tr:hover { background-color: $color_row_hover; @include dark{ background-color: $color_row_hover_dark; } } td { padding: 4px 8px; border-top: none; } font-size: 12pt; .label.label-new { padding: .1em .2em; vertical-align: 40%; text-shadow: 1px 1px #888; background-color: #3aa0e6; } .label.label-status { vertical-align: 20%; margin-left: .5em; } .fa-question-circle { color: #234961; @include dark{ color: #6e9cdb; } } } #news { li > a { color: $color_secondary; @include dark{ color: $color_secondary_dark; } } } #download-link { margin-bottom: 1em; } } #isoModal { .nav-tabs { margin-bottom: .5em; } } #status-page { .thead { font-weight: bold; } #mirror-list { tr:hover { background-color: $color_row_hover; @include dark{ background-color: $color_row_hover_dark; } } } } #help-page { margin-top: 40px; margin-bottom: 40px; } #news-page { article { .meta { color: $color_grey; @include dark{ color: $color_grey_dark; } } } .fa-user { font-family: #{$font_default}, 'FontAwesome'; } } /* Footer */ #footerwrap { color: $color_footer_content; margin-top: 100px; padding-top: 60px; padding-bottom: 60px; background: $color_secondary; p { color: $color_footer_content; } h4 { color: $color_footer_heading; } i, i:hover, a, a:hover { color: $color_footer_content; } } #footerwrap.tuna-foot-1 { position: absolute; left: 0; bottom: 0; right: 0; } #footerwrap.tuna-foot-2 { visibility: hidden; } .spacing { margin-top: 40px; margin-bottom: 40px; } .clickable { cursor: pointer; } .vbottom { display: inline-block; vertical-align: bottom; float: none; } .text-right-xs { text-align: right; } .text-left-xs { text-align: left; } /* Small devices (tablets, 768px and up) */ @media (min-width: 768px) { .text-right-sm { text-align: right; } .text-left-sm { text-align: left; } } /* Medium devices (desktops, 992px and up) */ @media (min-width: 992px) { .text-right-md { text-align: right; } .text-left-md { text-align: left; } .table.flat-md { td,tr,th { float: none; } td:before, th:before, td:after, th:after, tr:before, tr:after { content: none; } td:nth-child(odd) { display: none; } } } /* Large devices (large desktops, 1200px and up) */ @media (min-width: 1200px) { .text-right-lg { text-align: right; } .text-left-lg { text-align: left; } } .table.flat-md { word-break: break-all; @media (max-width: 992px) { display: block; td,th,tr,tbody,thead { display: block; } td,th { border-style: none; } tr { border-bottom: 1px solid #ddd; } tr:first-of-type { border-top: 1px solid #ddd; } td,th[class*="col-"] { float: left; position: relative; } td:nth-child(odd) { text-align: right; font-weight: bold; } } } #search { float: right; line-height: 18px; padding: 8px; border: 1px solid #e3e3e3; margin-top: 20px; margin-right: 10px; max-width: 240px; height: 30px; font-size: 16px; background: transparent; } #mirror-title { float: left; } #upgrade-mask{ color: black; p { color: inherit; } } .not-found { height: 600px; display: flex; flex-direction: column; justify-content: center; align-items: center; position: relative; } .not-found-bg { position: absolute; left: 0; right: 0; bottom: 0; top: 0; z-index: -1; opacity: .5; filter: grayscale(0.2); background-repeat: no-repeat; background-position: center; background-image: url(/static/img/missing.png); background-image: -webkit-image-set(url("/static/img/missing.png") 1x, url("/static/img/missing@2x.png") 2x, url("/static/img/missing@3x.png") 3x, url("/static/img/missing@4x.png") 4x); background-image: image-set(url("/static/img/missing.png") 1x, url("/static/img/missing@2x.png") 2x, url("/static/img/missing@3x.png") 3x, url("/static/img/missing@4x.png") 4x); @include dark { opacity: 1; filter: none; background-image: url(/static/img/missing-dark.png); background-image: -webkit-image-set(url("/static/img/missing-dark.png") 1x, url("/static/img/missing-dark@2x.png") 2x, url("/static/img/missing-dark@3x.png") 3x, url("/static/img/missing-dark@4x.png") 4x); background-image: image-set(url("/static/img/missing-dark.png") 1x, url("/static/img/missing-dark@2x.png") 2x, url("/static/img/missing-dark@3x.png") 3x, url("/static/img/missing-dark@4x.png") 4x); } } .nonthu .not-found-bg { background-image: none; } .not-found-hint { font-weight: bold; font-size: 48px; margin-bottom: 40px; padding: 0 20px; } .not-found-link { display: inline-block; font-size: 18px; margin: 0 20px; } .not-found-text { max-width: 450px; box-sizing: border-box; padding: 0 40px; margin-bottom: 80px; font-size: 16px; opacity: .7; line-height: 24px; } .not-found-code { font-size: 12px; opacity: .54; font-weight: normal; font-style: italic; } .nonthu .thuhidden{ display: none; } // Scrolling columns in status page .tuna-roll { position: relative; overflow: hidden; > div { position: absolute; left: 0; right: 0; bottom: 0; top: 0; animation-timing-function: ease; animation-duration: 1s; animation-iteration-count: 1; } @keyframes tuna-roll-enter { 0% { transform: translateY(100%); } 100% { transform: none; } } @keyframes tuna-roll-leave { 0% { transform: none; } 100% { transform: translateY(-100%); } } } {% for attrb in (1..2) %} @for $i from 0 to 7 { {% cycle "g1": "[data-tuna-roll-cur", ".row[data-tuna-roll-freeze" %}="#{$i}"] { .tuna-roll > div { animation-name: tuna-roll-leave; transform: translateY(100%); } .tuna-roll > div[data-tuna-roll-seq~="#{$i}"] { animation-name: tuna-roll-enter; transform: none; } } } {% cycle "g2": "[data-tuna-roll-cur", ".row[data-tuna-roll-freeze" %}="-1"] { .tuna-roll > div { transform: translateY(100%); animation-name: tuna-roll-leave; animation-duration: 0s; } .tuna-roll > div[data-tuna-roll-seq~="0"] { transform: none; animation-name: tuna-roll-enter; animation-duration: 0s; } } {% endfor %}