.chooser{max-width:1280px;margin:auto}.chooser>h2{max-width:850px}.chooser-intro{max-width:760px;font-size:1.125rem}.chooser fieldset{padding:0;border:0;margin:28px 0}.chooser legend{font-size:1rem;font-weight:600;margin-bottom:16px}.chooser-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.chooser-option{position:relative;display:flex;gap:16px;align-items:center;padding:20px;border:1px solid #d8c5dd;border-radius:16px;background:#fcf8fc;cursor:pointer;font-size:1rem;line-height:1.6}.chooser-option input{position:absolute;opacity:0;width:1px;height:1px}.chooser-option .doodle-heart{width:25px;height:28px}.chooser-option:has(input:checked){background:#f1e0f1;border-color:#92375f}.chooser-option input:checked+.doodle-heart path{fill:#ba648e;stroke:#703650}.chooser-option:has(input:focus-visible){outline:3px solid #703650;outline-offset:3px}.chooser-option:hover{border-color:#92375f}.chooser-option:last-child{grid-column:1/-1}.chooser-home-link{margin-top:20px;display:flex;gap:12px;align-items:center}.chooser-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}.chooser-card{display:flex;flex-direction:column;padding:26px;border:1px solid #dccbdf;border-radius:18px;background:linear-gradient(145deg,#faf4fd,#fff8fa);min-width:0}.chooser-card h4{font-family:'Cormorant Garamond',serif;font-size:1.8rem;line-height:1.2;margin:0 0 20px}.chooser-card p{font-size:1rem;line-height:1.7}.chooser-card .button{margin-top:auto;justify-content:center;text-align:center;white-space:normal;font-size:1rem}.chooser-card.is-match{border:2px solid #92375f}.chooser-match{color:#703650;font-weight:600}.chooser-match .doodle-heart path{fill:#e9bdd7}.chooser #chooser-results{margin-top:34px;scroll-margin-top:24px}.chooser #chooser-results>h3{font-size:2rem}.chooser #chooser-status{margin-top:16px;min-height:1.5em;color:#703650}@media(max-width:850px){.chooser-cards{grid-template-columns:1fr}.chooser-options{grid-template-columns:1fr}.chooser-option:last-child{grid-column:auto}.chooser-card{padding:24px}.chooser-card .button{align-self:flex-start}.chooser-option{padding:16px}}
