.showcase-page { padding-top: 8rem; }
.showcase-intro { max-width: 850px; margin-bottom: 3rem; }
.showcase-intro h1 { font-size: clamp(2.6rem, 5vw, 4rem); line-height: 1.07; margin: .75rem 0 1.25rem; }
.showcase-intro .lead { max-width: 65ch; }
.showcase-install { display: flex; flex-wrap: wrap; gap: .8rem; margin: 1.8rem 0 1.2rem; }
.showcase-import-note { color: var(--muted); font-size: .85rem; line-height: 1.7; max-width: 85ch; }
.showcase-import-note strong { color: var(--text); font-weight: 500; }
.showcase-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
.showcase-board { min-width: 0; border: 1px solid var(--panel-border); border-radius: 20px; overflow: hidden; background: var(--panel); }
.showcase-image { display: block; position: relative; background: var(--bg-2); }
.showcase-image img { display: block; width: 100%; height: auto; }
.showcase-image > span { display: block; padding: .65rem 1.25rem; border-bottom: 1px solid var(--panel-border); color: var(--muted); font-size: .75rem; }
.showcase-image > span span { float: right; }
.showcase-image:hover > span { color: var(--text); }
.showcase-copy { padding: 1.5rem; }
.showcase-title { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .6rem; }
.showcase-title h2 { font-size: 1.45rem; }
.showcase-theme { padding: .25rem .6rem; border: 1px solid var(--panel-border); border-radius: 20px; color: #b8c8ff; font-size: .7rem; text-transform: capitalize; }
.showcase-copy p { color: var(--muted); font-size: .95rem; line-height: 1.7; margin: .8rem 0 1.1rem; }
.showcase-features { display: flex; flex-wrap: wrap; gap: .4rem; padding: 0; margin: 0 0 1.3rem; list-style: none; }
.showcase-features li { color: var(--muted); font-size: .7rem; background: rgba(109,139,255,.07); padding: .25rem .55rem; border-radius: 5px; }
.showcase-actions { display: flex; flex-wrap: wrap; gap: .8rem 1.4rem; border-top: 1px solid var(--panel-border); padding-top: 1.1rem; }
.showcase-actions a { color: #b8c8ff; font-size: .85rem; }
.showcase-actions a:hover { text-decoration: underline; text-underline-offset: 4px; }
.showcase-provenance { max-width: 800px; margin: 4rem auto 0; padding-top: 2rem; border-top: 1px solid var(--panel-border); }
.showcase-provenance h2 { font-size: 1.5rem; margin-bottom: 1rem; }
.showcase-provenance p { color: var(--muted); margin-bottom: 1rem; }
.showcase-provenance a { color: #b8c8ff; }
@media (max-width: 760px) {
    .showcase-grid { grid-template-columns: 1fr; }
    .showcase-page { padding-top: 6rem; }
    .showcase-copy { padding: 1.25rem; }
    .showcase-install .btn { width: 100%; text-align: center; }
}

.showcase-background { margin: 0 0 1.25rem; color: var(--muted); font-size: .8rem; }
.showcase-background summary { cursor: pointer; color: #b8c8ff; }
.showcase-background p { font-size: .8rem; }
.showcase-background code { display: block; max-height: 10rem; overflow: auto; white-space: pre-wrap; overflow-wrap: anywhere; padding: .8rem; border-radius: 8px; background: var(--bg-2); margin: .8rem 0; }
.showcase-background a { color: #b8c8ff; text-decoration: underline; text-underline-offset: 3px; }
.showcase-copy .showcase-photo-credit,
.showcase-copy .showcase-favicon-note { font-size: .75rem; }
.showcase-photo-credit a { color: #b8c8ff; text-decoration: underline; text-underline-offset: 3px; }
