fleet/website/assets/styles/bootstrap-overrides.less
Mike Thomas 7e18bcce8c
Website docs style patch (#11286)
This PR is in response to https://github.com/fleetdm/fleet/issues/10420,
to improve the readability of the docs. In particular,
[docs/using-fleet/mdm-setup](https://fleetdm.com/docs/using-fleet/mdm-setup).

**CSS changes**
- Adjusted margins and paddings on `<ol>` and `<ul>` elements. As well
as h-tags and code blocks.
- Added styling to docs `<h3>` tags to help differentiate sub-sections.
This helps to make the docs pages easier to scan.
- Reduced the boldness of `<b>` and `<strong>` tags. The recently
updated font, Inter, renders bold a little too heavily. (This is a
site-wide change.)
- Changed the default font color to `@core-fleet-black-75` and made sure
that h-tags are set to `@core-fleet-black`. The softer contrast helps
reduce fatigue while reading large blocks of text (while still
conforming to recommended contrast levels). This site-wide change brings
the text styling in sync with Figma.

**Content changes**
- Reformatted content on
[docs/using-fleet/mdm-setup](https://fleetdm.com/docs/using-fleet/mdm-setup)
to fix Markdown issues that were causing sections to render incorrectly,
and were also breaking the "On this page" side nav.
- Made grammar and content fixes to improve readability and flow.

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Eric <eashaw@sailsjs.com>
2023-05-02 13:07:31 -05:00

318 lines
6.1 KiB
Plaintext
Vendored

/**
* This file is for overriding some default bootstrap styles.
*
* > NOTE THAT THIS FILE AFFECTS GLOBAL STYLES.
*/
// lesshint-disable
* {
box-sizing: border-box;
}
// lesshint-enable
body {
font-family: @main-font;
color: @core-fleet-black-75;
}
img {
display: block;
}
// Get rid of weird background on <a>s with button styles
.btn, [type='button'] {
-webkit-appearance: none;
}
// Override heading font styles
h1, h2, h3, h4, h5, h6 {
font-family: @header-font;
}
h1, h2, h3, h4, h5 {
font-weight: 800;
color: @core-fleet-black;
}
h4 {
font-weight: 800;
}
h1 {
font-size: 36px;
line-height: 48px;
}
h2 {
font-size: 28px;
line-height: 36px;
}
p {
line-height: 28px;
}
b, strong, .font-weight-bold {
font-weight: 600;
color: @core-fleet-black;
}
footer {
font-size: 14px;
line-height: 24px;
}
.small {
font-size: 14px;
}
.text-danger {
color: @core-vibrant-red !important; //lesshint-disable-line importantRule
}
a.text-danger:hover, a.text-danger:focus {
color: darken(@core-vibrant-red, 20%) !important; //lesshint-disable-line importantRule
}
.btn {
font-family: @header-font;
font-weight: 700;
padding-top: 18px;
padding-bottom: 19px;
font-size: 20px;
line-height: 23px;
border-radius: 10px;
&:focus {
box-shadow: none;
}
&.btn-link {
color: #ffffff;
font-weight: 400;
font-family: @navigation-font;
transition: none;
}
&.btn-sm {
padding-top: 9px;
padding-bottom: 8px;
padding-left: 15px;
padding-right: 15px;
border-radius: 4px;
font-size: 16px;
line-height: 25px;
}
&.btn-primary {
background-color: #ff5c83;
border-color: #ff5c83;
cursor: pointer;
color: #FFF;
overflow: hidden;
text-decoration: none;
position: relative;
&:before {
background: linear-gradient(180deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%);
opacity: 1;
content: ' ';
position: absolute;
top: 0;
left: -5px;
width: 50%;
height: 100%;
transform: skew(-10deg);
transition: left 0.5s ease-in, opacity 0.50s ease-in, width 0.5s ease-in;
}
&:hover:before {
opacity: 0;
left: 160px;
width: 110%;
}
&.disabled, &:disabled {
color: #fff;
background-color: darken(#ff5c83, 10%);
border-color: darken(#ff5c83, 10%);
}
&:not(:disabled):not(.disabled):active, &:not(:disabled):not(.disabled).active, .show > &.dropdown-toggle {
color: #fff;
background-color: darken(#ff5c83, 10%);
border-color: darken(#ff5c83, 10%);
}
&:not(:disabled):not(.disabled):active:focus, &:not(:disabled):not(.disabled).active:focus, .show > &.dropdown-toggle:focus {
box-shadow: 0 0 0.25rem 0.2rem #ff5c83;
}
}
&.btn-info {
background-color: #6A67FE;
border-color: #6A67FE;
cursor: pointer;
color: #FFF;
overflow: hidden;
text-decoration: none;
position: relative;
&:before {
background: linear-gradient(180deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%);
opacity: 1;
content: ' ';
position: absolute;
top: 0;
left: -5px;
width: 50%;
height: 100%;
transform: skew(-10deg);
transition: left 0.5s ease-in, opacity 0.50s ease-in, width 0.5s ease-in;
}
&:hover:before {
opacity: 0;
left: 160px;
width: 110%;
}
&:not(:disabled):not(.disabled):active {
background-color: #6A67FE;
border-color: #6A67FE;
}
&:active:focus {
background-color: #6A67FE;
border-color: #6A67FE;
}
&:not(:disabled):not(.disabled):focus {
box-shadow: none;
}
}
&.btn-outline-secondary {
color: @core-fleet-black;
border: 1px solid #C5C7D1;
&:hover {
background: #fff;
}
&:focus {
box-shadow: none;
}
&:not(:disabled):not(.disabled):active, &:not(:disabled):not(.disabled).active, .show > &.dropdown-toggle {
color: @core-fleet-black;
background: none;
border: 1px solid #C5C7D1;
}
&:not(:disabled):not(.disabled):active:focus, &:not(:disabled):not(.disabled).active:focus, .show > &.dropdown-toggle:focus {
box-shadow: none;
}
}
}
.card {
box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.05);
}
.dropdown:hover > .btn {
color: #6a67fe;
}
.dropdown-menu {
left: 16px;
min-width: 0;
margin: 0;
}
.dropdown-item {
display: inline-flex;
flex-direction: column;
align-items: flex-start;
}
.dropdown-item:hover {
background-color: #f1f0ff;
font-weight: @bold;
}
// Bolding text when the tab is active causes a layout shift
// so we add a hidden pseudo element with the same text string
.dropdown-item:before {
content: attr(data-text);
height: 0;
visibility: hidden;
overflow: hidden;
user-select: none;
pointer-events: none;
font-weight: @bold;
}
[purpose='page-header'] {
.collapsing {
opacity: 0;
transition: 0s;
}
.collapse.show {
opacity: 1;
pointer-events: auto;
z-index: 3;
overflow-y: auto;
}
.collapse {
opacity: 0;
}
.dropdown-menu {
left: 0px;
}
.dropdown-toggle::after {
display: none;
}
.dropdown-header {
padding-left: 16px;
padding-right: 16px;
padding-top: 16px;
color: @core-fleet-black-33;
font-size: 11px;
line-height: 20px;
font-weight: bold;
}
.dropdown-divider {
margin: 4px 16px 0px 16px;
}
.dropdown-item {
font-size: 14px;
line-height: 20px;
padding: 8px 16px;
display: inline-flex;
flex-direction: column;
align-items: flex-start;
}
.dropdown-item:hover {
background-color: unset;
color: #6a67fe;
}
.dropdown-item:before {
content: none;
}
}
.form-control {
height: 54px;
padding: 8px 16px;
font-size: 18px;
color: #192147;
border: 1px solid #C5C7D1;
}
.form-control:focus {
border: 1px solid #6a67fe;
box-shadow: unset;
}
.form-control.is-invalid:focus {
box-shadow: unset;
}
.form-control.is-invalid::placeholder {
color: #FF5C83;
}
.form-control.is-invalid {
color: #FF5C83;
border: 1px solid #FF5C83;
}
textarea.form-control {
height: 108px;
}
.form-group {
margin-bottom: 24px;
}
.invalid-feedback {
color: @core-vibrant-red;
}