.greeting-puzzle-picker{min-width:0;margin:0;padding:20px;border:1px solid #e4d9ca;border-radius:18px;background:#fffdf8}
.greeting-puzzle-picker[hidden]{display:none}
.greeting-puzzle-picker legend{padding:0 7px;font-size:17px;font-weight:700;color:#443d33}
.greeting-puzzle-picker>p{font-size:13px;line-height:1.6;color:#776f62;margin:0 0 16px}
.greeting-puzzle-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.greeting-puzzle-choice{position:relative;min-width:0;cursor:pointer}
.greeting-puzzle-choice input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.greeting-puzzle-choice__content{height:100%;display:flex;flex-direction:column;overflow:hidden;border:2px solid #e4d9ca;border-radius:12px;background:#fff;transition:border-color .15s,box-shadow .15s}
.greeting-puzzle-choice img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.greeting-puzzle-choice__content>span{padding:10px 11px;font-size:12px;font-weight:600;line-height:1.45;color:#4b453c}
.greeting-puzzle-choice input:checked+.greeting-puzzle-choice__content{border-color:#ab3b6f;box-shadow:0 0 0 2px #ab3b6f1a}
.greeting-puzzle-choice input:checked+.greeting-puzzle-choice__content>span:before{content:'✓ ';color:#ab3b6f}
.greeting-puzzle-choice input:focus-visible+.greeting-puzzle-choice__content{outline:3px solid #ab3b6f;outline-offset:3px}
.greeting-puzzle-choice input:disabled+.greeting-puzzle-choice__content{opacity:.65;cursor:default}
.greeting-puzzle-picker>p.greeting-puzzle-selection{font-weight:650;color:#6a3f52;margin:14px 0 0}
@media(max-width:380px){.greeting-puzzle-picker{padding:14px}.greeting-puzzle-gallery{gap:8px}.greeting-puzzle-choice__content>span{padding:8px;font-size:11px}}
