cheesy/moku/static/css/moku.css

422 lines
7 KiB
CSS
Raw Normal View History

2024-03-25 10:36:10 +00:00
:root {
--tangerine: #F7A278;
--orange: #c94c10;
--champagne: #FDE4D8;
--dusty-champagne: #EFC6B8;
--charcoal: #626262;
--emoji-picker-rounding: 6px;
--image-max-size: 324px;
}
*, *::before, *::after {
box-sizing: border-box;
}
html {
font-size: 62.5%;
line-height: 1.5;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
}
body {
background: var(--champagne);
font-size: 1.6rem;
line-height: 1.4;
max-width: 768px;
margin-inline: auto;
2024-03-25 14:24:20 +00:00
padding: 2.4rem 1.2rem;
2024-03-25 10:36:10 +00:00
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}
.mt {
margin-block-start: 1.6rem;
}
.mb {
margin-block-end: 1.6rem;
}
2024-03-25 21:46:47 +00:00
.small {
font-size: 1.4rem;
}
.subtle {
color: var(--charcoal);
}
2024-03-25 11:59:06 +00:00
.messages {
margin-block-end: 1.6rem;
display: grid;
row-gap: .8rem;
font-size: 1.5rem;
}
.messages li.success::before {
content: "✅ ";
}
.messages li.error::before {
content: "❌ ";
}
.messages li.info::before {
content: " ";
}
2024-03-25 10:36:10 +00:00
button.logout {
border: none;
outline: none;
background: none;
display: inline;
font-size: 1.6rem;
cursor: pointer;
padding: 0;
}
a, button.logout {
color: var(--orange);
font-weight: bold;
text-decoration: none;
text-decoration-skip-ink: none;
text-underline-offset: 2px;
}
a:hover, button.logout:hover {
text-decoration: wavy underline;
}
.profile h2 {
font-size: 1.8rem;
font-weight: bold;
color: var(--orange);
}
2024-03-25 14:11:21 +00:00
.avatar {
border-radius: 8px;
}
aside .avatar {
max-width: 100%;
}
2024-03-25 10:36:10 +00:00
dl {
display: grid;
grid-template-columns: 1fr 1fr;
row-gap: 1.2rem;
column-gap: 1.8rem;
}
dl > div {
display: grid;
}
dl dt {
font-size: 1.4rem;
font-weight: bold;
color: var(--charcoal);
}
dl > .double {
grid-column: 1 / span 2;
}
form .errors {
font-size: 1.5rem;
display: grid;
margin-block-end: .8rem;
}
form .errors::before {
content: "fix these and we're good to go:";
font-size: 1.4rem;
color: var(--charcoal);
margin-block-end: .4rem;
}
form .errors li::before {
content: "❌ ";
}
form .errors li {
text-transform: lowercase;
}
form:not(.logout) {
display: grid;
row-gap: .8rem;
}
form.auth {
max-width: 378px;
}
form .field {
display: grid;
row-gap: .4rem;
}
2024-03-25 21:46:47 +00:00
form .field .field-button {
display: grid;
grid-template-columns: 1fr auto;
column-gap: .8rem;
}
form .checkbox {
display: grid;
grid-template-columns: auto 1fr;
align-items: flex-start;
column-gap: .8rem;
}
2024-03-25 10:36:10 +00:00
form .field .help {
color: var(--charcoal);
font-size: 1.4rem;
}
2024-03-25 14:11:21 +00:00
form input:not([name$="-clear"]),
2024-03-25 10:36:10 +00:00
form select {
width: 100%;
}
form textarea {
height: 6ch;
resize: vertical;
}
form input[type=text],
form input[type=password],
form input[type=email],
form textarea,
form select {
padding: .2rem;
font-size: 1.6rem;
border: 1px solid var(--charcoal);
border-radius: 3px;
background: var(--champagne);
}
form input[type=text]:focus,
form input[type=password]:focus,
form input[type=email]:focus,
form textarea:focus,
form select:focus {
background: white;
outline: 2px solid var(--tangerine);
}
form .emoji-picker {
display: grid;
row-gap: .2rem;
}
form .emoji-picker details:first-of-type summary {
border-top-right-radius: var(--emoji-picker-rounding);
border-top-left-radius: var(--emoji-picker-rounding);
}
form .emoji-picker details:last-of-type:not([open]) summary {
border-bottom-right-radius: var(--emoji-picker-rounding);
border-bottom-left-radius: var(--emoji-picker-rounding);
}
form .emoji-picker details summary {
background: var(--dusty-champagne);
font-size: 1.4rem;
padding: .4rem .6rem;
user-select: none;
cursor: default;
}
form .emoji-picker ul {
display: grid;
grid-template-columns: repeat(5, 1fr);
column-gap: .2rem;
row-gap: .2rem;
}
form .emoji-picker ul li label {
padding: .3rem;
}
form .emoji-picker ul li input[type=radio] {
display: none;
}
form .emoji-picker ul li input[type=radio]:checked + label {
outline: 3px solid var(--tangerine);
border-radius: 50%;
}
form button[type=submit]:not(.logout) {
padding: .4rem .6rem;
font-size: 1.5rem;
background: var(--tangerine);
border: 1px solid var(--orange);
outline: none;
border-radius: 4px;
}
header {
display: grid;
margin-block-end: 2.4rem;
}
header h1 {
font-weight: bold;
font-size: 2.4rem;
}
header nav ul {
display: flex;
align-items: center;
column-gap: 1.2rem;
}
.grid-content {
display: grid;
2024-03-25 14:24:20 +00:00
row-gap: 1.2rem;
2024-03-25 10:36:10 +00:00
}
.grid-content main {
display: grid;
row-gap: 1.8rem;
}
.grid-content main article {
padding: .8rem 1.8rem;
border-left: 4px solid var(--tangerine);
2024-03-25 19:44:32 +00:00
word-break: break-word;
2024-03-25 10:36:10 +00:00
display: grid;
grid-template-columns: auto 1fr;
column-gap: 1.2rem;
}
.grid-content main article .image {
grid-column: 1 / span 2;
margin-block-end: 1rem;
}
.grid-content main article .image img {
max-width: var(--image-max-size);
max-height: var(--image-max-size);
border-radius: 8px;
}
.grid-content main article .emoji {
font-size: 2rem;
padding-top: .8rem;
}
.grid-content main article .body {
display: grid;
row-gap: .2rem;
}
.grid-content main article .body .metadata {
font-size: 1.4rem;
color: var(--charcoal);
}
.grid-content main article .body .recipe {
margin-block-start: .4rem;
}
.grid-content main article .body .recipe summary {
font-size: 1.4rem;
cursor: default;
user-select: none;
}
.grid-content main article .body .recipe ol {
font-size: 1.5rem;
list-style: decimal;
margin-block-start: 1rem;
padding-inline-start: 3.4rem;
border-left: 2px solid var(--tangerine);
2024-03-25 14:24:20 +00:00
}
.block {
max-width: 528px;
display: grid;
row-gap: .8rem;
}
.block h2 {
font-size: 2rem;
font-weight: bold;
}
.block h3 {
font-size: 1.8rem;
font-weight: bold;
margin-block-start: 1.2rem;
}
2024-03-25 21:46:47 +00:00
.block ul,
.block ol {
padding-inline-start: 3.2rem;
display: grid;
row-gap: .4rem;
}
2024-03-25 21:46:47 +00:00
.block ul {
list-style: disc;
}
.block ol {
list-style: decimal;
}
.block strong {
font-weight: bold;
}
.block em {
font-style: italic;
}
footer {
margin-block-start: 1.8rem;
}
footer nav ul {
display: flex;
align-items: center;
justify-content: center;
column-gap: 1.2rem;
}
footer nav ul li a {
font-size: 1.4rem;
color: var(--charcoal);
}
footer nav ul li a:hover {
color: var(--orange);
}
2024-03-25 14:24:20 +00:00
@media(min-width: 768px) {
body {
padding: 4rem 1.2rem 2.4rem 1.2rem;
}
header {
grid-template-columns: auto 1fr;
column-gap: 2.4rem;
align-items: center;
}
header nav ul {
justify-content: flex-end;
}
.grid-content {
grid-template-columns: 214px 1fr;
column-gap: 2.4rem;
row-gap: 0;
align-items: flex-start;
}
2024-03-25 10:36:10 +00:00
}