Files
game-kit/template/src/app.css
T

163 lines
2.6 KiB
CSS

/* Design tokens. Every game picks its own palette and typeface here; the
components only ever name these tokens, so a new look is this block. */
:root {
--slate: #1c2830;
--slate-deep: #121a20;
--slate-raised: #24333d;
--bone: #e9e2d2;
--bone-dim: #98a4ab;
--bone-faint: #5d6b73;
--ember: #f0a53a;
--frost: #8cc8e0;
--blood: #e0655c;
--rule: rgba(233, 226, 210, 0.14);
--rule-strong: rgba(233, 226, 210, 0.32);
--font: 'Iowan Old Style', Georgia, serif;
--gutter: clamp(16px, 3vw, 40px);
}
* {
box-sizing: border-box;
}
html {
background: var(--slate-deep);
}
body {
margin: 0;
background: var(--slate-deep);
color: var(--bone);
font-family: var(--font);
font-size: 17px;
line-height: 1.55;
-webkit-font-smoothing: antialiased;
}
h1,
h2,
h3 {
font-weight: 500;
line-height: 1.15;
margin: 0;
}
p {
margin: 0;
}
button,
select,
input,
textarea {
font: inherit;
color: inherit;
}
button {
cursor: pointer;
}
button:focus-visible,
select:focus-visible,
input:focus-visible,
textarea:focus-visible,
summary:focus-visible {
outline: 2px solid var(--frost);
outline-offset: 2px;
}
select,
input[type='text'],
textarea {
background: var(--slate-deep);
border: 1px solid var(--rule-strong);
border-radius: 4px;
padding: 0.3rem 0.6rem;
max-width: 100%;
color: var(--bone);
}
button:disabled {
opacity: 0.35;
cursor: not-allowed;
}
/* An action written as a word in running text. */
.link {
background: none;
border: 0;
padding: 0;
font-size: inherit;
color: var(--frost);
text-decoration: underline;
}
/* The one button that commits a move. */
.commit {
background: var(--bone);
color: var(--slate-deep);
border: 0;
border-radius: 4px;
padding: 0.6rem 1.4rem;
font-size: 1.05rem;
font-weight: 500;
}
.commit:hover:not(:disabled) {
background: #fff;
}
.commit.small {
padding: 0.4rem 0.9rem;
font-size: 1rem;
}
/* A bordered, unemphatic button: navigation, secondary actions. */
.quiet {
background: none;
border: 1px solid var(--rule-strong);
border-radius: 4px;
padding: 0.4rem 0.9rem;
white-space: nowrap;
color: var(--bone);
text-decoration: none;
line-height: 1.55;
}
.quiet:hover:not(:disabled) {
border-color: var(--bone);
}
.muted {
color: var(--bone-dim);
}
.warning {
color: var(--blood);
}
.eyebrow {
font-size: 0.85rem;
letter-spacing: 0.12em;
color: var(--bone-faint);
margin-bottom: 0.2rem;
}
.visually-hidden {
position: absolute;
width: 1px;
height: 1px;
overflow: hidden;
clip: rect(0 0 0 0);
}
@media (prefers-reduced-motion: reduce) {
*,
*::before,
*::after {
animation: none !important;
transition: none !important;
}
}