/* Field Atlas: chrome and editorial surfaces. The film has its own typography,
   palette, motion and stacking context, intentionally outside these tokens. */
:root{--at-paper:#f7f6f0;--at-panel:#fffef8;--at-ink:#233a32;--at-green:#254e40;--at-rust:#a34a2c;--at-muted:#59665e;--at-line:#ced3c7;--at-serif:'Songti SC','STSong','Noto Serif CJK SC',serif;--at-mono:ui-monospace,Menlo,Consolas,monospace}
[data-palette=kraft]{--at-paper:#f1e9d9;--at-panel:#fffaf0;--at-ink:#3a3329;--at-green:#624633;--at-line:#d6cbb8;--at-muted:#695d50}
[data-palette=darkroom]{--at-paper:#202520;--at-panel:#2a302a;--at-ink:#f0eee0;--at-green:#b9d3ae;--at-rust:#f2a782;--at-muted:#c0c6b8;--at-line:#525e51}
html .page,.sp-dialog{--bg:var(--at-paper);--bg2:var(--at-panel);--ink:var(--at-ink);--sub:var(--at-muted);--mute:var(--at-muted);--line:var(--at-line);--f-text:var(--f-ui);--f-disp:var(--at-serif);--ac-ink:var(--at-green);--ac-grad:var(--at-green);--card:var(--at-panel);background:var(--at-paper);color:var(--at-ink)}
:where(.page,#tabbar,.sp-dialog) :is(button,input,select,summary,[tabindex]):focus-visible{outline:3px solid var(--at-rust);outline-offset:2px}
html #tabbar{background:var(--at-panel);border:0;border-top:1px solid var(--at-line);align-items:center;justify-content:space-around;padding:2px 8px var(--sab);backdrop-filter:none}
html #tabbar [data-tab]{min-height:48px;color:var(--at-muted);font:500 12px var(--f-ui);gap:3px;justify-content:center;border-radius:8px}
html #tabbar [data-tab].on{color:var(--at-green);font-weight:700;background:color-mix(in srgb,var(--at-green) 9%,transparent)}
html #tabbar #btn-add{background:var(--at-green);color:var(--at-paper)}
.at-brand{display:none}.at-wrap{max-width:1360px;margin:auto}
html #page-atlas{padding:20px clamp(16px,4vw,68px) calc(var(--tab-h) + 22px);color:var(--at-ink);font-family:var(--f-ui)}
.at-mast,.at-kicker,.at-plate-title,.at-legend,.at-section small,.at-pagehead small,.at-recent small{font:500 11px/1.6 var(--at-mono);letter-spacing:.1em}
.at-mast{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--at-line);padding:4px 0 12px;color:var(--at-muted)}
.at-mast span:first-child{display:flex;align-items:center;gap:8px}.at-mast i,.at-legend i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--at-rust)}
.at-cover{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(340px,1.15fr);gap:clamp(22px,4vw,70px);align-items:center;padding:clamp(18px,3.3vw,48px) 0;border-bottom:1px solid var(--at-line)}
.at-copy{min-width:0}.at-kicker,.at-section small,.at-pagehead small{color:var(--at-rust)}.at-copy h1,.at-pagehead h1,.at-section h2{font-family:var(--at-serif);font-weight:650;line-height:1.18}
.at-copy h1{font-size:clamp(44px,5.5vw,86px);letter-spacing:-.06em;margin:13px 0 14px}.at-copy h1 span{display:block}.at-copy h1 i{font-size:.65em;color:var(--at-rust);font-style:normal;margin-left:.06em}.at-copy h1 span{display:inline}.at-copy p{max-width:30em;font-size:15px;line-height:1.8;color:var(--at-muted)}
.at-actions{display:flex;align-items:center;gap:20px;margin-top:21px}.at-primary,.at-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;font:600 14px var(--f-ui)}
.at-primary{background:var(--at-green);color:var(--at-paper);padding:0 16px;border-radius:5px}.at-primary span{margin-left:8px}.at-link{color:var(--at-green)}.at-link:hover{text-decoration:underline;text-underline-offset:5px}
.at-stats{display:flex;gap:clamp(20px,3.3vw,54px);margin-top:30px}.at-stats button{text-align:left;min-width:44px}.at-stats b{font:normal clamp(27px,3vw,45px)/1 Georgia,serif;font-variant-numeric:tabular-nums}.at-stats span{display:block;font-size:12px;color:var(--at-muted);margin-top:5px}
.at-plate{isolation:isolate;position:relative;aspect-ratio:1.8;min-height:245px;max-height:390px;width:100%;overflow:hidden;border-radius:6px;color:#edf0d9;background-color:#203e34;background-image:linear-gradient(#98ae8d19 1px,transparent 1px),linear-gradient(90deg,#98ae8d19 1px,transparent 1px);background-size:28px 28px}
.at-plate-title,.at-legend,.at-north{position:absolute;z-index:1;pointer-events:none}.at-plate-title{left:16px;top:14px}.at-north{right:16px;top:13px;font:13px/1.25 var(--at-mono);text-align:center}.at-legend{left:16px;bottom:12px;display:flex;gap:7px;align-items:center}.at-legend i{background:#fbb48b}
.at-cartography{position:absolute;inset:6% 0 3% 10%;width:88%;height:91%}.at-land{width:100%;height:100%;display:block}.at-land path{fill:#4b6c58;stroke:#8ba38b;stroke-width:.65;stroke-linejoin:round}.at-land .visited{fill:#b9bf92}.at-land circle{fill:#ffb992;stroke:#663d2c;stroke-width:1}
.at-print{position:absolute;left:6%;bottom:15%;width:clamp(80px,8vw,137px);transform:rotate(-8deg);color:#233a32}
.at-print:before{content:'';position:absolute;inset:0;background:#dcd8c2;transform:rotate(-8deg);border:1px solid #c9c5ad}
.at-print figure{position:relative;background:#fffdf0;padding:6px 6px 4px;box-shadow:0 3px 14px #10231e55;animation:at-turn .26s ease-out}.at-print img{display:block;width:100%;aspect-ratio:1.14;object-fit:cover}.at-print figcaption{display:flex;justify-content:space-between;gap:3px;font:10px/2 var(--f-ui);white-space:nowrap}.at-print figcaption span{overflow:hidden;text-overflow:ellipsis}.at-print figcaption small{font-family:var(--at-mono);align-self:center}
.at-flip{position:absolute;right:-17px;top:-17px;min-width:44px;min-height:44px;font-size:19px;color:white;isolation:isolate}.at-flip:before{content:'';position:absolute;inset:7px;background:#a34a2c;z-index:-1;border-radius:50%}@keyframes at-turn{from{opacity:.75;transform:translateY(4px) rotate(3deg)}}
.at-columns{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(24px,5vw,84px);padding-top:26px}.at-section{margin-bottom:12px}.at-section h2{font-size:clamp(23px,2.5vw,32px);margin:4px 0}
.at-recent button,.at-collections button{display:flex;width:100%;text-align:left;align-items:center;gap:14px;min-height:69px;border-top:1px solid var(--at-line);padding:9px 2px}
.at-recent img{width:64px;height:48px;object-fit:cover;border-radius:3px}.at-recent button span,.at-collections button span{flex:1;min-width:0}.at-recent b,.at-collections b{display:block;font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.at-recent small,.at-collections small{display:block;font-size:12px;color:var(--at-muted);letter-spacing:0}.at-collections small{margin-top:5px}.at-recent em,.at-collections em{font:20px Georgia;color:var(--at-muted);transition:transform .16s}.at-collections i{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#f0e1d6;color:#814729}.at-collections button+button i{background:#e3e8d8;color:#485b40}
.at-empty{padding:14px 0;border-top:1px solid var(--at-line)}.at-empty b{font-size:14px;font-weight:500}.at-empty .at-link+.at-link{margin-left:16px}
.at-pagehead{padding-bottom:16px;border-bottom:1px solid var(--at-line);margin-bottom:18px}.at-pagehead h1{font-size:clamp(32px,4vw,48px);margin-top:6px}
html .page .card{border:1px solid var(--at-line);background:var(--at-panel);border-radius:10px;color:var(--at-ink);box-shadow:none}
html .page .ent{display:grid;grid-template-columns:clamp(78px,12vw,160px) minmax(0,1fr);column-gap:16px;align-content:center;cursor:pointer}
html .page .ent .im{grid-row:1 / span 3;min-height:85px;height:100%;border-radius:4px}.page .ent .t{font-family:var(--f-ui);font-weight:600}.page .ent .m{flex-wrap:wrap}.page .ent .q{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
html .page .btn.pri{background:var(--at-green);color:var(--at-paper);box-shadow:none}.page .btn,.sp-dialog .sp-primary{border-radius:7px}.page .wbtn{min-width:44px;min-height:44px}.page .me-av{background:var(--at-green);color:var(--at-paper);border:0;box-shadow:none}
html #page-spaces .sp-type,.sp-dialog,.sp-space-card,.route-saved{border-radius:9px}.sp-intro h1,.sp-type h2,.sp-space-heading h1,.sp-dialog-head h2,.route-saved b{font-family:var(--at-serif)}
body:has(#pickbar:not(.hidden)) :is(.page,#tabbar,#hd,#home,#seg,#mz-share){visibility:hidden!important}
@media(hover:hover){.at-collections button:hover em,.at-recent button:hover em{transform:translate(3px,-2px)}.at-primary:hover,#btn-add:hover{filter:brightness(1.13)}}
@media(min-width:801px){
 html #tabbar{inset:0 0 auto;height:64px;padding:0 clamp(18px,4vw,72px);justify-content:flex-end;gap:8px;border:0;border-bottom:1px solid var(--at-line)}
 .at-brand{margin-right:auto;display:flex;align-items:center;gap:10px;font:650 22px var(--at-serif);color:var(--at-ink)}.at-brand i{width:34px;height:34px;display:grid;place-items:center;border-radius:7px;background:var(--at-green);color:var(--at-paper)}.at-brand small{font:10px var(--at-mono);letter-spacing:.12em;color:var(--at-muted)}
 html #tabbar [data-tab]{flex-direction:row;width:auto;gap:7px;padding:0 14px;min-height:42px;font-size:14px}html #tabbar #btn-add{order:2;margin-left:12px}
 html .page:not(.push){top:64px;padding-bottom:38px}html #page-atlas{padding-top:18px;padding-bottom:40px}
 #page-tl,#page-fav,#page-me,.page:is(#page-ck,#page-set,#page-dt){padding-inline:max(28px,calc((100vw - 900px)/2))}
 body[data-tab=map] #hd{top:64px}body[data-tab=map] #crumb{margin-top:64px}body[data-tab=map] #mz-share{margin-top:64px}
 body[data-tab=map] #home{bottom:10px;left:24px;right:auto;width:min(500px,90vw)}body[data-tab=map] #home .st{margin:0}
}
@media(max-width:800px){
 .at-cover{grid-template-columns:1fr;gap:19px;padding:20px 0}.at-copy h1{font-size:clamp(39px,7.5vw,55px);margin:8px 0}.at-copy p{font-size:14px}.at-stats{gap:20px;margin-top:18px}.at-stats button{display:flex;align-items:baseline;gap:5px}.at-stats b{font-size:25px}.at-actions{margin-top:14px}.at-plate{min-height:195px;max-height:290px;aspect-ratio:1.95}.at-print{width:clamp(80px,18vw,120px)}
 .at-columns{grid-template-columns:1fr;gap:22px;padding-top:19px}html #page-atlas{padding-top:calc(var(--sat) + 14px)}
}
@media(prefers-reduced-motion:reduce){.at-print figure,.at-recent em,.at-collections em{animation:none!important;transition:none!important}}
html[data-palette] .page{background:var(--at-paper)}
body:not([data-tab=map]) :is(#hd,#seg,#home,#crumb,#mz-title,#mz-share,#hint-zoom){visibility:hidden}
.at-map-head{display:inline-flex;align-items:center;gap:25px;padding:10px 15px;background:var(--at-panel);color:var(--at-ink);border:1px solid var(--at-line);border-radius:7px}.at-map-head small,.at-map-head b{display:block}.at-map-head small{font:10px var(--at-mono);color:var(--at-muted)}.at-map-head b{font:600 22px var(--at-serif)}.at-map-head span{font-size:13px}
body[data-tab=map] #hd:before{display:none}body[data-tab=map] #seg{display:flex;top:calc(var(--sat) + 82px);left:18px;transform:none;border:1px solid var(--at-line);border-radius:8px;background:var(--at-panel);padding:3px;box-shadow:none}body[data-tab=map] #seg button{height:44px;min-width:48px;color:var(--at-muted);font:13px var(--f-ui);border:0}body[data-tab=map] #seg .seg-k{display:none}body[data-tab=map] #seg button.on{color:var(--at-paper);background:var(--at-green);border-radius:5px}
body[data-tab=map] #home .st,body[data-tab=map] #home .hs{background:var(--at-panel);color:var(--at-ink);border:1px solid var(--at-line);border-radius:12px;box-shadow:0 4px 20px #213e3422}body[data-tab=map] #home .st-n b{color:var(--at-green)}
@media(min-width:801px){body[data-tab=map] #seg{top:calc(var(--sat) + 146px)}html #tabbar{padding-inline:max(4vw,calc((100vw - 1360px)/2))}}
.at-recent{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.at-recent button{position:relative;display:block;min-width:0;border:0;padding:0;text-align:left}.at-recent img{width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;display:block;margin-bottom:6px}.at-recent button span{display:block}.at-recent button em{display:none}.at-recent small{font-size:11px}.at-recent b{margin-top:3px;font-size:14px}
@media(max-width:420px){.at-recent{gap:8px}.at-recent small{font-size:10px}}
