:root{--bg:#091113;--panel:#101b1d;--panel2:#142225;--ink:#eef5f1;--muted:#9fb2ad;--line:#26383a;--gold:#d8aa54;--teal:#59c3b1;--red:#e67a73;--radius:18px;--shadow:0 16px 44px rgba(0,0,0,.22)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 10% 0,#12282a 0,transparent 38%),var(--bg);color:var(--ink);font:15px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:28px;padding:14px max(20px,calc((100vw - 1200px)/2));background:rgba(9,17,19,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-size:20px;font-weight:800;white-space:nowrap}.mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid #8e7038;border-radius:11px;background:linear-gradient(145deg,#2f2616,#191710);color:#f4cd7a}.accent{color:var(--gold)}nav{margin-left:auto;display:flex;gap:6px}nav a{color:var(--muted);text-decoration:none;padding:8px 10px;border-radius:10px}nav a:hover,nav a.active{background:var(--panel2);color:var(--ink)}.nav-toggle{display:none;margin-left:auto;background:none;border:0;color:var(--ink);font-size:22px}main{max-width:1200px;margin:auto;padding:42px 20px 70px}.hero{padding:46px 0 28px;display:grid;grid-template-columns:1.25fr .75fr;gap:28px;align-items:center}.eyebrow{color:var(--gold);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:12px}h1{font-size:clamp(40px,7vw,76px);line-height:.98;margin:10px 0 18px;letter-spacing:-.045em}h2{font-size:28px;margin:0 0 8px}h3{margin:0 0 6px}.lead{font-size:19px;color:#c5d5d1;max-width:760px}.hero-box,.card,.toolbox{background:linear-gradient(180deg,rgba(20,34,37,.95),rgba(15,27,29,.95));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.hero-box{padding:24px}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stat{padding:16px;background:#0c1719;border-radius:14px;border:1px solid #203235}.stat b{display:block;font-size:28px;color:#fff}.stat span{color:var(--muted);font-size:13px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{padding:22px}.card p{color:var(--muted);min-height:48px}.card a,.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#111;background:var(--gold);border:0;border-radius:11px;padding:10px 14px;font-weight:800;cursor:pointer}.button.secondary{background:#1c3032;color:var(--ink);border:1px solid #345052}.button.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.muted,.hint{color:var(--muted)}.toolbox{padding:22px;margin:18px 0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field.wide{grid-column:1/-1}label{font-weight:700;font-size:13px;color:#cbd8d5}input,select,textarea{width:100%;background:#081214;color:var(--ink);border:1px solid #2c4245;border-radius:11px;padding:11px 12px;font:inherit;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(89,195,177,.1)}textarea{min-height:116px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.notice{padding:13px 15px;border-left:3px solid var(--teal);background:#0d1b1d;border-radius:9px;color:#c7d8d3;margin:14px 0}.notice.warn{border-color:var(--gold)}.notice.error{border-color:var(--red)}table{width:100%;border-collapse:collapse;background:rgba(8,18,20,.58);border-radius:12px;overflow:hidden}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid #203033}th{font-size:12px;color:#a9bbb7;text-transform:uppercase;letter-spacing:.05em}td.num{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.pill{display:inline-block;padding:3px 8px;border-radius:999px;background:#1a3031;color:#bfe2db;font-size:12px}.pill.gold{background:#332816;color:#f4ca77}.results-head{display:flex;justify-content:space-between;align-items:center;margin:24px 0 10px}.searchbar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin-bottom:14px}.sample-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.sample{padding:16px;border:1px solid var(--line);border-radius:14px;background:#0e191b}.sample small{color:var(--muted)}.sample .raw{font:11px/1.4 ui-monospace,monospace;color:#7f9893;word-break:break-word;margin-top:8px}.pca-wrap{position:relative;background:#071113;border:1px solid var(--line);border-radius:14px;overflow:hidden}.pca-wrap svg{display:block;width:100%;height:auto}.legend{display:flex;gap:14px;flex-wrap:wrap;margin:10px 0}.legend span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.dot{width:9px;height:9px;border-radius:50%;background:var(--teal)}.dot.anc{background:var(--gold)}.dot.target{background:#fff}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#071113;border:1px solid var(--line);padding:12px;border-radius:12px;overflow:auto}footer{max-width:1200px;margin:auto;padding:25px 20px 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:#78908b;font-size:12px}.loading{padding:80px;text-align:center;color:var(--muted)}@media(max-width:820px){.hero{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}.form-grid,.sample-grid{grid-template-columns:1fr}.searchbar{grid-template-columns:1fr}.nav-toggle{display:block}nav{display:none;position:absolute;top:63px;left:0;right:0;padding:12px 20px;background:#091315;border-bottom:1px solid var(--line);flex-direction:column}nav.open{display:flex}}@media(max-width:560px){main{padding-top:24px}.grid{grid-template-columns:1fr}footer{flex-direction:column}.stat-grid{grid-template-columns:1fr 1fr}}
.mode-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line)}.mode-tab{appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;font-weight:800;letter-spacing:.04em;padding:10px 14px;cursor:pointer;border-radius:10px 10px 0 0}.mode-tab:hover,.mode-tab.active{background:var(--panel2);color:var(--ink)}.source-panel{margin-top:18px;padding-top:17px;border-top:1px solid var(--line)}.source-panel-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px}.source-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.check-card{display:flex;align-items:flex-start;gap:9px;padding:11px;border:1px solid var(--line);border-radius:12px;background:#0b1517;cursor:pointer}.check-card input{width:auto;margin-top:3px;accent-color:var(--gold)}.check-card span{display:flex;flex-direction:column;line-height:1.25}.check-card small{color:var(--muted);margin-top:4px}.actions.compact{margin-top:10px}.button.small{padding:7px 10px;font-size:12px}.featured{border-color:#5b4930}.admix-result{margin:22px 0;padding:22px;background:linear-gradient(180deg,rgba(20,34,37,.97),rgba(11,22,24,.97));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.admix-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.admix-result-head h3{font-size:20px;margin-top:3px}.fit-box{text-align:right;display:flex;flex-direction:column;padding:8px 11px;border:1px solid var(--line);border-radius:12px;background:#091416;min-width:150px}.fit-box span,.fit-box small{color:var(--muted);font-size:11px}.fit-box b{font-size:18px}.fit-meta{color:var(--muted);font-size:12px;margin:10px 0 16px}.component-list{display:flex;flex-direction:column;gap:10px}.component-row{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center}.component-pct{text-align:right;font-weight:800}.component-label{font-weight:700;margin-bottom:5px}.bar-track{height:8px;background:#243235;border-radius:999px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--gold),#f0c874);border-radius:999px}.detail{margin-top:18px;border-top:1px solid var(--line);padding-top:12px}.detail summary{cursor:pointer;color:#c8d6d2;font-weight:700}.detail-table{margin-top:10px}.detail-table table{font-size:13px}@media(max-width:820px){.source-groups{grid-template-columns:1fr 1fr}}@media(max-width:560px){.source-groups{grid-template-columns:1fr}.admix-result-head{flex-direction:column}.fit-box{text-align:left;width:100%}.component-row{grid-template-columns:60px 1fr}}
.chronology-banner{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:15px 17px;margin:14px 0;background:linear-gradient(90deg,rgba(216,170,84,.12),rgba(89,195,177,.06));border:1px solid #4b412c;border-radius:14px}.chronology-banner>div{display:flex;flex-direction:column}.chronology-banner span,.chronology-banner p{color:var(--muted);font-size:13px}.chronology-banner p{max-width:650px;margin:0}.adna-filters{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:10px;margin-bottom:12px}.adna-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.adna-card{padding:18px;background:linear-gradient(180deg,rgba(20,34,37,.95),rgba(13,24,26,.95));border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.adna-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.adna-date{font-weight:800;color:#d7e0dd;text-align:right}.adna-card h3{font-size:22px;margin:11px 0 0}.adna-site{color:var(--muted);margin-bottom:13px}.meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.meta-grid div{padding:9px 10px;background:#0a1517;border:1px solid #1f3033;border-radius:10px}.meta-grid span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.meta-grid b{display:block;font-size:13px;margin-top:2px}.pill.prov-a1{background:#14372e;color:#aee7d2}.pill.prov-b1{background:#17323b;color:#aed8e7}.pill.prov-b2{background:#3a3020;color:#f0cf8d}.pill.canonical{background:#17372c;color:#9fe4c3}.muted-pill{background:#252d2e;color:#91a09d}.detail-copy{font-size:13px;color:var(--muted)}.detail-copy b{color:#cfdad7}@media(max-width:980px){.adna-filters{grid-template-columns:1fr 1fr}.adna-grid{grid-template-columns:1fr}}@media(max-width:560px){.adna-filters{grid-template-columns:1fr}.chronology-banner{align-items:flex-start;flex-direction:column}.adna-card-top{flex-direction:column}.adna-date{text-align:left}}

/* v0.4 */
.modern-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:14px}.modern-search{grid-template-columns:2fr 1fr}.modern-card h3{margin-top:12px}.pill.role{background:#202d32;color:#b8c8cc}.pill.role-core{background:#17372c;color:#9fe4c3}.pill.role-context{background:#17323b;color:#aed8e7}.pill.role-historical{background:#3a3020;color:#f0cf8d}.pill.role-distance_only{background:#30252c;color:#d9b6c9}.qc-line{margin-top:10px;padding:8px 10px;border-radius:10px;background:#0a1517;border:1px solid #273639;color:#b7c7c3;font-size:12px}.qc-line b{color:#dce7e4}@media(max-width:720px){.modern-search{grid-template-columns:1fr}}

/* v0.5 chronology badges */
.date-pill{margin-left:0}.date-direct-radiocarbon{border-color:rgba(82,190,128,.45)}.date-estimated-genetic-archaeological,.date-site-context-minimum{border-color:rgba(233,184,76,.45)}

/* v0.6 generated-average provenance */
.pill.experimental{background:#40251f;color:#f0b7a7;border:1px solid #704036}.experimental-toggle .check-card{border-color:#5b3b31}.toolbox a{color:#d9b061}

/* v0.9 chronology-aware preset modelling + sample profiles */
.section-divider{display:flex;align-items:center;gap:14px;margin:34px 0 12px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.section-divider:before,.section-divider:after{content:"";height:1px;background:var(--line);flex:1}.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.source-preview{margin-top:18px;padding:15px;border:1px solid var(--line);border-radius:14px;background:#0a1517}.source-chip-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.source-chip{padding:5px 8px;border:1px solid #294044;background:#0d1c1f;color:#b9cbc6;border-radius:999px;font-size:11px}.profile-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:22px;margin:16px 0 20px;background:linear-gradient(135deg,rgba(216,170,84,.10),rgba(20,34,37,.94));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.profile-hero h3{font-size:32px;margin:12px 0 4px}.profile-hero p{color:var(--muted);margin:0}.profile-badges{display:flex;gap:6px;flex-wrap:wrap}.profile-date{min-width:220px;display:flex;flex-direction:column;align-items:flex-end;gap:7px;text-align:right}.profile-date>span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.profile-date>b{font-size:18px}.profile-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:14px 0}.profile-card{padding:18px;background:linear-gradient(180deg,rgba(20,34,37,.95),rgba(13,24,26,.95));border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.profile-card dl{display:grid;grid-template-columns:minmax(100px,.7fr) 1.3fr;gap:8px 14px;margin:14px 0 0}.profile-card dt{color:var(--muted);font-size:12px}.profile-card dd{margin:0;color:#dbe6e2;word-break:break-word}.profile-card a,.mini-table a,.text-link{color:#e1b864;text-decoration:none}.profile-card a:hover,.mini-table a:hover,.text-link:hover{text-decoration:underline}.profile-vector{word-break:break-all;white-space:normal}.variant-list{display:grid;gap:10px;margin-top:12px}.variant{padding:12px;border:1px solid var(--line);border-radius:12px;background:#091416}.variant small{display:block;color:var(--muted);margin:4px 0 8px}.variant .code{font-size:10px;word-break:break-all;white-space:normal}.mini-table{display:grid;gap:0;margin-top:10px}.mini-table>div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #213134}.mini-table>div:last-child{border-bottom:0}.mini-table span{min-width:0}.mini-table small{display:block;color:var(--muted);font-size:10px}.code-inline{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#d5e1de}.clean-list{padding-left:18px;color:#c5d3cf}.card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
@media(max-width:820px){.option-grid,.profile-grid{grid-template-columns:1fr}.profile-hero{flex-direction:column}.profile-date{align-items:flex-start;text-align:left;min-width:0}}


/* v0.10 interactive archaeogenetic map + timeline */
.map-toolbar{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:10px;margin-bottom:12px}.date-controls{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.range-block{padding:12px;border:1px solid var(--line);border-radius:12px;background:#0a1517}.range-block label{display:flex;justify-content:space-between;gap:10px}.range-block input[type=range]{padding:0;border:0;background:transparent;box-shadow:none;accent-color:var(--gold)}.era-buttons{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.era-button{appearance:none;border:1px solid var(--line);background:#0d1b1d;color:var(--muted);padding:7px 9px;border-radius:999px;cursor:pointer;font:inherit;font-size:12px}.era-button:hover,.era-button.active{border-color:#705b35;color:#f2cc80;background:#2c2519}.map-stats{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0}.map-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,.8fr);gap:14px}.geo-map{position:relative;aspect-ratio:1000/560;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#071113;box-shadow:var(--shadow)}.geo-map>img,.geo-map>svg{position:absolute;inset:0;width:100%;height:100%;display:block}.geo-map>svg{z-index:2}.map-marker{cursor:pointer;filter:drop-shadow(0 2px 3px rgba(0,0,0,.65))}.map-marker circle{fill:var(--gold);stroke:#fff3d1;stroke-width:1.5;transition:r .12s ease,fill .12s ease}.map-marker:hover circle,.map-marker.focused circle{fill:var(--teal);stroke:#eafffa}.map-marker text{fill:#081214;font-size:10px;font-weight:900;text-anchor:middle;dominant-baseline:central;pointer-events:none}.map-label{fill:#809691;font-size:13px;font-weight:700;pointer-events:none;text-shadow:0 1px 2px #000}.map-side{min-height:100%;padding:17px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,rgba(20,34,37,.95),rgba(13,24,26,.95));box-shadow:var(--shadow)}.map-side h3{font-size:20px}.map-selection-list{display:grid;gap:8px;margin-top:12px}.map-selection-item{padding:10px;border:1px solid #243639;border-radius:11px;background:#091416}.map-selection-item a{color:#e2bb68;text-decoration:none;font-weight:800}.map-selection-item small{display:block;color:var(--muted);margin-top:3px}.timeline-shell{margin-top:18px;border:1px solid var(--line);border-radius:16px;background:#081214;overflow:hidden}.timeline-head{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line)}.timeline-scroll{overflow-x:auto}.timeline-svg{display:block;width:100%;min-width:850px;height:auto}.timeline-axis{stroke:#4b605e;stroke-width:1}.timeline-grid{stroke:#203335;stroke-width:1}.timeline-country{fill:#a6bab5;font-size:11px;font-weight:700}.timeline-year{fill:#78908b;font-size:10px}.timeline-range{stroke:#d8aa54;stroke-width:4;stroke-linecap:round;opacity:.6}.timeline-point{fill:#f0c874;stroke:#091113;stroke-width:1.5;cursor:pointer}.timeline-point:hover,.timeline-point.focused{fill:#59c3b1;stroke:#eafffa;stroke-width:2.5}.timeline-undated{padding:12px 16px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.location-note{margin-top:8px;color:var(--muted);font-size:11px}@media(max-width:980px){.map-toolbar{grid-template-columns:1fr 1fr}.map-layout{grid-template-columns:1fr}.map-side{min-height:0}}@media(max-width:620px){.map-toolbar,.date-controls{grid-template-columns:1fr}.timeline-head{align-items:flex-start;flex-direction:column}}
/* v0.11.1 PCA audit fix */
.pca-bg{fill:#071113}.pca-axis{stroke:#31484b;stroke-width:1}.pca-label{fill:#8ea39e;font-size:13px}.pca-point{stroke:#071113;stroke-width:1.4;opacity:.88}.pca-point.modern{fill:var(--teal)}.pca-point.ancient{fill:var(--gold)}.pca-point.target{fill:#fff;stroke:var(--red);stroke-width:2.5;opacity:1}


/* v0.12 Population Explorer */
.population-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.population-card{padding:18px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,rgba(20,34,37,.96),rgba(12,23,25,.96));box-shadow:var(--shadow)}.population-card h3{margin:8px 0 2px;font-size:20px}.population-card p{color:var(--muted);font-size:13px}.population-card-top{display:flex;justify-content:space-between;gap:14px}.population-counts{display:grid;grid-template-columns:auto auto;gap:0 7px;text-align:right;min-width:108px}.population-counts b{font-size:18px;color:#e7c06d}.population-counts small{color:var(--muted);align-self:center}.population-hero{display:flex;justify-content:space-between;gap:24px;padding:22px;margin:16px 0;background:linear-gradient(135deg,rgba(216,170,84,.10),rgba(20,34,37,.94));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.population-hero>div:first-child{max-width:720px}.population-hero h3{font-size:30px;margin:12px 0 6px}.population-hero p{color:var(--muted)}.population-summary{display:grid;grid-template-columns:repeat(2,minmax(115px,1fr));gap:8px;min-width:310px}.population-summary>div{padding:13px;border:1px solid #2a3c3e;border-radius:12px;background:#091416}.population-summary b{display:block;font-size:22px;color:#e5bb63}.population-summary span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.lead-small{font-size:16px;color:#dce7e3}.population-member-toolbar{display:grid;grid-template-columns:1fr minmax(220px,.5fr) auto;gap:12px;align-items:end;margin:24px 0 12px}.population-member-toolbar h3{margin:0 0 4px}.inline-check{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;padding:10px 0}.inline-check input{width:auto}.population-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.population-list{display:grid;gap:0;margin-top:10px}.population-list>div{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:9px 0;border-bottom:1px solid #213134}.population-list>div:last-child{border-bottom:0}.population-list small{display:block;color:var(--muted);grid-column:1}.population-list .pill{grid-column:2;grid-row:1/3;align-self:center}.ancient-context-list{display:grid;gap:0;margin-top:10px}.ancient-context-list>a{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid #213134;color:#dce7e3;text-decoration:none}.ancient-context-list>a:last-child{border-bottom:0}.ancient-context-list>a:hover b{color:#e2bb68}.ancient-context-list small{display:block;color:var(--muted);margin-top:3px}.ancient-context-list>a>span:last-child{text-align:right;color:var(--muted);font-size:12px;min-width:180px}
@media(max-width:1050px){.population-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.population-hero{flex-direction:column}.population-summary{min-width:0;max-width:520px}}
@media(max-width:760px){.population-grid,.population-columns{grid-template-columns:1fr}.population-member-toolbar{grid-template-columns:1fr}.population-summary{grid-template-columns:1fr 1fr}.ancient-context-list>a{flex-direction:column}.ancient-context-list>a>span:last-child{text-align:left;min-width:0}}
@media(max-width:440px){.population-summary{grid-template-columns:1fr}.population-card-top{flex-direction:column}.population-counts{text-align:left}}
@media(max-width:820px){.nav-toggle{display:block}nav{display:none;position:absolute;top:63px;left:0;right:0;padding:12px 20px;background:#091315;border-bottom:1px solid var(--line);flex-direction:column}nav.open{display:flex}}


/* v0.13 Y-DNA Explorer */
.ydna-hero{display:flex;justify-content:space-between;gap:24px;padding:22px;margin:16px 0 20px;background:linear-gradient(135deg,rgba(216,170,84,.10),rgba(20,34,37,.96));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.ydna-hero>div:first-child{max-width:760px}.ydna-hero h3{font-size:30px;margin:12px 0 6px}.ydna-hero p{color:var(--muted)}.ydna-project-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:300px;align-content:start}.ydna-project-stats>div{padding:14px;border:1px solid #314245;border-radius:12px;background:#091416}.ydna-project-stats b{display:block;font-size:26px;color:#e4bb65}.ydna-project-stats span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.ydna-project-stats small{grid-column:1/-1;color:var(--muted)}.ydna-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.ydna-node{padding:17px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(180deg,rgba(20,34,37,.96),rgba(11,22,24,.96))}.ydna-node-top{display:flex;justify-content:space-between;gap:14px}.ydna-node h3{font-size:20px;margin:8px 0}.ydna-age{text-align:right;white-space:nowrap}.ydna-age span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.ydna-age b{font-size:13px;color:#e7c06d}.ydna-snps{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.ydna-snps span{padding:4px 7px;border:1px solid #294044;background:#0a1618;border-radius:8px;font:11px ui-monospace,SFMono-Regular,Menlo,monospace;color:#c7d8d4}.ydna-meta,.ydna-sources{color:var(--muted);font-size:12px}.ydna-sources{margin-top:9px}.ydna-sources a{color:#e1b864;text-decoration:none}.text-button{appearance:none;border:0;background:none;padding:0;color:#e1b864;cursor:pointer;font:inherit;font-weight:700}.ydna-path{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:12px 0}.ydna-path button{appearance:none;border:1px solid var(--line);background:#0b1719;color:#e1b864;padding:6px 9px;border-radius:999px;cursor:pointer;font:12px ui-monospace,SFMono-Regular,Menlo,monospace}.ydna-path span{color:#5f7772}.ydna-interpret{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin:14px 0}.ydna-interpret>div{padding:13px;border:1px solid var(--line);border-radius:12px;background:#091416}.ydna-interpret span,.ydna-interpret small{display:block;color:var(--muted);font-size:11px}.ydna-interpret b{display:block;font-size:18px;margin:3px 0}.ydna-next{margin-top:12px}.ydna-next>div{display:grid;grid-template-columns:minmax(150px,.5fr) minmax(0,1fr);gap:16px;padding:8px 0;border-bottom:1px solid #213134}.ydna-next>div:last-child{border-bottom:0}.ydna-next .ydna-snp-collection{margin:0}.ydna-next small{color:var(--muted);text-align:right}@media(max-width:560px){.ydna-next>div{grid-template-columns:1fr;gap:4px}}
@media(max-width:900px){.ydna-hero{flex-direction:column}.ydna-project-stats{min-width:0;max-width:520px}.ydna-grid{grid-template-columns:1fr}.ydna-interpret{grid-template-columns:1fr}}


/* v0.14 unified DNA Explorer + mtDNA */
.dna-explorer-head{margin-bottom:4px}.dna-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:7px;border:1px solid var(--line);border-radius:14px;background:#0b1719;margin-bottom:18px}.dna-tabs a{flex:1;min-width:150px;text-align:center;text-decoration:none;color:var(--muted);padding:10px 14px;border-radius:10px;font-weight:800}.dna-tabs a:hover,.dna-tabs a.active{background:var(--panel2);color:var(--ink);box-shadow:inset 0 0 0 1px #31484b}.dna-explorer-head+section>.section-head{display:none}.card-links{display:flex;gap:7px;flex-wrap:wrap}.card-links a{background:#1c3032;color:var(--ink);border:1px solid #345052;padding:7px 10px;border-radius:9px;font-size:12px}
.mtdna-hero{display:flex;justify-content:space-between;gap:24px;padding:22px;margin:16px 0 20px;background:linear-gradient(135deg,rgba(89,195,177,.10),rgba(20,34,37,.96));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.mtdna-hero>div:first-child{max-width:760px}.mtdna-hero h3{font-size:30px;margin:12px 0 6px}.mtdna-hero p{color:var(--muted)}.mtdna-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:300px;align-content:start}.mtdna-stats>div{padding:14px;border:1px solid #314245;border-radius:12px;background:#091416}.mtdna-stats b{display:block;font-size:25px;color:#70cdbd}.mtdna-stats span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.mtdna-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.mtdna-node{padding:16px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,rgba(20,34,37,.96),rgba(11,22,24,.96))}.mtdna-node-top{display:flex;justify-content:space-between;gap:12px}.mtdna-node h3{font-size:19px;margin:7px 0}.mtdna-count{text-align:right;min-width:80px}.mtdna-count b{display:block;color:#78d0c0;font-size:20px}.mtdna-count span{font-size:10px;color:var(--muted)}.mtdna-node p,.mtdna-meta{color:var(--muted);font-size:12px}.mtdna-path{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 15px}.mtdna-path button{appearance:none;border:1px solid var(--line);background:#0b1719;color:#7ad0c0;padding:6px 9px;border-radius:999px;cursor:pointer;font:12px ui-monospace,SFMono-Regular,Menlo,monospace}.mtdna-path span{color:#5f7772}
@media(max-width:950px){.mtdna-hero{flex-direction:column}.mtdna-stats{min-width:0;max-width:520px}.mtdna-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.mtdna-grid{grid-template-columns:1fr}.dna-tabs a{min-width:0}.mtdna-stats{grid-template-columns:1fr 1fr}}


/* v0.15 complete E-L19 YFull live tree */
.ydna-sync-actions{margin:-6px 0 18px}.ydna-searchbar{grid-template-columns:minmax(240px,1fr) minmax(180px,.45fr) minmax(130px,.28fr)}.check-row{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;margin:10px 0 14px}.check-row input{accent-color:var(--gold)}#ydnaCount{margin:8px 0 12px}.ydna-node .pill.canonical{background:rgba(89,195,177,.11)}
@media(max-width:800px){.ydna-searchbar{grid-template-columns:1fr}.ydna-sync-actions .button{flex:1}}

.ydna-section-tabs{margin-top:12px}.ydna-section-tabs a{min-width:220px}.ancient-y-note{font-size:12px;color:var(--muted)}
@media(max-width:620px){.ydna-section-tabs a{min-width:0}}

/* v0.16.1 information-architecture consolidation */
.workspace-head{margin-bottom:4px}.workspace-head+section>.section-head{display:none}.portal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-card{min-height:220px}.g25-tabs a{min-width:120px}.haplogroup-tabs a{min-width:180px}@media(max-width:820px){.portal-grid{grid-template-columns:1fr}.portal-card{min-height:0}.g25-tabs a,.haplogroup-tabs a{min-width:0}}

/* v0.17 study registry */
.study-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;margin-top:14px}.study-card{border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:18px}.study-card h3{margin:8px 0;font-size:1.03rem}.study-card p{color:var(--muted)}.study-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.84rem;margin:10px 0}.study-count{text-align:right}.study-count b{display:block;font-size:1.6rem}.study-count small{color:var(--muted)}

/* v0.18 local raw-DNA importer */
.raw-privacy{border-color:#315c55}.raw-import-box{margin-bottom:16px}.raw-drop{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:10px 0}.raw-drop h3{margin:5px 0}.raw-drop p{margin:0;color:var(--muted)}.raw-file-button{cursor:pointer}.raw-empty{padding:34px;border:1px dashed #365054;border-radius:16px;text-align:center;background:#0a1517}.raw-empty h3{margin-top:0}.raw-empty p{max-width:680px;margin:0 auto;color:var(--muted)}.raw-profile{display:grid;gap:16px}.raw-profile-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.raw-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.raw-stat-grid>div{padding:14px;border:1px solid var(--line);border-radius:12px;background:#091416}.raw-stat-grid b{display:block;font-size:20px;color:#e2bb68}.raw-stat-grid span{display:block;margin-top:3px;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.raw-qc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.raw-qc-row{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:#0b1719}.raw-qc-row b,.raw-qc-row small{display:block}.raw-qc-row small{margin-top:2px;color:var(--muted)}.pill.raw-qc.pass{background:rgba(89,195,177,.12);color:#86dfcf;border-color:#315d56}.pill.raw-qc.warn{background:rgba(216,170,84,.12);color:#e9c97d;border-color:#5a4b2e}.pill.raw-qc.fail{background:rgba(218,92,92,.13);color:#f2a0a0;border-color:#6e3939}.raw-detail-grid{margin-top:0}.hash{overflow-wrap:anywhere;font:11px ui-monospace,SFMono-Regular,Menlo,monospace}.compat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.danger{border-color:#633b3b!important}.error-text{color:#f2a0a0}
@media(max-width:1100px){.raw-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.raw-qc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compat-grid{grid-template-columns:1fr}}
@media(max-width:700px){.raw-drop{align-items:flex-start;flex-direction:column}.raw-stat-grid,.raw-qc-grid{grid-template-columns:1fr 1fr}.raw-profile .results-head{align-items:flex-start;flex-direction:column}.raw-profile-actions{justify-content:flex-start}}
@media(max-width:460px){.raw-stat-grid,.raw-qc-grid{grid-template-columns:1fr}}

.raw-profile>*{min-width:0}.raw-profile .results-head h3{overflow-wrap:anywhere}.raw-y-summary{min-width:0;max-width:100%;margin:20px 0;padding:20px;overflow:hidden;border:1px solid #5a4930;border-left:4px solid var(--gold);border-radius:16px;background:linear-gradient(145deg,rgba(216,170,84,.11),rgba(13,27,29,.96) 52%);box-shadow:0 12px 30px rgba(0,0,0,.18)}
.raw-inline-link,.raw-inline-link:visited{color:#e1b864;text-decoration:underline;text-decoration-color:rgba(225,184,100,.65);text-underline-offset:3px;font-weight:700}.raw-inline-link:hover{color:#f4cd7a;text-decoration-color:currentColor}.raw-inline-link:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:3px}
.raw-mtdna-placement .result-kicker{display:block;color:#a9bbb7;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.raw-mtdna-placement>strong{display:block;margin:2px 0 10px;color:#fff;font-size:clamp(28px,5vw,40px);line-height:1.1}.raw-mtdna-why{margin:16px 0;padding:16px;border:1px solid #315d56;border-radius:14px;background:rgba(9,25,26,.72)}.raw-mtdna-why h4,.raw-mtdna-descendants h4,.raw-mtdna-audit h4{margin:0 0 7px}.raw-mtdna-why p{margin:5px 0}.raw-mtdna-rcrs-context p{margin:5px 0 0}.raw-mtdna-audit .mtdna-path{margin:8px 0 16px}.raw-mtdna-descendants{margin:20px 0}.raw-mtdna-descendants>p{color:var(--muted)}
.raw-y-summary-status>span,.raw-y-candidate>span{display:block;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.raw-y-summary-status h3{margin:3px 0 0;color:#f0c779;font-size:22px}
.raw-y-summary-withheld p{margin:12px 0;color:#c8d5d2}
.raw-y-candidate{margin-top:17px;padding-top:16px;border-top:1px solid rgba(216,170,84,.25)}
.raw-y-candidate strong{display:block;margin-top:2px;color:var(--ink);font-size:clamp(24px,4vw,34px);line-height:1.15}
.raw-y-evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.raw-y-evidence-block{padding:14px;border:1px solid var(--line);border-radius:12px;background:rgba(7,17,19,.7)}
.raw-y-evidence-block.support{border-color:#315d56}.raw-y-evidence-block.conflict{border-color:#66512b}
.raw-y-evidence-block h4{margin:0 0 10px;color:#cbd8d5;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.raw-y-evidence-list{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}
.raw-y-evidence-chip{display:inline-block;padding:5px 9px;border-radius:999px;font:700 12px ui-monospace,SFMono-Regular,Menlo,monospace}
.raw-y-evidence-chip.support{background:rgba(89,195,177,.13);color:#9de6d8}.raw-y-evidence-chip.conflict{background:rgba(216,170,84,.14);color:#eccb85}
.raw-y-interpretation{margin:16px 0 0;color:#d4dfdc}.raw-y-interpretation b{color:var(--ink)}
.raw-y-guardrails{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.raw-y-guardrails span{padding:4px 8px;border:1px solid #4c4432;border-radius:999px;color:#dbc588;background:rgba(216,170,84,.08);font-size:11px;font-weight:700}
.raw-y-handoff-note{margin:14px 0 0;padding-top:13px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.raw-y-handoff-note b{color:#cbd8d5}
@media(max-width:700px){.raw-y-summary{padding:16px}.raw-y-evidence-grid{grid-template-columns:1fr}.raw-y-summary-status h3{font-size:19px}.raw-y-candidate strong{font-size:25px}}
.disclosure summary{cursor:pointer}.disclosure .when-open{display:none}.disclosure[open] .when-closed{display:none}.disclosure[open] .when-open{display:inline}.raw-y-why-summary{margin:16px 0 10px;padding:15px 17px;border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:13px;background:#0b181a}.raw-y-why-summary.conflicted,.raw-y-why-summary.unresolved{border-left-color:var(--gold)}.raw-y-why-summary h4{margin:0 0 5px;font-size:17px}.raw-y-why-summary p{margin:0;color:#c4d3cf}.raw-y-evidence-section{margin-top:18px}.raw-y-evidence-section .results-head{align-items:flex-start}.raw-y-evidence-section h4{margin:0}.raw-y-evidence-disclosure{margin-top:12px}.raw-y-filterbar{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 4px}.raw-y-filter.active{color:#10201d;background:var(--teal);border-color:var(--teal)}.raw-y-filter-count{margin:8px 0}.raw-y-evidence-totals{display:flex;gap:7px 14px;flex-wrap:wrap;margin:5px 0 0}.raw-y-evidence-totals span{white-space:nowrap}.raw-y-evidence-totals b{color:#dbe6e2}.raw-y-evidence-totals .evidence-derived b{color:#91d9ca}.raw-y-evidence-totals .evidence-ancestral b{color:#dfa09c}.evidence-state{border:1px solid transparent;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800}.evidence-state.evidence-derived{background:rgba(89,195,177,.12);border-color:#315d56;color:#96ded1}.evidence-state.evidence-ancestral{background:rgba(202,103,98,.12);border-color:#633b3b;color:#dda09c}.evidence-state.evidence-conflict,.evidence-state.evidence-ambiguous{background:rgba(216,170,84,.12);border-color:#5a4b2e;color:#e6c477}.evidence-state.evidence-neutral{background:#202a2c;border-color:#344144;color:#aebbb8}.raw-y-state-label{margin-left:4px;color:#b8c7c3;font-size:12px;white-space:nowrap}.raw-y-branch-context{color:#a8b8b4;font-size:12px}.raw-y-evidence-section tr.evidence-derived{background:rgba(89,195,177,.025)}.raw-y-evidence-section tr.evidence-ancestral{background:rgba(202,103,98,.035)}.raw-y-evidence-section tr[data-y-conflicting="true"]{background:rgba(216,170,84,.07)}.ydna-snp-collection{margin:10px 0}.ydna-snp-count{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.ydna-snp-disclosure{margin-top:5px}.ydna-snp-disclosure summary{display:inline-flex;align-items:center;color:#e1b864;font-size:12px;font-weight:800}.ydna-snp-disclosure summary small{color:var(--muted);margin-left:5px}.ydna-snps-all{padding:9px;border:1px solid var(--line);border-radius:10px;background:#091416}.ydna-snps mark{padding:0 2px;border-radius:3px;background:#f0c874;color:#10201d}.ydna-snps-empty{margin:10px 0;font-size:12px}@media(max-width:560px){.raw-y-filterbar .button{flex:1 1 auto}.raw-y-evidence-totals{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}.raw-y-state-label{display:block;margin:3px 0 0;white-space:normal}.raw-y-why-summary{padding:13px}.ydna-snp-disclosure summary{min-height:36px}.raw-y-evidence-section .results-head{flex-direction:column}}
