/* Bump 2 · El mapa de las mujeres de la Biblia */
.menu{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.menu button{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 12px;text-align:left;cursor:pointer;box-shadow:var(--shadow)}
.menu button b{display:block;font-family:var(--head);font-size:1.25rem;color:var(--ink);line-height:1.1;margin:4px 0 2px}
.menu button span{font-size:.85rem;color:var(--muted)}
.menu button i{font-style:normal;font-size:1.4rem}
.stepper{display:flex;align-items:center;gap:10px;margin:6px 0 4px}
.stepper button{width:42px;height:42px;border-radius:50%;border:1.5px solid var(--terra);background:var(--card);color:var(--terra);font-size:1.3rem;font-weight:700;cursor:pointer}
.stepper strong{font-family:var(--head);font-size:1.5rem;min-width:90px;text-align:center}
.tl{position:relative;padding-left:30px}
.tl:before{content:'';position:absolute;left:10px;top:8px;bottom:8px;width:3px;background:var(--line);border-radius:3px}
.tl .ep{position:relative;display:block;width:100%;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:12px 14px;margin-bottom:10px;cursor:pointer;box-shadow:var(--shadow)}
.tl .ep:before{content:'';position:absolute;left:-26px;top:16px;width:15px;height:15px;border-radius:50%;background:var(--c);box-shadow:0 0 0 4px var(--bg)}
.tl .ep.on{border-color:var(--c);box-shadow:0 0 0 2px var(--c)}
.tl .ep b{font-family:var(--head);font-size:1.3rem;color:var(--c);display:block;line-height:1.1}
.tl .ep small{color:var(--muted);font-weight:700;font-size:.8rem}
.faces{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.faces img{width:40px;height:53px;object-fit:cover;border-radius:7px}
.wgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.wgrid button{background:none;border:0;padding:0;cursor:pointer;text-align:center;font-size:.8rem;line-height:1.15;color:var(--ink)}
.wgrid img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:10px;box-shadow:0 4px 10px rgba(62,47,37,.15);margin-bottom:4px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 10px}
.chip{border:1.5px solid var(--line);background:var(--card);border-radius:999px;padding:6px 12px;font-size:.88rem;font-weight:700;color:var(--terra-dark);cursor:pointer}
.chip.sage{color:var(--sage)}
.mapwrap{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#D9E6E3}
.mapwrap img{width:100%;display:block}
.pin{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;border:2.5px solid #fff;background:var(--terra);box-shadow:0 2px 6px rgba(0,0,0,.3);cursor:pointer;padding:0}
.pin.on{background:var(--sage);transform:scale(1.35);z-index:3}
.pin.dim{opacity:.35}
.plabel{position:absolute;font-size:.68rem;font-weight:700;color:var(--ink);background:rgba(255,253,249,.82);padding:0 4px;border-radius:4px;pointer-events:none;white-space:nowrap;transform:translate(10px,-50%)}
.plabel.l{transform:translate(calc(-100% - 10px),-50%)}
.fam{border-top:1px solid var(--line);padding:10px 0;display:flex;gap:10px;align-items:center}
.fam:first-of-type{border-top:0}
.fam img{width:46px;height:61px;object-fit:cover;border-radius:8px;cursor:pointer;flex:none}
.fam .ph{width:46px;height:61px;border-radius:8px;background:var(--cream);flex:none;display:flex;align-items:center;justify-content:center;color:var(--muted)}
.fam b{display:block}
.fam span{color:var(--muted);font-size:.92rem}
.ficha-top{display:flex;gap:16px;align-items:flex-start}
.ficha-top img{width:120px;border-radius:12px;box-shadow:0 6px 16px rgba(62,47,37,.18);flex:none}
.plan label{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-top:1px solid var(--line);cursor:pointer}
.plan label:first-child{border-top:0}
.plan input{width:22px;height:22px;accent-color:var(--sage);flex:none;margin-top:2px}
.plan .done{color:var(--muted);text-decoration:line-through}
.clue{background:var(--cream);border-radius:12px;padding:10px 14px;margin:6px 0;font-weight:600}
.clue small{color:var(--terra);font-weight:800;margin-right:6px}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.opts button{border:1.5px solid var(--line);background:var(--card);border-radius:14px;padding:12px 8px;font-weight:700;cursor:pointer;font-size:.95rem}
.opts button.bad{border-color:#C9A39A;color:#B07A6A;text-decoration:line-through}
.opts button.good{border-color:var(--sage);background:var(--sage-soft);color:var(--sage)}
.score{font-family:var(--head);font-size:2.2rem;color:var(--terra);line-height:1}
