/* Human archive: clear political hierarchy and a two-stage technology catalogue. */
.civilization-dialog[data-civ='humanity'] .human-group{margin:0 0 56px}
.human-group>header{display:flex;align-items:center;gap:18px;margin:0 0 24px;border-top:1px solid #bdd5e72e;padding-top:23px}
.human-group>header>span{font:300 32px/1 var(--serif);color:#97bfd2}
.human-group>header p{font:12px/1.5 var(--sans);letter-spacing:.14em;color:#9bb8c9;margin:0 0 6px}
.human-group>header h2{font:500 clamp(26px,3vw,38px)/1.4 var(--serif);margin:0;letter-spacing:.04em}
.human-group--featured .civ-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.human-group--company .civ-cards,.human-group--restricted .civ-cards{grid-template-columns:1fr;max-width:900px}
.human-catalog .civ-card,.human-member-grid .civ-card{min-width:0;background:linear-gradient(140deg,#15304669,#07111c8c);border:1px solid #b4d9f12e;border-top-color:#b4d9f16b;border-radius:3px;padding:25px}
.human-catalog .civ-card h2,.human-member-grid .civ-card h2{font-size:26px;line-height:1.45;letter-spacing:.02em;overflow-wrap:anywhere}
.human-catalog .civ-card p,.human-member-grid .civ-card p{font-size:16px;line-height:1.85;color:#c6d5de}
.human-catalog .civ-card small,.human-member-grid .civ-card small{font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.human-catalog .civ-card>span,.human-member-grid .civ-card>span{font-size:14px}
.human-catalog .civ-card img,.human-member-grid .civ-card img{width:calc(100% + 50px);height:200px;margin:-25px -25px 23px;object-fit:cover}
.human-group--members .civ-card img,.human-member-grid .civ-card img{object-fit:contain;background:radial-gradient(ellipse,#163147,#06101b);padding:15px}
.human-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.human-category-card{display:grid;grid-template-columns:32px minmax(0,1fr);gap:16px;padding:25px;border:1px solid #b4d9f133;border-top:2px solid #9bcbea80;background:linear-gradient(135deg,#14364b50,#07111c9c);border-radius:3px;transition:background .25s,border-color .25s}
.human-category-card:hover,.human-category-card:focus-visible{background:#16374c;border-color:#cae9ff;outline-offset:4px}
.human-category-number{font:28px/1.25 var(--serif);color:#86aabd}
.human-category-card small{font-size:12px;line-height:1.6;letter-spacing:.1em;color:#abc4d3;overflow-wrap:anywhere}
.human-category-card h3{font:500 26px/1.45 var(--serif);margin:10px 0 12px}
.human-category-card p{font-size:16px;line-height:1.8;margin:0;color:#c7d7e0}
.human-category-count{grid-column:2;font-size:14px;color:#cceaff;display:flex;justify-content:space-between;align-items:center;margin-top:5px}
.human-category-count b{font-size:22px;font-weight:400}
.human-category-intro{font-size:18px;line-height:1.9;color:#d9e6ec;max-width:850px;margin:0 0 28px}
.human-entry-list{border-top:1px solid #c1e7ff5c}
.human-entry{border-bottom:1px solid #c1e7ff30;background:#0b1a2850}
.human-entry summary{display:flex;gap:20px;align-items:center;padding:25px;cursor:pointer;list-style:none}
.human-entry summary::-webkit-details-marker{display:none}
.human-entry summary>span{color:#99bbcf;font:20px/1.4 var(--serif)}
.human-entry summary>div{min-width:0;flex:1}
.human-entry summary h2{font:500 clamp(22px,2.5vw,30px)/1.5 var(--serif);margin:0 0 5px;overflow-wrap:anywhere}
.human-entry summary small{font-size:12px;line-height:1.6;letter-spacing:.12em;color:#a3bece;overflow-wrap:anywhere}
.human-entry summary>b{font:300 28px/1 var(--sans);color:#c8e9ff;transition:transform .2s}
.human-entry[open] summary>b{transform:rotate(45deg)}
.human-entry[open]{background:linear-gradient(110deg,#15344880,#08152266)}
.human-entry summary:focus-visible{outline:2px solid #c7e9ff;outline-offset:-3px}
.human-entry-content{padding:0 26px 28px 68px;max-width:1050px}
.human-entry-content p,.human-entry-content dd{font-size:16px;line-height:1.9;color:#d0dee7;margin:0}
.human-entry-content dl{margin:22px 0 0}.human-entry-content dl>div{padding:15px 0;border-top:1px solid #b9d7e71f;display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px}
.human-entry-content dt{font-size:14px;line-height:1.9;color:#a9d1e8}
.human-entry-content .civ-related:empty{display:none}
.human-tech-switch{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:42px}
.human-tech-switch a{font-size:14px;line-height:1.6;padding:14px 10px;text-align:center;border:1px solid #badcf22e;color:#c4d8e4}
.human-tech-switch a.selected{background:#254358;border-color:#b9dff4;color:#fff}
.civilization-dialog[data-civ='humanity'] .civ-chapter-head>p:empty{display:none}
@media(max-width:760px){
 .human-group--featured .civ-cards,.human-catalog .civ-cards,.human-member-grid{grid-template-columns:1fr}
 .human-category-grid{grid-template-columns:1fr}.human-group>header{gap:14px}
 .human-category-card{padding:22px 18px;gap:12px}.human-category-card h3{font-size:25px}
 .human-entry summary{padding:22px 16px;gap:12px}.human-entry-content{padding:0 18px 25px}
 .human-entry-content dl>div{grid-template-columns:1fr;gap:5px}
 .human-tech-switch{grid-template-columns:repeat(2,minmax(0,1fr))}
 .human-catalog .civ-card img{height:190px}
}
@media(prefers-reduced-motion:reduce){.human-category-card,.human-entry summary>b{transition:none}}
.civilization-dialog[data-civ='humanity'] .civ-record-copy>p,.civilization-dialog[data-civ='humanity'] .civ-fields dd{font-size:16px;line-height:1.9}
.civilization-dialog[data-civ='humanity'] .civ-fields dt{font-size:14px;line-height:1.8}

/* Compact member row, with touch scrolling on narrower screens. */
.civilization-dialog[data-civ=humanity] .human-member-grid{display:grid;grid-template-columns:repeat(var(--member-count),minmax(154px,1fr));gap:12px;max-width:min(100%,calc(var(--member-count)*240px));overflow-x:auto;padding:3px 2px 14px;scroll-snap-type:x proximity}
.civilization-dialog[data-civ=humanity] .human-member-grid .civ-card{min-height:0;padding:14px 12px;scroll-snap-align:start}
.human-member-grid .civ-card .faction-emblem{height:106px;margin-bottom:12px}
.human-member-grid .civ-card .faction-emblem>span{width:80px;height:90px}
.civilization-dialog[data-civ=humanity] .human-member-grid .civ-card .faction-emblem>img{width:94px;height:94px}
.civilization-dialog[data-civ=humanity] .human-member-grid .civ-card h2{font-size:17px;letter-spacing:0;line-height:1.4;margin:10px 0}
.civilization-dialog[data-civ=humanity] .human-member-grid .civ-card small{display:block;font-size:9px;line-height:1.45;min-height:27px;letter-spacing:.06em}
.civilization-dialog[data-civ=humanity] .human-member-grid .civ-card p{font-size:13px;line-height:1.7;margin:0;color:#a9bcc8}

.human-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.human-category-card{grid-template-columns:24px minmax(0,1fr);gap:10px;padding:18px 15px}
.human-category-number{font-size:22px}
.human-category-card small{font-size:9px;line-height:1.5;letter-spacing:.06em}
.human-category-card h3{font-size:20px;line-height:1.45;margin:8px 0 10px}
.human-category-card p{font-size:13px;line-height:1.7}
.human-category-count{font-size:12px;margin-top:0}
@media(max-width:1000px){.human-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.human-category-grid{grid-template-columns:1fr}}
.human-group--restricted .human-category-card{grid-template-columns:minmax(0,1fr)}
.human-group--restricted .human-category-count{grid-column:1}
.human-category-card{min-height:220px}
