/* Field atlas: geography for exploration, paper for reading. */
:root{--paper:#f4f1e8;--ink:#283d33;--secondary:#566257;--rule:#c6c9ba;--accent:#86543c}
body{background:var(--paper);color:var(--ink)}
button,input,select,textarea{font-size:14px}
:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.page{max-width:1440px;margin:auto;padding:32px 5vw 64px}
.atlas-return{display:inline-block;font-size:13px;color:var(--secondary);padding:8px 0;margin-bottom:24px;border-bottom:1px solid var(--rule)}
.page-heading{align-items:flex-end;padding-bottom:30px;margin-bottom:28px;gap:48px}
.page-heading h1{font-size:40px;letter-spacing:.06em;line-height:1.4;margin-top:14px}
.page-heading p{max-width:440px;color:var(--secondary);font-size:15px;line-height:1.9}
.eyebrow{font-size:11px;letter-spacing:.14em;color:var(--secondary)}
.muted,.meta,.result-count,.studio-caption,.source-footer,.lineage-note{color:var(--secondary)}
.result-count{font-size:13px;line-height:1.8;margin:24px 0}
.filters{gap:14px;flex-wrap:wrap;padding:18px 0;background:transparent}
.filters input,.filters select{background:#fcfaf4;border-color:var(--rule);min-height:42px}
.filters label{font-size:13px}
.filters input{min-width:210px}
.site-header{background:var(--paper);box-shadow:none;border-bottom:1px solid var(--rule)}
.site-header nav a{font-size:14px}.site-header nav small{font-size:10px}
.seal{transform:none;border-color:var(--accent)}
.works-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));columns:auto;gap:0 36px;align-items:start}
.work-card{width:auto;margin:0;padding:24px 0;border-top:1px solid var(--rule);break-inside:auto}
.work-card h3{font-size:23px;line-height:1.6;margin:12px 0}
.work-card .meta{font-size:14px;line-height:1.9;min-height:54px}
.record-index{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.record-index>span{font:italic 22px Georgia,serif;color:var(--accent)}
.record-index small{font-size:12px;color:var(--secondary);letter-spacing:0}
.work-card.has-photo{grid-row:span 2}
.work-card .work-image{height:280px;background:#fbfaf6;display:block;width:100%;overflow:hidden}
.work-card .work-image img{width:100%;height:100%;object-fit:contain;filter:none}
.work-actions{display:flex;gap:18px;margin-top:20px;padding-top:14px;border-top:1px solid #dedfd4}
.work-actions button{font-size:13px;min-height:32px;color:var(--ink)}
.work-actions button[aria-pressed=true]{color:var(--accent)}
.archive-context{font-size:13px;line-height:1.8;color:var(--secondary);padding-left:15px;border-left:2px solid var(--accent)}
.timeline{gap:10px;flex-wrap:wrap;margin:20px 0}
.timeline button{flex:none;border:1px solid var(--rule);padding:9px 16px;min-height:40px}
.timeline button.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.lineage-board{background:transparent;padding:0;gap:28px;align-items:start}
.lineage-column h3{display:flex;align-items:baseline;justify-content:space-between;font-size:18px;padding-bottom:16px;border-color:var(--ink)}
.lineage-column button{border:0;border-bottom:1px solid var(--rule);background:transparent;padding:14px 4px;font-size:14px;line-height:1.8}
.lineage-column:not(:last-child) button:after{content:none}
.lineage-column button:hover{transform:none;background:#e8e9df}
.lineage-column button.related-node{background:#e5e7dc;box-shadow:inset 3px 0 var(--accent);padding-left:14px}
.lineage-column small{font-size:12px;color:var(--secondary)}
.person-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 60px}
.person-card{display:flex;flex-direction:column;padding:26px 0}
.person-card .person-no{font-size:13px;color:var(--secondary);margin-bottom:14px}
.person-card h3{order:1;font-size:28px;line-height:1.5}.person-card .tag{order:2;align-self:flex-start;font-size:12px;color:var(--secondary)}
.person-card p{order:3;font-size:15px;line-height:1.95;color:var(--secondary);-webkit-line-clamp:5}
.person-card .text-button{order:4;align-self:flex-start;min-height:40px}
.studio-layout{grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:64px}
.studio-preview{background:#e8e8dc;border:0;border-top:1px solid var(--rule);min-height:480px}
.studio-preview .empty-mark{display:none}.studio-preview h3{font-size:30px}
.studio-preview p{color:var(--secondary);line-height:1.9}.studio-caption{font-size:13px}
.source-footer{font-size:12px;line-height:1.9}.detail-top p, #detail-content>p{font-size:16px;line-height:2}
dialog{background:var(--paper)}dialog::backdrop{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.raw-fields dd,.raw-fields dt{font-size:14px}.compare-table th,.compare-table td{font-size:14px}
.immersive-map .field-entry p{font-size:15px;color:#d7ddcb;line-height:2}
.immersive-map .field-entry>span{font-size:12px;color:#d7ddcb}
.immersive-map .map-surface:before{opacity:.16;filter:blur(14px)}
.immersive-map .map-point text{fill:#e1e4d2;opacity:1;font-size:13px;paint-order:stroke;stroke:#20392f;stroke-width:3px;stroke-linejoin:round}
.immersive-map .field-surface .map-point:not(.dim) text{opacity:1}
.immersive-map .map-point.dim text{opacity:.3}
.immersive-map .map-point .pulse{animation:none;opacity:0}
.immersive-map .field-tools button,.field-directory a{font-size:14px;min-height:40px;color:#e2e7d7}
.field-directory{width:220px;background:#20392ff5;backdrop-filter:blur(6px)}
.field-regions .province-list button{font-size:13px;min-height:38px}
.immersive-map .map-surface .field-panel{background:#f4f1e8f7;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:-12px 10px 40px #071e2030}
.field-panel .field-description{font-size:14px;color:var(--secondary);line-height:1.9}
.field-panel .field-object>button{font-size:16px}.field-panel .field-object>div button{font-size:12px;min-height:32px}
.field-panel .field-object button[aria-pressed=true]{color:var(--accent)}
.field-whisper{font-size:12px;color:#d0d8c6}
.field-legend{display:none!important}
.light-guide p{font-size:14px;line-height:1.85;color:var(--secondary)}
@media(max-width:1100px){.works-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-layout{gap:30px}.page-heading h1{font-size:34px}.filters{align-items:flex-start}}
@media(max-width:800px){.page{padding:24px}.page-heading{display:block}.page-heading p{margin-top:18px}.works-grid,.person-list,.studio-layout{grid-template-columns:1fr}.work-card.has-photo{grid-row:auto}.lineage-board{grid-template-columns:repeat(2,minmax(0,1fr))}.atlas-return{margin-bottom:16px}}
