Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/* CSS placed here will be applied to all skins */
html.skin-citizen-light {
--card-bg: rgb(221, 229, 242);
--card-text: #222222;
--card-link: #007acc;
}
html.skin-citizen-dark {
--card-bg: rgb(7, 10, 15);
--card-text: #dddddd;
--card-link: #66c0ff;
}
.card-carousel {
display: flex;
overflow-x: auto;
gap: 1rem;
padding: 1rem;
scroll-snap-type: x mandatory;
cursor: grab;
user-select: auto;
white-space: nowrap;
}
.card-carousel.dragging {
cursor: grabbing;
user-select: none;
}
.card {
flex: 0 0 200px;
height: auto; /* ensure it sizes naturally */
display: flex;
flex-direction: column;
background: var(--card-bg);
color: var(--card-text);
border: 1px solid var(--border-color-base); /* ← Outline here */
border-radius: 10px;
overflow: hidden;
box-shadow: 0 0px 0px rgba(0, 0, 0, 0);
transition: box-shadow 0.25s ease-in-out, transform 0.2s ease-in-out;
}
.card:hover {
transform: translateY(-3px);
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}
.image-wrapper {
width: 100%;
height: 160px;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
background-color: var(--card-bg);
text-align: center;
}
.image-wrapper * {
margin: 0 auto;
}
.image-wrapper img {
display: block;
max-height: 100%;
max-width: 100%;
object-fit: contain;
}
.card-content {
padding: 0.8rem;
display: flex;
flex-direction: column;
}
.card-title {
font-weight: bold;
font-size: 1rem;
color: var(--card-link);
}
.card-description {
font-size: 0.85rem;
color: var(--card-text);
line-height: 1.4;
display: -webkit-box;
-webkit-line-clamp: 5;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
border: 1px solid red;
min-height: calc(1.4em * 5); /* space for exactly 5 lines */
}
.card-description pre {
all: unset;
display: block;
white-space: normal;
word-wrap: break-word;
overflow-wrap: break-word;
line-height: 1.4;
font-size: inherit;
color: inherit;
}
.card-readmore {
text-align: right;
margin-top: 0.5rem;
}
.card-readmore a {
color: var(--card-link);
text-decoration: none;
font-size: 0.85rem;
}
.card-readmore a:hover {
text-decoration: underline;
}
.no-display {
display: none;
}