/* enh.css — 23 Oct 2026 second round (Rosner & Freund): timelines, yahrzeits, forms, unknown photos, relationship dropdowns */
.ex-actions{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 16px}
.btn.ex-yzbtn{background:var(--wine);color:#fff;border-color:var(--wine)}
.hero-actions .ex-yzbtn{background:var(--gold2,#c9a96a);color:#1d2a3a;border-color:var(--gold2,#c9a96a)}
.ex-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.ex-tab{min-height:44px;padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:var(--card);font:600 14px var(--sans);color:inherit;cursor:pointer}
.ex-tab.on{background:var(--wine);border-color:var(--wine);color:#fff}
.ex-chk{flex-direction:row!important;align-items:center;gap:8px!important;text-transform:none!important;letter-spacing:0!important;font:15px var(--sans)!important;min-height:44px}
.ex-chk input{width:20px;height:20px}
.ex-yzm{margin:22px 0}
.ex-yzm h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;font:400 26px/1.2 var(--serif);border-bottom:2px solid var(--gold);padding-bottom:6px;margin:0 0 10px}
.ex-yzm h2 small{font:13px var(--sans);color:var(--muted);flex-basis:100%}
.ex-yzr{display:grid;grid-template-columns:130px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.ex-yzr.focus{background:#fbf6ea;outline:2px solid var(--gold);outline-offset:4px}
.ex-yzd{text-align:center;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 6px;align-self:start}
.ex-yzd .he{display:block;font:600 22px/1.3 var(--serif);color:var(--wine)}
.ex-yzd .en{display:block;font:13px var(--sans);color:var(--muted);margin-top:4px}
.ex-yzb h3{font:600 19px/1.35 var(--serif);margin:0 0 4px}
.ex-yzb p{margin:4px 0}
.ex-obs{font:15px/1.6 var(--sans)}
.ex-flags{margin:6px 0;padding:8px 12px 8px 28px;background:#fff7e6;border-left:3px solid var(--gold);border-radius:6px;font:14px/1.5 var(--sans)}
.ex-yzr.unc .ex-flags li:first-child{font-weight:600}
.ex-links{font:14px var(--sans)}
.ex-how{margin:20px 0;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 16px;font:15px/1.6 var(--sans)}
.ex-how summary{cursor:pointer;font-weight:600;min-height:32px}
.ex-form{max-width:820px}
.ex-form fieldset{border:1px solid var(--line);border-radius:10px;padding:14px 16px 16px;margin:0 0 16px;background:var(--card)}
.ex-form legend{font:600 18px var(--serif);padding:0 6px}
.ex-form .lbl{margin:10px 0}
.ex-form .fx-in,.ex-form textarea,.ex-form select{width:100%;min-height:44px;font:16px var(--sans);text-transform:none;letter-spacing:0;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;box-sizing:border-box}
.ex-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 14px}
.ex-grid .wide{grid-column:1/-1}
.ex-radio{display:flex;flex-wrap:wrap;gap:6px 18px;margin:6px 0}
.ex-radio label{display:flex;align-items:center;gap:8px;min-height:44px;font:16px var(--sans)}
.ex-radio input{width:20px;height:20px}
.ex-private{background:#f4efe3;border-left:4px solid var(--wine);padding:10px 14px;border-radius:6px;font:15px/1.55 var(--sans)}
.ex-found{display:flex;flex-direction:column;gap:6px}
.ex-hit{display:block;width:100%;text-align:left;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;font:15px var(--sans);cursor:pointer;color:inherit}
.ex-hit small{color:var(--muted)}
.ex-hit.new{border-style:dashed}
.ex-chosen{background:#eef5ec;border-radius:8px;padding:8px 12px;font:15px var(--sans)}
.ex-dup p{margin:6px 0}.ex-dup{margin:8px 0}
.ex-dup:not(:empty){background:#fff7e6;border-left:3px solid var(--gold);padding:8px 12px;border-radius:6px}
.linkish{background:none;border:0;color:var(--wine);text-decoration:underline;cursor:pointer;font:inherit;padding:4px;min-height:32px}
.ex-dech{font:400 30px var(--serif);color:var(--wine);margin:26px 0 10px;border-bottom:1px solid var(--line);padding-bottom:4px}
.ex-row,.ex-uk{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.ex-pc,.ex-ukc{margin:0;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column}
.ex-pc .scan,.ex-ukc .scan{display:block;width:100%;border:0;padding:0;background:#efe9dc;cursor:zoom-in}
.ex-pc .scan img{width:100%;height:200px;object-fit:cover;display:block}
.ex-ukc .scan img{width:100%;height:260px;object-fit:cover;display:block}
.ex-pc figcaption,.ex-ukc figcaption{padding:10px 12px 14px;font:14.5px/1.5 var(--sans)}
.ex-date{display:block;font:600 16px var(--serif);color:var(--wine);margin-bottom:4px}
.ex-sug{margin-top:10px}
.ex-tl{list-style:none;padding:0;margin:0;border-left:2px solid var(--gold);margin-left:8px}
.ex-tlh{font:400 24px var(--serif);color:var(--wine);margin:18px 0 6px -9px;padding-left:0;background:var(--bg,#fff)}
.ex-ev{position:relative;display:grid;grid-template-columns:56px 1fr;gap:10px;padding:10px 0 10px 14px;font:15px/1.5 var(--sans)}
.ex-ev::before{content:"";position:absolute;left:-7px;top:17px;width:12px;height:12px;border-radius:50%;background:var(--card);border:2px solid var(--gold)}
.ex-ev.k-death::before{background:#7a6a58}.ex-ev.k-birth::before{background:#e9dfca}.ex-ev.k-marriage::before{background:var(--wine)}.ex-ev.k-migration::before{background:#2f5d7c}
.ex-ev.focus{background:#fbf6ea}
.ex-ev .y{font:600 16px var(--serif)}
.ex-ev p{margin:2px 0}
.ex-k{font:600 11.5px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ex-phl{font-size:13.5px}
.ex-recs ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:340px;overflow:auto}
.ex-recs li a{display:grid;grid-template-columns:56px 1fr;gap:10px;align-items:start;text-decoration:none;color:inherit;border:1px solid var(--line);border-radius:8px;padding:6px;background:#fff;font:13.5px/1.4 var(--sans)}
.ex-recs img{width:56px;height:56px;object-fit:cover;border-radius:4px}
.ex-recs small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.sheet-act{display:flex;flex-wrap:wrap;gap:8px}
.ex-rel .lbl{gap:6px}
.ex-rel .ex-filter{margin-bottom:4px}
@media (max-width:640px){
 .ex-yzr{grid-template-columns:1fr}
 .ex-yzd{display:flex;gap:10px;align-items:baseline;justify-content:center}
 .fx-rel.ex-rel{grid-template-columns:1fr}
 .ex-row,.ex-uk{grid-template-columns:1fr}
 .ex-ev{grid-template-columns:46px 1fr}
}

.ex-form .fx-in,.ex-rel .fx-in{flex:none!important;height:auto!important}
.ex-card{display:block;margin:12px 0;padding:12px 14px;border:1px solid var(--gold);border-radius:10px;background:#fbf6ea;text-decoration:none;color:inherit;font:15px var(--sans)}
.ex-card b{display:block;font:600 18px var(--serif);color:var(--wine)}
.ex-cardi{display:flex;gap:6px;margin-top:8px;overflow:hidden}.ex-cardi img{height:44px;width:auto;max-width:30%;object-fit:cover;border-radius:4px;border:1px solid var(--line)}
.ex-japan .story-in{max-width:760px;margin:10px auto 20px;font-size:18px;line-height:1.7}
.ex-route{background:var(--card);border-left:3px solid var(--gold);padding:10px 14px;border-radius:6px;font:15px/1.6 var(--sans)}
.ex-jpl{list-style:none;padding:0;margin:0 auto;max-width:900px;display:flex;flex-direction:column;gap:18px}
.ex-jp{display:grid;grid-template-columns:130px 1fr;gap:14px;align-items:start}
.ex-jpd{font:600 17px var(--serif);color:var(--wine);padding-top:6px}
.ex-jp figure{margin:0;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.ex-jp img{width:100%;display:block;background:#fff}
.ex-jp figcaption{padding:10px 12px;font:14.5px/1.5 var(--sans)}.ex-jp .cr{display:block;margin-top:4px}
@media (max-width:640px){.ex-jp{grid-template-columns:1fr}.ex-jpd{padding:0}}

/* shared form/list components (from the shared family UI, using this site's colours) */
.fx-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:14px 0 10px}
.fx-in{font:16px var(--sans);min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);max-width:100%}
.fx-count{font:14px var(--sans);color:var(--muted)}
.fx-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:10px 16px;border-radius:8px;border:1px solid var(--wine);background:var(--wine);color:#fff;font:600 15px var(--sans);text-decoration:none;cursor:pointer}
.fx-btn.ghost{background:transparent;color:var(--wine)}
.fx-plinks a,.fx-plinks button{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;margin:4px 6px 0 0;border:1px solid var(--line);border-radius:22px;background:var(--card);color:var(--wine);font:15px var(--sans);text-decoration:none;cursor:pointer}
.fx-note{font:14px/1.5 var(--sans);color:var(--muted)}
.fx-path{list-style:none;margin:12px 0;padding:0}
.fx-path li{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;margin:0 0 8px;background:var(--card);border:1px solid var(--line);border-radius:10px;font-size:16px}
.fx-path li.weak{border-color:var(--g2);background:#fffaf0}
.fx-path li .st{font:600 12px var(--sans);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);min-width:78px;padding-top:3px}
.fx-result{font:400 22px/1.4 var(--serif);margin:14px 0 6px}
.fx-filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin:6px 0 12px}
.fx-filters label,.lbl{display:flex;flex-direction:column;gap:5px;font:600 12px/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.fx-filters .wide{grid-column:1/-1}
.fx-filters input,.fx-filters select{width:100%;min-height:44px;font:16px var(--sans);text-transform:none;letter-spacing:0;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;box-sizing:border-box}
.fx-rel{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fx-rel .fx-in{width:100%;flex:none;height:auto;text-transform:none;letter-spacing:0;box-sizing:border-box}
.cr{font:13px/1.45 var(--sans);color:var(--muted);margin-top:6px}
.fx-a{min-width:0}
.ex-strip{font:15px/1.6 var(--sans);color:var(--muted);margin:4px 0 0}
.ex-strip a{color:var(--wine);font-weight:600}
@media (max-width:640px){.fx-filters{grid-template-columns:1fr 1fr}.fx-rel{grid-template-columns:1fr}}

/* type-ahead name boxes (relationship finder, 23 Oct 2026) */
.ta{position:relative}
.ta-box{position:relative;display:flex;align-items:stretch}
.ex-rel .ta-in,.fx-rel .ta-in{width:100%;min-height:50px;font-size:17px;padding:10px 88px 10px 14px;box-sizing:border-box}
.ta-in.ta-set{border-color:var(--ink);font-weight:600}
.ta-all,.ta-x{position:absolute;top:0;bottom:0;width:44px;border:0;background:transparent;color:var(--muted,#667);font-size:20px;line-height:1;cursor:pointer;padding:0}
.ta-all{right:0;border-left:1px solid var(--line)}
.ta-x{right:44px;font-size:24px}
.ta-in:placeholder-shown~.ta-x{display:none}
.ta-list{position:absolute;left:0;right:0;top:100%;z-index:40;margin:4px 0 0;padding:4px 0;list-style:none;background:var(--card,#fff);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 28px rgba(20,30,45,.18);max-height:min(60vh,360px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.ta-list[hidden]{display:none}
.ta-opt{min-height:48px;padding:11px 14px;display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;cursor:pointer;border-bottom:1px solid rgba(0,0,0,.05);font-size:16px;line-height:1.3}
.ta-opt small{color:var(--muted,#667);font-size:13px}
.ta-opt:hover,.ta-opt.on{background:rgba(29,42,58,.08)}
.ta-opt mark{background:rgba(201,162,39,.35);color:inherit;padding:0;border-radius:2px}
.ta-count,.ta-none{padding:8px 14px;font-size:13px;color:var(--muted,#667)}
@media (max-width:600px){.ex-rel .ta-in,.fx-rel .ta-in{font-size:16px}.ta-list{max-height:55vh}}

.ex-yznext{margin:0 0 14px;padding:12px 16px;border-left:4px solid var(--gold);background:var(--card);font:16px/1.4 var(--sans)}

/* the family's yahrzeit list (25 Oct 2026) */
.ex-yzother{margin:28px 0 8px}.ex-yzother h2{font-size:1.25rem;margin:0 0 4px}.ex-yzother h3{font-size:1rem;margin:14px 0 6px}.ex-yzother ul{margin:0;padding-left:20px;line-height:1.6}
