v3 init push
This commit is contained in:
@@ -0,0 +1,187 @@
|
||||
@use "@styles/color";
|
||||
@use "@styles/var";
|
||||
|
||||
/* Overlays: the sign-in card, and the settings sheet.
|
||||
* Both are the same object - a single leaf of paper on the desk. */
|
||||
.veil {
|
||||
position: fixed;
|
||||
inset: 0;
|
||||
z-index: 100;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: var.$block-spacing;
|
||||
background-color: color.$veil;
|
||||
backdrop-filter: blur(2px);
|
||||
}
|
||||
|
||||
.leaf {
|
||||
width: min(26rem, 100%);
|
||||
max-height: 100%;
|
||||
overflow-y: auto;
|
||||
padding: 1.5rem;
|
||||
background-color: color.$paper;
|
||||
border-radius: var.$block-radius;
|
||||
box-shadow: var.$shadow-panel;
|
||||
|
||||
//A cut edge along the left, so it reads as torn from the book
|
||||
background-image: linear-gradient(to right, color.$paper-edge 0 3px, transparent 3px);
|
||||
}
|
||||
|
||||
.leaf--wide {
|
||||
width: min(34rem, 100%);
|
||||
}
|
||||
|
||||
.leaf__head {
|
||||
margin-bottom: 1.1rem;
|
||||
}
|
||||
|
||||
.leaf__logo {
|
||||
display: block;
|
||||
width: min(15rem, 70%);
|
||||
height: auto;
|
||||
margin: 0 0 0.6rem -0.4rem;
|
||||
}
|
||||
|
||||
.leaf__title {
|
||||
margin: 0;
|
||||
font-family: var.$font-hand;
|
||||
font-size: 2rem;
|
||||
font-weight: 600;
|
||||
line-height: 1.05;
|
||||
color: color.$ink;
|
||||
}
|
||||
|
||||
.leaf__sub {
|
||||
margin-top: 0.15rem;
|
||||
font-size: 0.85rem;
|
||||
color: color.$ink-soft;
|
||||
}
|
||||
|
||||
.leaf__row {
|
||||
margin-bottom: 0.85rem;
|
||||
}
|
||||
|
||||
.leaf__actions {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: var.$elem-spacing;
|
||||
margin-top: 1.2rem;
|
||||
}
|
||||
|
||||
.leaf__check {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 0.45rem;
|
||||
font-size: 0.85rem;
|
||||
color: color.$ink-soft;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.leaf__error {
|
||||
margin-bottom: 0.85rem;
|
||||
padding: 0.5rem 0.7rem;
|
||||
border-radius: var.$block-radius;
|
||||
font-size: 0.85rem;
|
||||
color: color.$ribbon-deep;
|
||||
background-color: rgba(163, 55, 47, 0.09);
|
||||
border-left: 2px solid color.$ribbon;
|
||||
}
|
||||
|
||||
.leaf__note {
|
||||
margin-top: 0.85rem;
|
||||
font-size: 0.82rem;
|
||||
color: color.$ink-soft;
|
||||
}
|
||||
|
||||
/* The one solid button in the app */
|
||||
.ink-button {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: var.$text-spacing;
|
||||
padding: 0.55rem 1.1rem;
|
||||
border-radius: var.$block-radius;
|
||||
color: #fff6e6;
|
||||
background-color: color.$ribbon;
|
||||
box-shadow: var.$shadow-elem;
|
||||
transition: background-color var.$trans-quick;
|
||||
|
||||
&:hover:not(:disabled),
|
||||
&:focus-visible {
|
||||
background-color: color.$ribbon-deep;
|
||||
}
|
||||
|
||||
&:disabled {
|
||||
opacity: 0.5;
|
||||
cursor: default;
|
||||
}
|
||||
}
|
||||
|
||||
.text-button {
|
||||
padding: 0.55rem 0.6rem;
|
||||
border-radius: var.$block-radius;
|
||||
color: color.$ink-soft;
|
||||
transition: color var.$trans-quick, background-color var.$trans-quick;
|
||||
|
||||
&:hover,
|
||||
&:focus-visible {
|
||||
color: color.$ink;
|
||||
background-color: color.$paper-shade;
|
||||
}
|
||||
}
|
||||
|
||||
.text-button--bad {
|
||||
color: color.$ribbon;
|
||||
|
||||
&:hover,
|
||||
&:focus-visible {
|
||||
color: color.$ribbon-deep;
|
||||
background-color: rgba(163, 55, 47, 0.08);
|
||||
}
|
||||
}
|
||||
|
||||
/* The autosave indicator. Lives in the header and must never shout: it is
|
||||
* ambient reassurance, not a notification. */
|
||||
.saver {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 0.4rem;
|
||||
font-size: 0.78rem;
|
||||
color: rgba(255, 238, 210, 0.5);
|
||||
padding: 0.35rem 0.5rem;
|
||||
white-space: nowrap;
|
||||
transition: color var.$trans-quick;
|
||||
}
|
||||
|
||||
.saver--saving,
|
||||
.saver--pending {
|
||||
color: rgba(255, 238, 210, 0.75);
|
||||
}
|
||||
|
||||
.saver--failed {
|
||||
color: #f0b6ae;
|
||||
}
|
||||
|
||||
.saver__dot {
|
||||
width: 0.42rem;
|
||||
height: 0.42rem;
|
||||
border-radius: 50%;
|
||||
background-color: currentColor;
|
||||
flex: 0 0 auto;
|
||||
}
|
||||
|
||||
.saver--saving .saver__dot {
|
||||
animation: saver-pulse 1s ease-in-out infinite;
|
||||
}
|
||||
|
||||
@keyframes saver-pulse {
|
||||
0%,
|
||||
100% {
|
||||
opacity: 0.3;
|
||||
}
|
||||
|
||||
50% {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user