:root { color-scheme: light; font-family: Inter, ui-sans-serif, system-ui, sans-serif; color: #1d1b20; background: #fffaf6; }
* { box-sizing: border-box; }
body { margin: 0; }
a { color: #a33b17; }
button, input, select { font: inherit; }
.site-header { align-items: center; display: flex; font-size: .9rem; gap: .4rem; margin: 0 auto; max-width: 70rem; padding: 1.25rem 1.25rem 0; }
.site-header a { color: #1d1b20; font-weight: 800; text-decoration: none; }
.container { margin: 0 auto; max-width: 70rem; padding: 1.25rem; }
.hero { background: radial-gradient(circle at 85% 0%, #ffc59e, transparent 26rem), linear-gradient(130deg, #2f195e, #6d2e55); border-radius: 1.5rem; color: #fff; padding: clamp(2rem, 8vw, 5rem); }
.eyebrow { color: #be4e26; font-size: .78rem; font-weight: 800; letter-spacing: .12em; margin: 0 0 .7rem; }
.hero .eyebrow { color: #ffd3a8; }
h1, h2, p { margin-top: 0; }
h1 { font-size: clamp(2.3rem, 7vw, 5rem); letter-spacing: -.055em; line-height: 1.02; margin-bottom: 1.25rem; }
h2 { font-size: clamp(1.4rem, 4vw, 2rem); letter-spacing: -.03em; }
.hero p:last-child { font-size: clamp(1rem, 2.4vw, 1.25rem); line-height: 1.8; margin-bottom: 0; max-width: 40rem; }
.filters, .privacy-card { background: #fff; border: 1px solid #f0e5dc; border-radius: 1.25rem; margin-top: 1.25rem; padding: clamp(1.25rem, 4vw, 2rem); }
.filters { display: grid; gap: 1rem; grid-template-columns: 2fr 1fr 1fr; }
.filters label { color: #4c3c4c; display: grid; font-size: .9rem; font-weight: 800; gap: .4rem; }
.filters input, .filters select { background: #fffdfa; border: 1px solid #cfc1b8; border-radius: .65rem; color: #1d1b20; min-height: 2.8rem; padding: .55rem .7rem; }
.results { margin-top: 2.5rem; }
.results-heading { align-items: end; display: flex; justify-content: space-between; gap: 1rem; }
.results-heading h2 { margin-bottom: 0; }
#idea-count { color: #a33b17; font-size: 1.2rem; }
.idea-list { display: grid; gap: 1rem; list-style: none; margin: 1.25rem 0 0; padding: 0; }
.idea-card { background: #fff; border: 1px solid #f0e5dc; border-radius: 1.25rem; padding: clamp(1.25rem, 4vw, 2rem); }
.idea-card h2 { margin-bottom: .7rem; }
.description, .notes { line-height: 1.75; }
.description { font-size: 1.05rem; }
.notes { background: #fff8f2; border-radius: .75rem; color: #62493e; font-size: .92rem; margin-bottom: 0; padding: .8rem 1rem; }
.metadata, .tag-list { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; margin: 1rem 0; padding: 0; }
.metadata span, .tag-list li { border-radius: 99rem; font-size: .78rem; font-weight: 800; padding: .35rem .65rem; }
.status-badge { background: #f5e7ff; color: #642d7d; }.category-badge { background: #e7f3ff; color: #175c91; }.priority-badge { background: #fff0d9; color: #885016; }.tag-list li { background: #f4f0eb; color: #5f5265; }
.tool-link { background: #e95b2b; border-radius: .75rem; color: #fff; display: inline-flex; font-weight: 800; margin-top: 1rem; padding: .7rem 1rem; text-decoration: none; }.tool-link:hover { background: #cf4217; }
.status-message { background: #fff8f2; border: 1px solid #f0e5dc; border-radius: .75rem; color: #75401f; margin: 1.25rem 0 0; padding: 1rem; }
.privacy-card { margin-bottom: 2rem; }.privacy-card p { line-height: 1.8; margin-bottom: 0; }
@media (max-width: 38rem) { .site-header span { display: none; }.filters { grid-template-columns: 1fr; }.results-heading { align-items: start; flex-direction: column; } }