simple-note/assets/styles/style.css

197 lines
No EOL
4.1 KiB
CSS

@font-face {
font-family: Roboto;
font-display: swap;
font-style: normal;
font-weight: 400;
src: url("../fonts/roboto/roboto-400.eot");
src: url("../fonts/roboto/roboto-400.eot?#iefix") format("embedded-opentype"),
url("../fonts/roboto/roboto-400.woff2") format("woff2"),
url("../fonts/roboto/roboto-400.woff") format("woff"),
url("../fonts/roboto/roboto-400.ttf") format("truetype"),
url("../fonts/roboto/roboto-400.svg#Roboto") format("svg");
}
@font-face {
font-family: "Roboto Slab";
font-display: swap;
font-style: normal;
font-weight: 500;
src: url("../fonts/roboto-slab/roboto-slab-500");
src: url("../fonts/roboto-slab/roboto-slab-500?#iefix") format("embedded-opentype"),
url("../fonts/roboto-slab/roboto-slab-500.woff2") format("woff2"),
url("../fonts/roboto-slab/roboto-slab-500.woff") format("woff"),
url("../fonts/roboto-slab/roboto-slab-500.ttf") format("truetype"),
url("../fonts/roboto-slab/roboto-slab-500.svg#RobotoSlab") format("svg");
}
:root {
/* Fonts */
--font-roboto: Roboto, sans-serif;
--font-roboto-slab: "Roboto Slab", serif;
--font-1: var(--font-roboto);
--font-2: var(--font-roboto-slab);
/* Colors */
--black: 0, 0%, 0%;
--white: 0, 0%, 100%;
--boulder: 0, 0%, 46%;
--color-1: var(--black), 80%;
--color-2: var(--white);
--color-3: var(--boulder), 80%; /* Placeholder and Icons */
/* Other */
--focus-outline: 0.125rem solid hsl(var(--color-1));
--focus-offset: 0;
}
*,
*::before,
*::after {
margin: 0;
padding: 0;
box-sizing: border-box;
}
img,
svg {
display: block;
max-width: 100%;
height: auto;
}
button,
input,
textarea {
display: block;
color: inherit;
background-color: transparent;
border: none;
font: inherit;
}
::placeholder { color: hsl(var(--color-3)); }
.sr-only {
border: none;
width: 0.0625rem;
height: 0.0625rem;
padding: 0;
margin: -0.0625rem;
overflow: hidden;
white-space: nowrap;
position: absolute;
top: auto;
left: -99rem;
clip: rect(0 0 0 0);
clip: rect(0, 0, 0, 0);
clip-path: inset(50%);
}
html,
body,
main,
.simple-note,
.simple-note__inputs {
display: flex;
flex-direction: column;
flex-grow: 1;
}
html {
min-height: 100%;
}
body {
color: hsl(var(--color-1));
background-color: hsl(var(--color-2));
}
/* Settings */
.settings {
color: hsl(var(--color-3));
max-width: 1.5rem;
position: absolute;
top: 1.125rem;
left: 1.125rem;
}
.settings__buttons > *,
.settings__button--toggle-settings { margin-bottom: 1.125rem; }
.settings__button--toggle-settings[aria-expanded="true"] { color: hsl(var(--color-1)); }
.settings__button--toggle-settings[aria-expanded="true"] + .settings__buttons {
right: 0;
}
.settings__buttons {
width: 100%;
list-style: none;
transition: right cubic-bezier(0.45, 0.05, 0.55, 0.95) 0.3s;
position: relative;
right: 3.125rem;
}
.settings__button {
display: block;
color: inherit;
width: 100%;
cursor: pointer;
transition: color ease-in-out 0.1s;
}
.settings__button:focus-visible {
--focus-offset: 0.125rem;
color: hsl(var(--color-1));
outline: var(--focus-outline);
outline-offset: var(--focus-offset);
}
@media (hover:hover) {
.settings__button:hover { color: hsl(var(--color-1)); }
}
.settings__button-svg { width: 100%; }
.settings__separator {
display: block;
border-bottom: 2px solid hsl(var(--color-3));
}
/* Simple Note */
.simple-note {
width: 90%;
max-width: 29.125rem;
margin: 0 auto;
padding: 2rem 0;
}
.simple-note__input { padding: 0.5625rem 0.75rem; }
.simple-note__input:focus-visible {
outline: var(--focus-outline);
outline-offset: var(--focus-offset);
}
.simple-note__input--title {
font-family: var(--font-2);
font-size: 1.5rem;
font-weight: 500;
line-height: normal;
}
.simple-note__input--body {
flex-grow: 1;
font-family: var(--font-1);
font-size: 1rem;
font-weight: 400;
line-height: 1.5;
resize: none;
}