bullframe.css
Version:
Solid, fluid, IE-friendly Sass (SCSS) framework
1,116 lines (939 loc) • 20.8 kB
CSS
/*! bullframe.css v3.7.0 | MIT License | https://github.com/marcop135/bullframe.css */
/* custom build: bullframe-utilities */
.bf-container,
.bf-container--fluid {
box-sizing: content-box;
display: block;
margin-right: auto;
margin-left: auto;
padding-left: 15px;
padding-left: 1.5rem;
padding-right: 15px;
padding-right: 1.5rem;
}
.bf-container:before, .bf-container:after,
.bf-container--fluid:before,
.bf-container--fluid:after {
display: table;
content: ' ';
}
.bf-container:after,
.bf-container--fluid:after {
clear: both;
}
.bf-container {
max-width: 1140px;
max-width: 114rem;
}
.bf-row {
display: block;
margin-left: -15px;
margin-left: -1.5rem;
margin-right: -15px;
margin-right: -1.5rem;
}
.bf-row:before, .bf-row:after {
content: ' ';
display: table;
}
.bf-row:after {
clear: both;
}
[class^='bf-col-'] {
float: left;
position: relative;
min-height: 1px;
padding-left: 15px;
padding-left: 1.5rem;
padding-right: 15px;
padding-right: 1.5rem;
}
.bf-no-gutters {
margin-right: 0;
margin-left: 0;
}
.bf-no-gutters > [class^='bf-col'] {
padding-right: 0;
padding-left: 0;
}
.bf-col-12 {
width: 100%;
}
.bf-col-11 {
width: 91.66666666666666%;
}
.bf-col-10 {
width: 83.33333333333334%;
}
.bf-col-9 {
width: 75%;
}
.bf-col-8 {
width: 66.66666666666666%;
}
.bf-col-7 {
width: 58.333333333333336%;
}
.bf-col-6 {
width: 50%;
}
.bf-col-5 {
width: 41.66666666666667%;
}
.bf-col-4 {
width: 33.33333333333333%;
}
.bf-col-3 {
width: 25%;
}
.bf-col-2 {
width: 16.666666666666664%;
}
.bf-col-1 {
width: 8.3333%;
}
@media (max-width: 575px) {
.bf-container--break-xs .bf-row {
margin-left: 0;
margin-right: 0;
}
.bf-container--break-xs [class^='bf-col'] {
width: 100%;
float: none;
margin-left: 0;
padding-left: 0;
padding-right: 0;
}
}
@media (max-width: 767px) {
.bf-container--break-md .bf-row {
margin-left: 0;
margin-right: 0;
}
.bf-container--break-md [class^='bf-col'] {
width: 100%;
float: none;
margin-left: 0;
padding-left: 0;
padding-right: 0;
}
}
@media (max-width: 991px) {
.bf-container--break-lg .bf-row {
margin-left: 0;
margin-right: 0;
}
.bf-container--break-lg [class^='bf-col'] {
width: 100%;
float: none;
margin-left: 0;
padding-left: 0;
padding-right: 0;
}
}
table td[class^='bf-col'],
table th[class^='bf-col'] {
position: static;
}
.bf-clearfix:before,
.bf-clearfix:after {
content: ' ';
display: table;
}
.bf-clearfix:after {
clear: both;
}
.bf-hide {
display: none ;
}
.bf-hidden {
display: none ;
visibility: hidden ;
}
.bf-text-hide {
font: 0/0 a ;
color: transparent ;
text-shadow: none ;
background-color: transparent ;
border: 0 ;
margin: 0 ;
padding: 0 ;
}
/*
// taken from https://github.com/h5bp/html5-boilerplate/blob/v7.3.0/dist/css/main.css
//
* Hide only visually, but have it available for screen readers:
* https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*
* 1. For long content, line feeds are not interpreted as spaces and small width
* causes content to wrap 1 word per line:
* https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
*/
.bf-sr-only {
border: 0 ;
clip: rect(0, 0, 0, 0) ;
height: 1px ;
margin: -1px ;
overflow: hidden ;
padding: 0 ;
position: absolute ;
white-space: nowrap ;
width: 1px ;
}
/*
// taken from https://github.com/h5bp/html5-boilerplate/blob/v7.3.0/dist/css/main.css
//
* Extends the .sr-only class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/
.bf-sr-only.focusable:active,
.bf-sr-only.focusable:focus {
clip: auto ;
height: auto ;
margin: 0 ;
overflow: visible ;
position: static ;
white-space: inherit ;
width: auto ;
}
.bf-invisible {
visibility: hidden ;
}
.bf-visible {
visibility: visible ;
}
.bf-display-block {
display: block ;
}
.bf-display-block-center {
display: block ;
margin-left: auto ;
margin-right: auto ;
text-align: center ;
}
.bf-display-inline {
display: inline ;
}
.bf-display-inline-block {
display: inline-block ;
}
.bf-display-flex {
display: -webkit-flex ;
display: flex ;
}
.bf-display-inline-flex {
display: -webkit-inline-flex ;
display: inline-flex ;
}
.bf-display-flex--justify-start {
-webkit-justify-content: flex-start ;
justify-content: flex-start ;
}
.bf-display-flex--justify-end {
-webkit-justify-content: flex-end ;
justify-content: flex-end ;
}
.bf-display-flex--justify-center {
-webkit-justify-content: center ;
justify-content: center ;
}
.bf-display-flex--wrap {
-webkit-flex-wrap: wrap ;
flex-wrap: wrap ;
}
.bf-display-flex--nowrap {
-webkit-flex-wrap: nowrap ;
flex-wrap: nowrap ;
}
.bf-float-left {
float: left ;
}
.bf-float-right {
float: right ;
}
.bf-position-fixed {
position: fixed ;
}
.bf-position-sticky {
position: -webkit-sticky ;
position: sticky ;
top: 0 ;
}
.bf-align-center-unknown {
position: relative ;
}
.bf-align-center-unknown--item {
position: absolute ;
top: 50% ;
left: 50% ;
-webkit-transform: translate(-50%, -50%) ;
transform: translate(-50%, -50%) ;
}
.bf-align-center-flex {
display: -webkit-flex;
display: flex;
-webkit-align-items: center;
align-items: center;
-webkit-justify-content: center;
justify-content: center;
}
.bf-width-25 {
width: 25% ;
}
.bf-width-33 {
width: 33.33333333333333% ;
}
.bf-width-50 {
width: 50% ;
}
.bf-width-75 {
width: 75% ;
}
.bf-width-100 {
width: 100% ;
}
.bf-width-auto {
width: auto ;
}
.bf-filter-invert {
-webkit-filter: invert(100%) ;
filter: invert(100%) ;
}
.bf-filter-dim-images {
-webkit-filter: brightness(0.8) contrast(1.2);
filter: brightness(0.8) contrast(1.2);
}
.bf-filter-grayscale {
-webkit-filter: grayscale(1) ;
filter: grayscale(1) ;
}
.bf-filter-blur {
-webkit-filter: blur(0.3rem) ;
filter: blur(0.3rem) ;
}
.bf-filter-none {
-webkit-filter: none ;
filter: none ;
}
.bf-z-index-1 {
z-index: 1;
}
.bf-z-index-2 {
z-index: 2;
}
.bf-z-index-3 {
z-index: 3;
}
.bf-z-index-4 {
z-index: 4;
}
.bf-z-index-5 {
z-index: 5;
}
.bf-z-index-6 {
z-index: 6;
}
.bf-z-index-7 {
z-index: 7;
}
.bf-z-index-8 {
z-index: 8;
}
.bf-z-index-9 {
z-index: 9;
}
.bf-z-index-10 {
z-index: 10;
}
.bf-z-index-20 {
z-index: 20;
}
.bf-z-index-30 {
z-index: 30;
}
.bf-z-index-40 {
z-index: 40;
}
.bf-z-index-50 {
z-index: 50;
}
.bf-z-index-60 {
z-index: 60;
}
.bf-z-index-70 {
z-index: 70;
}
.bf-z-index-80 {
z-index: 80;
}
.bf-z-index-90 {
z-index: 90;
}
.bf-z-index-100 {
z-index: 100;
}
.bf-z-index-200 {
z-index: 200;
}
.bf-z-index-300 {
z-index: 200;
}
.bf-m-0 {
margin: 0 ;
}
.bf-m-t-0 {
margin-top: 0 ;
}
.bf-m-b-0 {
margin-bottom: 0 ;
}
.bf-m-l-0 {
margin-left: 0 ;
}
.bf-m-r-0 {
margin-right: 0 ;
}
.bf-m-1 {
margin-bottom: 5px ;
margin-bottom: 0.5rem ;
}
.bf-m-2 {
margin-bottom: 10px ;
margin-bottom: 1rem ;
}
.bf-m-3 {
margin-bottom: 20px ;
margin-bottom: 2rem ;
}
.bf-m-4 {
margin-bottom: 30px ;
margin-bottom: 3rem ;
}
.bf-m-b-1 {
margin-bottom: 5px ;
margin-bottom: 0.5rem ;
}
.bf-m-b-2 {
margin-bottom: 10px ;
margin-bottom: 1rem ;
}
.bf-m-b-3 {
margin-bottom: 20px ;
margin-bottom: 2rem ;
}
.bf-m-b-4 {
margin-bottom: 30px ;
margin-bottom: 3rem ;
}
.bf-p-0 {
padding: 0 ;
}
.bf-p-t-0 {
padding-top: 0 ;
}
.bf-p-b-0 {
padding-bottom: 0 ;
}
.bf-p-l-0 {
padding-left: 0 ;
}
.bf-p-r-0 {
padding-right: 0 ;
}
.bf-p-1 {
padding-bottom: 5px ;
padding-bottom: 0.5rem ;
}
.bf-p-2 {
padding-bottom: 10px ;
padding-bottom: 1rem ;
}
.bf-p-3 {
padding-bottom: 20px ;
padding-bottom: 2rem ;
}
.bf-p-4 {
padding-bottom: 30px ;
padding-bottom: 3rem ;
}
.bf-p-t-1 {
padding-top: 5px ;
padding-top: 0.5rem ;
}
.bf-p-t-2 {
padding-top: 10px ;
padding-top: 1rem ;
}
.bf-p-t-3 {
padding-top: 20px ;
padding-top: 2rem ;
}
.bf-p-t-4 {
padding-top: 30px ;
padding-top: 3rem ;
}
.bf-p-b-1 {
padding-bottom: 5px ;
padding-bottom: 0.5rem ;
}
.bf-p-b-2 {
padding-bottom: 10px ;
padding-bottom: 1rem ;
}
.bf-p-b-3 {
padding-bottom: 20px ;
padding-bottom: 2rem ;
}
.bf-p-b-4 {
padding-bottom: 30px ;
padding-bottom: 3rem ;
}
.bf-t-transform-uppercase {
text-transform: uppercase ;
}
.bf-t-transform-none {
text-transform: none ;
}
.bf-t-left {
text-align: left ;
}
.bf-t-center {
text-align: center ;
}
.bf-t-right {
text-align: right ;
}
.bf-t-shadow {
text-shadow: 0 0 2px #222 ;
text-shadow: 0 0 0.2rem #222 ;
}
.bf-t-italic {
font-style: italic ;
}
.bf-t-style-normal {
font-style: normal ;
}
.bf-t-weight-300 {
font-weight: 300 ;
}
.bf-t-weight-400 {
font-weight: 400 ;
}
.bf-t-weight-500 {
font-weight: 500 ;
}
.bf-t-weight-600 {
font-weight: 600 ;
}
.bf-t-weight-700 {
font-weight: 700 ;
}
.bf-t-weight-800 {
font-weight: 800 ;
}
.bf-text-break {
word-wrap: break-word ;
}
.bf-t-truncate {
max-width: 100% ;
overflow: hidden ;
text-overflow: ellipsis ;
white-space: nowrap ;
word-wrap: normal ;
}
.bf-t-truncate--multiline-2 {
overflow: hidden ;
text-overflow: ellipsis ;
display: -webkit-box ;
-webkit-line-clamp: 2 ;
-webkit-box-orient: vertical ;
}
.bf-t-truncate--multiline-3 {
overflow: hidden ;
text-overflow: ellipsis ;
display: -webkit-box ;
-webkit-line-clamp: 3 ;
-webkit-box-orient: vertical ;
}
.bf-no-select {
-webkit-user-select: none ;
-moz-user-select: none ;
-ms-user-select: none ;
user-select: none ;
-webkit-touch-callout: none ;
}
.bf-font-sans-serif {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" ;
}
.bf-font-serif {
font-family: Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" ;
}
.bf-font-monospace {
font-family: "Menlo", "Consolas", "Roboto Mono", "Ubuntu Monospace", "Noto Mono", "Oxygen Mono", "Liberation Mono", monospace, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" ;
}
.bf-h1,
.bf-h2,
.bf-h3,
.bf-h4,
.bf-h5,
.bf-h6 {
font-weight: 700 ;
font-weight: 600 ;
margin-top: 0 ;
line-height: 1.2 ;
margin-bottom: 10px ;
margin-bottom: 1rem ;
}
.bf-h1 {
font-size: 36px ;
font-size: 3.6rem ;
}
.bf-h2 {
font-size: 30px ;
font-size: 3rem ;
}
.bf-h3 {
font-size: 24px ;
font-size: 2.4rem ;
}
.bf-h4 {
font-size: 20px ;
font-size: 2rem ;
}
.bf-h5,
.bf-h6 {
font-size: 16px ;
font-size: 1.6rem ;
}
p.bf-lead {
font-size: 120% ;
}
body.bf-responsive-typography {
--body-rt-font-size-flex: calc(1.6rem + 3 * ((100vw - 320px) / 680));
--body-rt-font-size-max: 1.9rem;
}
@media (min-width: 320px) {
body.bf-responsive-typography {
font-size: var(--body-rt-font-size-flex);
}
}
@media (min-width: 1000px) {
body.bf-responsive-typography {
font-size: var(--body-rt-font-size-max);
}
}
.bf-btn {
display: inline-block;
cursor: pointer;
color: #222;
padding: 6.66667px 13.33333px;
padding: 0.66667rem 1.33333rem;
line-height: normal;
text-align: center;
margin: 0;
background-clip: padding-box;
vertical-align: baseline;
overflow: visible;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
border-radius: 2.5px;
border-radius: 0.25rem;
border: 0;
background-image: none;
background: #ccc;
transition: all .2s;
}
.bf-btn:hover, .bf-btn:active, .bf-btn:focus {
text-decoration: none;
color: #222;
background: #b3b3b3;
}
.bf-btn:active, .bf-btn:focus {
box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.15);
}
.bf-btn:focus {
outline: 0;
}
.bf-btn.bf-btn--primary {
color: #fff;
background: #007bff;
}
.bf-btn.bf-btn--primary:hover, .bf-btn.bf-btn--primary:active, .bf-btn.bf-btn--primary:focus {
color: #fff;
background: #0062cc;
}
.bf-btn.bf-btn--primary:active, .bf-btn.bf-btn--primary:focus {
box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.25);
}
fieldset[disabled] .bf-btn,
.bf-btn[disabled],
.bf-btn:disabled,
.bf-btn[aria-disabled='true'] {
cursor: default ;
cursor: not-allowed ;
pointer-events: none ;
-webkit-user-select: none ;
-moz-user-select: none ;
-ms-user-select: none ;
user-select: none ;
box-shadow: none ;
opacity: .5 ;
}
.bf-focused {
transition: border .2s, background-color .2s, box-shadow .2s ;
border-color: #007bff ;
box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.25) ;
}
.bf-disabled,
.bf-disabled:hover,
.bf-disabled:active,
.bf-disabled:focus,
.bf-disabled:after,
.bf-disabled:before,
.bf-disabled:invalid,
.bf-disabled:checked {
cursor: default ;
cursor: not-allowed ;
pointer-events: none ;
-webkit-user-select: none ;
-moz-user-select: none ;
-ms-user-select: none ;
user-select: none ;
box-shadow: none ;
opacity: .5 ;
background-color: #fff;
border-color: #999;
}
label.bf-disabled {
background-color: transparent;
border-color: transparent;
}
button.bf-disabled,
[type='button'].bf-disabled,
[type='reset'].bf-disabled,
[type='submit'].bf-disabled,
.bf-btn.bf-disabled {
cursor: default;
cursor: not-allowed;
pointer-events: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
box-shadow: none;
opacity: .5;
color: #222;
background: #ccc;
}
button.bf-disabled:hover, button.bf-disabled:active, button.bf-disabled:focus,
[type='button'].bf-disabled:hover,
[type='button'].bf-disabled:active,
[type='button'].bf-disabled:focus,
[type='reset'].bf-disabled:hover,
[type='reset'].bf-disabled:active,
[type='reset'].bf-disabled:focus,
[type='submit'].bf-disabled:hover,
[type='submit'].bf-disabled:active,
[type='submit'].bf-disabled:focus,
.bf-btn.bf-disabled:hover,
.bf-btn.bf-disabled:active,
.bf-btn.bf-disabled:focus {
box-shadow: none;
color: #222;
background: #ccc;
}
.bf-btn--primary.bf-disabled {
cursor: default;
cursor: not-allowed;
pointer-events: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
box-shadow: none;
opacity: .5;
color: #fff;
background: #007bff;
}
.bf-btn--primary.bf-disabled:hover, .bf-btn--primary.bf-disabled:active, .bf-btn--primary.bf-disabled:focus {
box-shadow: none;
color: #fff;
background: #007bff;
}
.bf-invalid,
.bf-invalid:focus {
color: #ff0000 ;
border-color: #ff0000 ;
box-shadow: 0 0 0 3px rgba(255, 0, 0, 0.25) ;
}
.bf-list-unstyled,
menu ul.bf-list-unstyled,
menu ol.bf-list-unstyled,
ul.bf-list-unstyled ul,
ul.bf-list-unstyled ol,
ol.bf-list-unstyled ol,
ol.bf-list-unstyled ul,
dd.bf-list-unstyled {
margin: 0;
padding: 0;
list-style: none;
}
dt {
font-weight: 700;
}
.bf-embed-responsive {
position: relative;
display: block;
width: 100%;
padding: 0;
overflow: hidden;
}
.bf-embed-responsive::before {
display: block;
content: '';
padding-top: 56.25%;
}
.bf-embed-responsive .bf-embed-responsive--4-3::before {
padding-top: 75%;
}
.bf-embed-responsive .bf-embed-responsive--item,
.bf-embed-responsive iframe,
.bf-embed-responsive embed,
.bf-embed-responsive object,
.bf-embed-responsive video {
position: absolute;
top: 0;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
border: 0;
}
.bf-table th,
.bf-table td {
padding: 10px;
padding: 1rem;
border-bottom: 1px solid #999;
margin-bottom: 5px;
margin-bottom: 0.5rem;
}
.bf-table-responsive {
overflow-x: auto;
overflow-y: hidden;
-ms-overflow-style: scrollbar;
}
.bf-table-responsive table {
width: 100%;
margin-bottom: 5px;
margin-bottom: 0.5rem;
}
.bf-table-responsive.scrollbar {
-webkit-overflow-scrolling: auto;
}
.bf-table--zebra tbody tr:nth-child(odd),
.bf-table-responsive--zebra tbody tr:nth-child(odd) {
background-color: #e9e9e9;
}
/* main.css 2.1.0 | MIT License | https://github.com/h5bp/main.css#readme */
/* ==========================================================================
Print styles.
Inlined to avoid the additional HTTP request:
https://www.phpied.com/delay-loading-your-print-css/
========================================================================== */
@media print {
*,
*::before,
*::after {
background: #fff ;
color: #000 ;
/* Black prints faster */
box-shadow: none ;
text-shadow: none ;
}
a,
a:visited {
text-decoration: underline;
}
a[href]::after {
content: " (" attr(href) ")";
}
abbr[title]::after {
content: " (" attr(title) ")";
}
/*
* Don't show links that are fragment identifiers,
* or use the `javascript:` pseudo protocol
*/
a[href^='#']::after,
a[href^='javascript:']::after {
content: '';
}
pre {
white-space: pre-wrap ;
}
pre,
blockquote {
border: 1px solid #999;
page-break-inside: avoid;
}
/*
* Printing Tables:
* https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
*/
thead {
display: table-header-group;
}
tr,
img {
page-break-inside: avoid;
}
p,
h2,
h3 {
orphans: 3;
widows: 3;
}
h2,
h3 {
page-break-after: avoid;
}
}
@media print {
body,
.bf-container {
min-width: 992px ;
}
.bf-table-responsive {
overflow: auto;
}
.bf-table-responsive table {
width: auto;
}
.bf-table-responsive table,
.bf-table {
border-collapse: collapse ;
}
}
@media (prefers-reduced-motion: reduce) {
.bf-reduced-motion,
.bf-reduced-motion::before,
.bf-reduced-motion::after,
.bf-reduced-motion *,
.bf-reduced-motion *::before,
.bf-reduced-motion *::after {
-webkit-animation-delay: -1ms ;
animation-delay: -1ms ;
-webkit-animation-duration: 1ms ;
animation-duration: 1ms ;
-webkit-animation-iteration-count: 1 ;
animation-iteration-count: 1 ;
background-attachment: initial ;
scroll-behavior: auto ;
transition-delay: 0s ;
transition-duration: 0s ;
}
}