/* Keep the seed selection in one viewport. Growth keeps the same seed geometry. */
html:has(body.earth-route #sites.phase-choosing){overflow-y:auto;scrollbar-gutter:auto}
body.earth-route #sites .soil-story{
  box-sizing:border-box;
  height:100svh;
  min-height:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto auto;
  padding:env(safe-area-inset-top,0px) 24px env(safe-area-inset-bottom,0px);
}
body.earth-route #sites.phase-grown .soil-story{display:none}
body.earth-route #sites .soil-intro{
  width:100%;max-width:840px;padding:clamp(12px,2.6svh,38px) 0 8px;
}
body.earth-route #sites .soil-intro .site-service-note{margin:0 0 8px;font-size:10px}
body.earth-route #sites .soil-intro h1{font-size:clamp(28px,4.1svh,54px);line-height:1.06}
body.earth-route #sites .soil-intro p:not(.mw-seed-names){
  max-width:650px;margin:10px auto 0;font-size:clamp(17px,2svh,23px);line-height:1.2;
}
body.earth-route #sites .mw-seed-ledger{
  width:min(100%,390px);max-width:none;min-height:0;margin:10px auto 0;padding:6px 12px;
  border-color:rgba(238,211,170,.3);background:rgba(30,20,13,.64);color:#f4dfbb;
}
body.earth-route #sites .mw-seed-marks{margin:5px 0}
body.earth-route #sites .mw-seed-marks i{background:rgba(238,211,170,.2)}
body.earth-route #sites .mw-seed-marks i.is-marked{background:#efc47c}
body.earth-route #sites .mw-seed-ledger .mw-seed-names{color:#e8d2b0;font-size:11px;height:30px}
body.earth-route #sites .soil-seed-field{
  box-sizing:border-box;width:min(100%,1350px);max-width:none;height:auto;min-height:0;
  margin:0 auto;padding:4px 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));gap:8px clamp(10px,2vw,38px);
}
body.earth-route #sites .soil-seed{
  position:relative;left:auto;top:auto;transform:none;justify-self:center;align-self:center;
  width:100%;max-width:210px;height:100%;max-height:220px;min-height:44px;aspect-ratio:auto;
  border:1px solid transparent;border-radius:12px;transition:background .2s,border-color .2s;
}
body.earth-route #sites .soil-seed::after{
  content:attr(data-seed-title);position:absolute;left:2px;right:2px;bottom:8px;
  color:#fff0d6;font:600 clamp(14px,1.1vw,21px)/1.15 Cormorant,Georgia,serif;
  text-shadow:0 2px 5px #100906;
}
body.earth-route #sites .soil-seed .seed-orbit,
body.earth-route #sites .soil-seed .seed-detail{display:none}
body.earth-route #sites .soil-seed .seed-kernel{
  top:45%;width:clamp(28px,4.8svh,65px);height:clamp(42px,7.2svh,96px);
}
body.earth-route #sites .soil-seed .seed-sprout{width:74%;height:75%;left:52%;top:20%}
body.earth-route #sites .soil-seed:is(:hover,:focus-visible),
body.earth-route #sites .soil-seed.is-selected{
  background:rgba(239,206,156,.07);border-color:rgba(239,206,156,.34);
}
body.earth-route #sites .soil-seed.is-selected::after{color:#ffdc8e}
body.earth-route #sites .soil-confluence{margin:0;padding:4px 0 0}
body.earth-route #sites .gold-seed{
  width:260px;height:clamp(60px,8svh,108px);display:flex;align-items:center;
  justify-content:center;gap:8px;border-radius:12px;
}
body.earth-route #sites .gold-seed .seed-mark{width:70px;height:100%}
body.earth-route #sites .gold-seed .seed-orbit{display:none}
body.earth-route #sites .gold-seed .seed-kernel{top:50%;width:38px;height:53px}
body.earth-route #sites .gold-seed::after{content:"Объединить";color:#ffdf9f;font:600 25px/1.1 Cormorant,Georgia,serif}
body.earth-route #sites .selection-summary{margin:0;font-size:16px;line-height:1.2}
body.earth-route #sites .soil-links{box-sizing:border-box;width:min(100%,1350px);max-width:none;padding:0;gap:12px;flex-wrap:nowrap}
body.earth-route #sites .soil-links a{font-size:16px;min-height:44px}
body.earth-route #sites.is-growing .soil-seed::after,
body.earth-route #sites.is-growing .gold-seed::after{opacity:0}
@media(max-width:700px){
  body.earth-route #sites .soil-story{padding-inline:14px}
  body.earth-route #sites .soil-intro{padding-top:12px;padding-bottom:4px}
  body.earth-route #sites .soil-intro .site-service-note{font-size:8px;letter-spacing:.08em;margin-bottom:6px}
  body.earth-route #sites .soil-intro h1{font-size:clamp(25px,4.1svh,34px)}
  body.earth-route #sites .soil-intro p:not(.mw-seed-names){display:none}
  body.earth-route #sites .mw-seed-ledger{margin-top:8px;padding:5px 10px}
  body.earth-route #sites .mw-seed-ledger .mw-seed-names{height:30px;font-size:10px}
  body.earth-route #sites .soil-seed-field{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));gap:4px 8px}
  body.earth-route #sites .soil-seed{max-width:none;max-height:98px;border-radius:8px}
  body.earth-route #sites .soil-seed .seed-kernel{left:23%;top:55%;width:clamp(22px,3.5svh,32px);height:clamp(32px,5svh,48px)}
  body.earth-route #sites .soil-seed::after{left:43%;right:3px;top:50%;bottom:auto;transform:translateY(-50%);font-size:clamp(13px,3.8vw,17px);text-align:left}
  body.earth-route #sites .gold-seed{height:56px;width:230px}
  body.earth-route #sites .gold-seed .seed-mark{width:48px}
  body.earth-route #sites .gold-seed .seed-kernel{width:30px;height:42px}
  body.earth-route #sites .gold-seed::after{font-size:22px}
  body.earth-route #sites .selection-summary{font-size:14px}
  body.earth-route #sites .soil-links{gap:12px}
  body.earth-route #sites .soil-links a{font:11px/1.2 Arial,sans-serif}
  body.earth-route #sites .soil-links a:nth-child(2){max-width:100px;text-align:center;font-size:10px}
}
@media(max-height:600px){
  body.earth-route #sites .soil-intro{padding-top:8px}
  body.earth-route #sites .soil-intro .site-service-note{display:none}
  body.earth-route #sites .soil-intro h1{font-size:26px}
  body.earth-route #sites .soil-intro p:not(.mw-seed-names){display:none}
  body.earth-route #sites .mw-seed-ledger{margin-top:3px;padding-block:4px}
  body.earth-route #sites .mw-seed-ledger .mw-seed-names{display:-webkit-box;height:30px;font-size:10px;line-height:1.45}
  body.earth-route #sites .mw-seed-marks{display:none}
  body.earth-route #sites .gold-seed{height:48px}
  body.earth-route #sites .gold-seed .seed-kernel{width:27px;height:38px}
  body.earth-route #sites .selection-summary{display:none}
}
@media(max-height:480px) and (min-aspect-ratio:3/2){
  body.earth-route #sites .soil-intro{padding-top:6px}
  body.earth-route #sites .soil-intro h1{font-size:22px}
  body.earth-route #sites .soil-intro h1 br{display:none}
  body.earth-route #sites .soil-intro h1 em{margin-left:.25em}
  body.earth-route #sites .soil-seed-field{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:3px 6px}
  body.earth-route #sites .soil-seed .seed-kernel{left:50%;top:40%;width:22px;height:32px}
  body.earth-route #sites .soil-seed::after{left:2px;right:2px;top:auto;bottom:3px;transform:none;text-align:center;font-size:14px}
  body.earth-route #sites .soil-links a{min-height:34px}
}
/* Fill the wide monitor with readable seeds, keeping all controls in one view. */
@media(min-width:2000px) and (min-aspect-ratio:2/1) and (min-height:800px){
  body.earth-route #sites .soil-story{
    padding:clamp(20px,2.5svh,36px) 40px clamp(16px,2svh,28px);
    row-gap:clamp(10px,1.1svh,16px);
  }
  body.earth-route #sites .soil-intro{max-width:1200px;padding:0}
  body.earth-route #sites .soil-intro p.site-service-note{font-size:18px;line-height:1.25;margin:0 0 10px}
  body.earth-route #sites .soil-intro h1{font-size:clamp(48px,5.4svh,78px);line-height:1}
  body.earth-route #sites .soil-intro p:not(.mw-seed-names):not(.site-service-note){
    max-width:1080px;font-size:clamp(22px,2svh,28px);line-height:1.25;margin:12px auto 0;
  }
  body.earth-route #sites .mw-seed-ledger{width:min(100%,780px);margin-top:16px;padding:10px 18px}
  body.earth-route #sites .mw-ledger-top{font-size:14px}
  body.earth-route #sites .mw-seed-count{font-size:20px}
  body.earth-route #sites .mw-seed-marks{margin:7px 0;height:6px}
  body.earth-route #sites .mw-seed-ledger .mw-seed-names{font-size:clamp(16px,1.4svh,20px);line-height:1.3;height:52px}
  body.earth-route #sites .soil-seed-field{
    width:min(100%,2280px);height:100%;max-height:720px;align-self:center;
    gap:clamp(12px,1.4svh,20px) clamp(28px,1.5vw,52px);padding:0;
  }
  body.earth-route #sites .soil-seed{max-width:360px;max-height:none;min-height:0;border-radius:18px}
  body.earth-route #sites .soil-seed .seed-kernel{top:40%;width:clamp(33px,calc(24svh - 158px),144px);height:clamp(48px,calc(35svh - 230px),210px)}
  body.earth-route #sites .soil-seed::after{font-size:clamp(28px,2.5svh,36px);bottom:clamp(10px,1.2svh,18px)}
  body.earth-route #sites .soil-confluence{padding:0}
  body.earth-route #sites .gold-seed{width:360px;height:clamp(82px,8svh,116px);gap:16px}
  body.earth-route #sites .gold-seed .seed-mark{width:90px}
  body.earth-route #sites .gold-seed .seed-kernel{width:clamp(44px,4.6svh,66px);height:clamp(64px,6.7svh,96px)}
  body.earth-route #sites .gold-seed::after{font-size:clamp(28px,2.6svh,38px)}
  body.earth-route #sites .selection-summary{font-size:20px}
  body.earth-route #sites .soil-links{width:min(100%,2280px)}
  body.earth-route #sites .soil-links a{font-size:22px;min-height:48px}
}
@media(prefers-reduced-motion:reduce){
  body.earth-route #sites .soil-seed{transition:none}
}
