Files
CharacterGardenStack/charactergarden/frontend/src/styles.css

193 lines
3.0 KiB
CSS

:root {
font-family: "IBM Plex Sans", "Segoe UI", sans-serif;
color: #f4efe4;
background:
radial-gradient(circle at top left, rgba(199, 166, 106, 0.16), transparent 36%),
linear-gradient(160deg, #112419 0%, #1c3024 52%, #31261b 100%);
line-height: 1.5;
font-weight: 400;
}
* {
box-sizing: border-box;
}
body {
margin: 0;
min-width: 320px;
min-height: 100vh;
}
button,
textarea {
font: inherit;
}
.page-shell {
width: min(1400px, calc(100vw - 32px));
margin: 0 auto;
padding: 16px 0 24px;
}
.hero-panel {
padding: 20px;
border: 1px solid rgba(244, 239, 228, 0.16);
background: rgba(19, 24, 18, 0.68);
backdrop-filter: blur(12px);
border-radius: 20px;
box-shadow: 0 22px 70px rgba(0, 0, 0, 0.24);
}
.eyebrow {
text-transform: uppercase;
letter-spacing: 0.22em;
font-size: 0.78rem;
color: #dcbf8d;
}
h1,
h2,
h3,
p {
margin-top: 0;
}
h1 {
font-family: "Alegreya", Georgia, serif;
font-size: clamp(2.5rem, 4vw, 4.5rem);
margin-bottom: 12px;
}
.lede {
max-width: 58rem;
color: rgba(244, 239, 228, 0.78);
}
.turn-form {
display: grid;
gap: 8px;
margin-top: 12px;
}
.turn-form textarea {
width: 100%;
border: 1px solid rgba(244, 239, 228, 0.18);
background: rgba(12, 16, 12, 0.72);
color: inherit;
border-radius: 18px;
padding: 16px;
resize: vertical;
}
.actions-row {
display: grid;
gap: 8px;
}
.actions-row > button,
.chip {
border: 0;
border-radius: 999px;
padding: 12px 18px;
background: linear-gradient(135deg, #d8b16f, #a96c36);
color: #1d1b17;
cursor: pointer;
}
.chips {
display: flex;
flex-wrap: wrap;
gap: 10px;
}
.chip {
background: rgba(244, 239, 228, 0.08);
color: #f4efe4;
border: 1px solid rgba(244, 239, 228, 0.12);
}
.result-card,
.panel {
border-radius: 16px;
padding: 16px;
border: 1px solid rgba(244, 239, 228, 0.12);
background: rgba(11, 16, 12, 0.58);
}
.result-card {
margin-top: 12px;
}
.inspector-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px;
margin-top: 12px;
}
.entity-list,
.timeline-list {
list-style: none;
padding: 0;
margin: 0;
display: grid;
gap: 8px;
}
.entity-list li,
.timeline-list li {
padding: 10px 12px;
border-radius: 12px;
background: rgba(255, 255, 255, 0.03);
border: 1px solid rgba(255, 255, 255, 0.05);
}
.entity-list span {
display: inline-block;
margin-left: 8px;
opacity: 0.7;
}
pre {
white-space: pre-wrap;
word-break: break-word;
font-size: 0.75rem;
color: #cfd9c2;
margin: 4px 0 0 0;
padding: 4px 0;
}
.compact li {
padding: 8px 10px;
}
.error-banner {
margin-top: 16px;
color: #ffd2b8;
}
.parser-hint {
margin: 6px 0;
padding: 8px 10px;
border-radius: 10px;
border: 1px solid rgba(220, 191, 141, 0.3);
background: rgba(220, 191, 141, 0.1);
color: #f0d8aa;
font-size: 0.9rem;
}
@media (max-width: 900px) {
.inspector-grid {
grid-template-columns: 1fr;
}
.page-shell {
width: min(100vw - 20px, 1400px);
padding-top: 20px;
}
.hero-panel,
.panel {
padding: 14px;
}
}