cbax_dev/static/css/components.css
2024-10-28 23:38:04 -04:00

297 lines
5.2 KiB
CSS

/* ---------------- Components ---------------- */
/* -------- General components -------- */
.flex-container {
display: flex;
flex-wrap: stretch;
align-items: center;
align-content: space-between;
height: 100vh;
flex-direction: column;
}
/* -------- Tree components -------- */
.tree li, .tree ul li {
margin-left: 15px;
position: relative;
padding-left: 5px;
}
.tree li::before, .tree ul li::before {
content: " ";
position: absolute;
width: 1px;
background-color: var(--text-color);
top: 5px;
bottom: -12px;
left: -10px;
}
.tree>li:first-child::before {
top: 12px;
}
.tree li:not(:first-child):last-child::before, .tree ul li:not(:first-child):last-child::before {
display: none;
}
.tree li:only-child::before, .tree ul li:only-child::before {
display: list-item;
content: " ";
position: absolute;
width: 1px;
background-color: var(--text-color);
top: 5px;
bottom: 7px;
height: 7px;
left: -10px;
}
.tree li::after, .tree ul li::after {
content: " ";
position: absolute;
left: -10px;
width: 10px;
height: 1px;
background-color: var(--text-color);
top: 12px;
}
/* -------- Form components -------- */
.input-form {
display: flex;
padding: 0;
border: 1px solid var(--highlight-color);
}
.input-form input {
width: 100%;
padding: 0.5rem 1rem;
margin: 0;
border: 0;
border-radius: 0;
outline: none;
transition-duration: 0.5s;
background-color: var(--bg-color);
}
.input-form input:hover,
.input-form input:focus {
background-color: rgba(var(--highlight-color-rgb), 0.15);
}
.input-form button {
padding: 0.5rem 1rem;
margin: 0;
border: 0;
border-radius: 0;
outline: none;
cursor: pointer;
white-space: nowrap;
transition-duration: 0.5s;
color: var(--text-color);
background-color: rgba(var(--highlight-color-rgb), 0.15);
}
.input-form button:hover {
background-color: var(--highlight-color);
}
.input-form ::placeholder {
color: var(--text-color);
opacity: 1;
/* Firefox */
}
.input-form ::-ms-input-placeholder {
/* Edge 12 -18 */
color: var(--text-color);
}
/* -------- Button components --------*/
.button {
margin: 0.5rem;
padding: 0.5rem 1rem;
border: 1px solid var(--highlight-color);
background-color: var(--bg-color);
color: var(--text-color);
cursor: pointer;
transition-duration: 0.5s;
text-align: center;
vertical-align: middle;
}
.button-stealth {
border: none;
}
.button:hover {
background-color: var(--highlight-color);
font-weight: bold;
}
.hover-button {
margin: 0.25rem 0.5rem 0.5rem 0.25rem;
}
.hover-button:hover {
box-shadow: 0.25rem 0.25rem 0rem rgba(var(--highlight-color-rgb), 0.3);
}
.button:active {
transition-duration: 0s;
background-color: rgba(var(--highlight-color-rgb), 0.15);
}
.copy-button {
margin: 0;
position: absolute;
top: 0;
right: 0;
z-index: 1;
background-color: transparent;
border: 0;
}
.badge {
position: relative;
top: -7px;
right: 7px;
padding: 2px 2px;
border-radius: 25%;
background: var(--nord12);
color: var(--bg-color);
}
/* -------- Box components -------- */
.box {
margin: 0.5rem;
padding: 0.5rem;
border: 1px solid var(--highlight-color);
}
/* -------- Component modifiers -------- */
.float-end {
float: inline-end;
}
.float-start {
float: inline-start;
}
.box-hover {
transition-duration: 0.5s;
}
.box-hover:hover {
background-color: rgba(var(--highlight-color-rgb), 0.15);
margin: 0.5rem 1rem 1rem 0.5rem;
box-shadow: 0.5rem 0.5rem 0rem rgba(var(--highlight-color-rgb), 0.3);
}
.box-code {
position: relative;
padding: 0;
background-color: rgba(var(--highlight-color-rgb), 0.15);
}
.box-pop {
margin: 0.5rem 1rem 1rem 0.5rem;
box-shadow: 0.5rem 0.5rem 0rem rgba(var(--highlight-color-rgb), 0.3);
}
.box-fit {
width: fit-content;
height: fit-content;
}
.box-stealth {
border: 0;
box-shadow: none;
}
/* -------- Fancy anchors -------- */
.fancy {
background-image: linear-gradient(
to right,
var(--highlight-color),
var(--highlight-color) 50%,
var(--text-color) 50%
);
text-decoration: underline var(--highlight-color);
background-size: 200% 100%;
background-position: -100%;
display: inline-block;
padding: 0px 0;
position: relative;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
transition: all 0.3s ease-in-out;
}
.fancy:before {
content: '';
background: var(--highlight-color);
display: block;
position: absolute;
bottom: 0px;
left: 0;
width: 0;
height: 3px;
transition: all 0.3s ease-in-out;
}
.fancy:hover {
background-position: 0;
}
.fancy:hover::before {
width: 100%;
}
/* -------- Nav components -------- */
.nav-title {
font-size: large;
font-style: oblique;
font-weight: 950;
text-align: center;
}
/* -------- 88x31 --------*/
.eex31-container {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
align-content: flex-start;
padding-left: 0.5rem;
padding-right: 0.5rem;
width: 50vw;
}
.eex31 {
width: 88;
height: 31;
margin: 0.5rem;
}