.showcase { padding-top: 8rem; }
.showcase .section-container { max-width: 1160px; }
.showcase section { margin-block: 3rem; scroll-margin-top: 7rem; }
.showcase-intro { max-width: 850px; padding-block: 1rem 2rem; }
.showcase-eyebrow { color: var(--accent); font-weight: 800; letter-spacing: .15em; font-size: .8rem; }
.showcase h1 { font: 800 clamp(2.4rem, 6vw, 4.5rem)/1.1 var(--font-heading); margin-block: 1rem; }
.showcase h2 { font: 700 clamp(1.5rem, 3vw, 2rem)/1.3 var(--font-heading); margin-bottom: .9rem; }
.showcase h3 { font: 700 1.2rem/1.4 var(--font-heading); }
.showcase p { line-height: 1.8; margin-block: .7rem; overflow-wrap: anywhere; }
.showcase nav { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.showcase a { color: var(--accent); text-underline-offset: .2em; }
.showcase nav a { border: 1px solid var(--border-color); border-radius: 999px; padding: .8rem 1.1rem; text-decoration: none; }
.showcase-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 1.5rem; }
.showcase article, .showcase form, .showcase-empty { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 1.5rem; min-width: 0; }
.showcase article img { width: 100%; aspect-ratio: 16 / 10; object-fit: contain; background: var(--bg-main); border-radius: 10px; margin-block: .75rem; }
.showcase article h2 { font-size: 1.4rem; }
.showcase article form { padding: 1rem 0 0; border: 0; border-top: 1px solid var(--border-color); border-radius: 0; background: transparent; }
.showcase-empty { border-style: dashed; color: var(--text-muted); }
.showcase form { display: flex; flex-direction: column; gap: 1rem; margin-block: 1rem; }
.showcase label { display: flex; flex-direction: column; gap: .5rem; font-weight: 600; line-height: 1.7; }
.showcase label:has(input[type="checkbox"]) { display: block; font-weight: 400; }
.showcase input:not([type="hidden"]):not([type="checkbox"]), .showcase select, .showcase textarea { width: 100%; min-width: 0; border: 1px solid var(--border-color); background: var(--bg-main); color: var(--text-main); padding: .9rem; border-radius: 8px; font: inherit; }
.showcase textarea { min-height: 130px; resize: vertical; }
.showcase input[type="checkbox"] { width: 1.15rem; height: 1.15rem; accent-color: var(--accent); margin-right: .5rem; vertical-align: middle; }
.showcase button { align-self: flex-start; min-height: 44px; border: 1px solid var(--accent); border-radius: 8px; background: var(--accent); color: #080b10; padding: .75rem 1.15rem; font: 700 1rem var(--font-body); cursor: pointer; }
.showcase button:disabled { opacity: .5; cursor: not-allowed; }
.showcase button[value="reject"], .showcase button[value="unfeature"] { background: transparent; color: var(--text-main); border-color: var(--text-muted); }
.showcase :is(a, button, input, select, textarea):focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; }
.showcase-alert { padding: 1rem; border: 1px solid #f87171; border-radius: 10px; color: #fecaca; }
@media (max-width: 600px) {
    .showcase { padding-top: 6rem; }
    .showcase article, .showcase form, .showcase-empty { padding: 1rem; }
    .showcase nav a { flex-grow: 1; text-align: center; }
    .showcase button { width: 100%; }
}
