GULLBERG sanatorium: første utkast, bygget av treneren
Deploy instance / deploy (push) Failing after 0s
lint-and-reload / lint (push) Failing after 2s

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GT37Z1Xtfd9pUuQtMTg6Yt
This commit is contained in:
blandClaude Opus 5.5 committed 2026-10-01 07:36:15 +02:00
commit bbec51f476
45 files changed
+2306

No files matched your search

+215
View File
@@ -0,0 +1,215 @@
/* GULLBERG sanatorium - the skin over portal's own stylesheet
(site.yaml `stylesheet`, loaded after main.css, so these rules win).
One idea: a sanatorium from the thirties. Lime-washed plaster, pine
green for what is ruled and pressed, brass for what leads somewhere,
Futura capitals spaced like the wordmark for what is asked, and a
calm serif for what is said. Both colour schemes are drawn; the page
follows the reader's. */
@import url('https://fonts.googleapis.com/css2?family=Spectral:ital,wght@0,400;0,500;1,400&display=swap');
@font-face {
font-family: "FuturaNow";
font-weight: 500;
font-display: swap;
src: url("/site/fonts/futura-medium.ttf") format("truetype");
}
/* ---- colour: light, then dark ---------------------------------- */
:root {
--pine: #2f4a3a;
--accent: #8a6420;
--accent-soft: rgba(138, 100, 32, 0.12);
--paper: #f3f1ea;
--ink: #1d2420;
--ink-dim: #5c625c;
--line: #d9d5c8;
--card-bg: #fbfaf6;
--card-bg-opaque: #fbfaf6;
--card-shadow: rgba(30, 45, 35, 0.08);
--field: #ffffff;
--hero-glow: rgba(243, 241, 234, 0.85);
--error: #9b2c1f;
--heading: "FuturaNow", "Futura", "Century Gothic", sans-serif;
--sans: "Spectral", Georgia, "Times New Roman", serif;
--radius: 0.25rem;
--measure: 46rem;
color-scheme: light;
}
@media (prefers-color-scheme: dark) {
:root {
/* Pine is too dark to read as text on a dark ground; brass is the
accent there, and pine stays for what is filled. */
--pine: #3d6150;
--accent: #d6b46a;
--accent-soft: rgba(214, 180, 106, 0.16);
--paper: #121614;
--ink: #ece8de;
--ink-dim: #a9aba3;
--line: #2c3430;
--card-bg: #1a201d;
--card-bg-opaque: #1a201d;
--card-shadow: rgba(0, 0, 0, 0.45);
--field: #121614;
--hero-glow: rgba(18, 22, 20, 0.85);
--error: #f08c7c;
color-scheme: dark;
}
}
/* ---- type ------------------------------------------------------- */
body {
font-family: var(--sans);
font-size: 1.06rem;
line-height: 1.55;
}
h1, h2, h3 {
font-family: var(--heading);
font-weight: 500;
line-height: 1.15;
}
/* What is asked is set like the wordmark: capitals, spaced. */
.hero-copy h1,
.alt-card h2 {
text-transform: uppercase;
letter-spacing: 0.12em;
}
/* ---- the top ---------------------------------------------------- */
.hero {
align-items: stretch;
text-align: left;
}
.hero:not(.hero-slides),
.hero-bar,
.hero-slides .hero-copy {
width: 100%;
max-width: var(--measure);
margin-inline: auto;
box-sizing: border-box;
}
.wordmark {
opacity: 1;
}
.session {
font-family: var(--heading);
font-size: 0.82rem;
letter-spacing: 0.06em;
}
.hero-copy {
display: flex;
flex-direction: column;
align-items: flex-start;
text-align: left;
gap: 0.5rem;
}
.hero-copy h1 {
margin: 0.4rem 0 0;
font-size: clamp(1.5rem, 1rem + 2.2vw, 2.2rem);
}
.hero-copy p {
margin: 0;
max-width: 34rem;
font-size: 1.12rem;
color: var(--ink-dim);
}
/* ---- the cards -------------------------------------------------- */
.alternatives {
max-width: var(--measure);
gap: 1.4rem;
}
/* A card on the reading-room table: flat, a pine rule on its left. */
.alt-card {
background: var(--card-bg);
border: 0.06rem solid var(--line);
border-left: 0.3rem solid var(--pine);
border-radius: var(--radius);
box-shadow: 0 0.4rem 1.2rem var(--card-shadow);
padding: 1.6rem 1.8rem 1.7rem;
backdrop-filter: none;
}
.alt-card h2 {
font-size: 1.15rem;
margin: 0 0 0.45rem;
}
.feature h3,
.feature-name {
font-family: var(--heading);
letter-spacing: 0.04em;
}
.feature p a,
.alt-description a,
.hero-copy p a {
color: var(--accent);
border-bottom-color: var(--accent);
}
.alt-encouragement {
color: var(--ink-dim);
font-style: italic;
}
/* ---- forms ------------------------------------------------------ */
.field-label {
font-family: var(--heading);
font-size: 0.78em;
letter-spacing: 0.06em;
text-transform: uppercase;
color: var(--ink);
}
input,
textarea,
.select-option {
background: var(--field);
border-color: var(--line);
border-radius: 0.2em;
}
.select-option {
border-radius: 999rem;
}
.select-option.selected {
background: var(--pine);
border-color: var(--pine);
color: #f3f1ea;
}
.alt-submit {
font-family: var(--heading);
letter-spacing: 0.12em;
text-transform: uppercase;
background: var(--pine);
color: #f3f1ea;
border-radius: 0.2em;
}
/* ---- the foot --------------------------------------------------- */
.question-nav,
.down-the-tree-foot,
.question-responsible {
font-family: var(--heading);
letter-spacing: 0.04em;
}